Re: [-mm patch] fix locking in __make_request (was Re: 2.6.20-mm2: Oops in generic_make_request)

Jens Axboe
2007-02-19T13:35:06Z

On Tue, Feb 20 2007, Frederik Deweerdt wrote:
> On Sun, Feb 18, 2007 at 09:05:33PM +0100, Michal Piotrowski wrote:
> > On 18/02/07, Andrew Morton <akpm@linux-foundation.org> wrote:
> > >On Sun, 18 Feb 2007 18:58:05 +0100 Mattia Dongili <malattia@linux.it> wrote:
> > >
> > >> On Sun, Feb 18, 2007 at 02:06:59PM +0100, Laurent Riffard wrote:
> > >> > Le 18.02.2007 06:51, Andrew Morton a ?crit :
> > >> > >Temporarily at
> > >> > >
> > >> > > http://userweb.kernel.org/~akpm/2.6.20-mm2/
> > >> > >
> > >> > >Will appear later at
> > >> > >
> > >> > > ftp://ftp.kernel.org/pub/linux/kernel/people/akpm/patches/2.6/2.6.20/2.6.20-mm2/
> > >> >
> > >> > Hello, I've got a fully reproducible Oops. I just have to boot to
> > >> > runlevel 2 and wait less than one minute.
> > >>
> > >> Maybe this oops is related too?
> > >
> > >Looks that way.
> > >
> Hi Michal,
>
> This seems to be a locking problem in __make_request, check_plug_merge()
> should be called with the q->queue_lock held.
> Could you try the following patch? It silenced the oops for me.

Just back from travel... That is not correct, why do you think the queue
lock needs to be held there? I'll look into this tomorrow.

--
Jens Axboe