Bug 781552

Summary: ARM-OMAP kernel experiences an unhandled fault on reboot/shutdown
Product: [Fedora] Fedora Reporter: D. Marlin <dmarlin>
Component: kernelAssignee: Jon Masters <jcm>
Status: CLOSED CURRENTRELEASE QA Contact: Fedora Extras Quality Assurance <extras-qa>
Severity: unspecified Docs Contact:
Priority: unspecified    
Version: rawhideCC: gansalmon, itamar, jonathan, kernel-maint, madhu.chinakonda
Target Milestone: ---   
Target Release: ---   
Hardware: arm   
OS: Linux   
Whiteboard:
Fixed In Version: Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: 2013-02-28 20:29:11 UTC Type: ---
Regression: --- Mount Type: ---
Documentation: --- CRM:
Verified Versions: Category: ---
oVirt Team: --- RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: --- Target Upstream Version:
Embargoed:
Attachments:
Description Flags
log showing unhandled fault when shutting down
none
log showing correct shutdown using kernel-2.6.41.2-1 none

Description D. Marlin 2012-01-13 17:17:42 UTC
Description of problem:

  The ARM-OMAP kernel experiences an unhandled fault on reboot/shutdown.

Version-Release number of selected component (if applicable):

  kernel-2.6.41.3-1 and later.

How reproducible:

  Always.

Steps to Reproduce:
1.  boot an ARM-OMAP device with kernel-2.6.41.3-1 or later
2.  from the console, type 'reboot'
3.  when shutting down, an unhandled fault will occur
  
Actual results:

  kernel experiences an unhandled fault:
---------------------
Detaching DM devices.
[  804.001525] md: stopping all md devices.
[  804.984222] Unhandled fault: imprecise external abort (0x1406) at 0x4015d060
[  804.991638] Internal error: : 1406 [#1] PREEMPT SMP
        :
---------------------

Expected results:

  normal reboot, no unhandled fault.

Additional info:

  This issue did not occur prior to kernel-2.6.41.3-1.
  Verified correct operation using 2.6.41.2-1 and older.
  This issue shown to occur in kernels 2.6.41.3-1..2.6.41.7-1.

Comment 1 D. Marlin 2012-01-13 17:19:56 UTC
Created attachment 555113 [details]
log showing unhandled fault when shutting down

Comment 2 D. Marlin 2012-01-13 17:21:43 UTC
Created attachment 555114 [details]
log showing correct shutdown using kernel-2.6.41.2-1

Comment 3 D. Marlin 2012-01-18 16:43:26 UTC
After doing some more research, I have found that this error has been encountered by others, but not all have the same cause.  I found the following information related to the error:

  On OMAP, if you try to touch any peripheral unit that is not 
  clocked, it'll blow a bus abort which shows up as one of these 
  "imprecise external aborts".

  An imprecise abort is hard to track. Being imprecise means that 
  the cause happened in the past but the actual exception gets delayed.

I also looked for differences introduced in the ARM kernel code between the working and non-working versions, but there was only one change, and reverting it did not eliminate the fault.

I then looked at all changes between the 3.1.2 and 3.1.3 kernel tree, and found that if I revert one patch the problem goes away.  Unfortunately, this change was introduced to fix another issue, and it is not the cause of the imprecise external abort, but rather a change that simply triggers it.

  commit a896cd19d7569c9754a75fea01f4c68e355697af
  Author: Peter Chen <peter.chen>
  Date:   Tue Nov 15 21:52:29 2011 +0100
    PM / driver core: disable device's runtime PM during shutdown

Comment 4 Josh Boyer 2012-06-07 15:21:21 UTC
Moving this to rawhide as I'm assuming it's still a problem.  If not, please close it out.

Comment 5 D. Marlin 2013-02-28 20:29:11 UTC
This is no longer an issue in the 3.x kernels, so closing.