Messages in this thread | | | Date | Fri, 22 Apr 2011 13:30:42 -0700 | Subject | Re: 2.6.39-rc4 BUG: unable to handle kernel NULL pointer dereference at 0000000c IP: cfq_insert_request+0x1d/0x3f5 | From | Hugh Dickins <> |
| |
On Fri, Apr 22, 2011 at 4:35 AM, Jens Axboe <jaxboe@fusionio.com> wrote: > On 2011-04-22 09:00, Michal Hocko wrote: >> On Thu 21-04-11 21:00:26, Jens Axboe wrote: >>> On 2011-04-21 20:51, Michal Hocko wrote: >>>> On Thu 21-04-11 07:38:57, Linus Torvalds wrote: >>>>> On Thu, Apr 21, 2011 at 12:25 AM, Jens Axboe <axboe@kernel.dk> wrote: >>>>>>> >>>>>>> I am going to bisect, let's see if I can find anything. >>>>>> >>>>>> Thanks, that would be great! >>>>> >>>>> I'd expect it to be very timing-dependent, and thus could easily be >>>>> triggered (or hidden) by unrelated changes. >>>>> >>>>> Just happening to have a request added to the elevator at _just_ the >>>>> same moment that another CPU is changing it and getting rid of the >>>>> data structures for the old one. >>>> >>>> And it really looks like a timing issue. I have bisected down to >>>> e710d7d5a9cab1041b7a3cf9e655b75d92786857. I had to skip[1] some commits >>>> due to compile errors [2]. >>>> At first it looked quite promising because I was able to boot after I >>>> reverted that patch but then I have tried to revert it on top of rc4 >>>> (2f666bcf757cb72549f360ef6da02f03620a48b6) and saw the same problem >>>> again. >>>> >>>> So I do not think that bisecting will help here. >>> >>> It will be timing dependent. If there's no allocated IO requests when >>> the switch happens, it'll work. >>> >>> But the commit that caused this regression is 5e84ea3a. If you revert >>> that, it should work fine. Or just apply the patch I sent (or update to >>> Linus' tree, it's in now) and it'll work as well. >> >> Great. I can boot just fine with the current Linus tree >> (2.6.39-rc4-00149-g91e8549). >> >> Thanks a lot! > > Great, with that confirmed from you, we have no pending bugs in this > area.
Yes, I booted up last night's git kernel on the PowerPC G5, and confirm that CONFIG_IDE=y worked with that, whereas rc4 still had the hang (even with CONFIG_SMP=y CONFIG_PREEMPT=y).
Hugh
| |