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.
Created attachment 555113 [details] log showing unhandled fault when shutting down
Created attachment 555114 [details] log showing correct shutdown using kernel-2.6.41.2-1
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
Moving this to rawhide as I'm assuming it's still a problem. If not, please close it out.
This is no longer an issue in the 3.x kernels, so closing.