Messages in this thread | | | Date | Fri, 15 Apr 2011 00:14:55 -0400 | From | Christoph Hellwig <> | Subject | Re: Linux 2.6.39-rc3 |
| |
On Thu, Apr 14, 2011 at 01:55:02PM -0700, Linus Torvalds wrote: > On Thu, Apr 14, 2011 at 1:24 PM, Borislav Petkov <bp@alien8.de> wrote: > > > > Yep, I had to hit a buglet too. Looks like block layer, ->request_fn > > (do_ide_request) called in IRQ disabled region. Process is blkid, i.e. > > some udev helper. Kernel is -rc3 + Joerg's USB quirk fix which should be > > unrelated. > > I think this particular backtrace should be fixed by commit > 6631e635c65d ("block: don't flush plugged IO on forced preemtion > scheduling"), although even without preempt scheduling, I don't think > it's at all ok to sleep inside __blk_run_queue. > > Jens? Even from a _regular_ schedule, it would not be ok if we end up > sleeping - we're caching things like the request-queue, and we have > preempt_disable() inside the scheduler for a very good reason.
Jens already has a fix in his tree to always offload the block I/O submission to blockd for this case.
| |