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

Frederik Deweerdt
2007-02-19T14:32:55Z

On Mon, Feb 19, 2007 at 03:08:03PM +0100, Michal Piotrowski wrote:
> Michal Piotrowski napisał(a):
> > Hi Frederik,
> >
> > On 20/02/07, Frederik Deweerdt <deweerdt@free.fr> wrote:
> >> 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.
> >
> > For me too, but Jens dislikes this patch.
>
> Now I know why...
>
> Code: Bad EIP value.
> EIP: [<6b6b6b6b>] 0x6b6b6b6b SS:ESP 0068:f45f9bf8

:) It may not be related though. I think that my patch avoids the
BUG_ON(!rq_mergeable(req)); in ll_rw_blk.c:2782. This looks like another
beast to me.

Regards,
Frederik