[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <alpine.LFD.2.00.1002230852070.4141@localhost.localdomain>
Date: Tue, 23 Feb 2010 09:00:58 -0800 (PST)
From: Linus Torvalds <torvalds@...ux-foundation.org>
To: Greg KH <greg@...ah.com>
cc: Stefan Bader <stefan.bader@...onical.com>,
Greg KH <gregkh@...e.de>, Kiyoshi Ueda <k-ueda@...jp.nec.com>,
linux-kernel@...r.kernel.org, stable-review@...nel.org,
alan@...rguk.ukuu.org.uk, Junichi Nomura <j-nomura@...jp.nec.com>,
akpm@...ux-foundation.org, stable@...nel.org,
Alasdair G Kergon <agk@...hat.com>
Subject: Re: [Stable-review] [93/93] dm mpath: fix stall when requeueing io
On Tue, 23 Feb 2010, Greg KH wrote:
> On Sun, Feb 21, 2010 at 05:07:25PM +0100, Stefan Bader wrote:
> > >
> > > Signed-off-by: Kiyoshi Ueda <k-ueda@...jp.nec.com>
> > > Signed-off-by: Jun'ichi Nomura <j-nomura@...jp.nec.com>
> > > Signed-off-by: Alasdair G Kergon <agk@...hat.com>
> > >
> > > blk_start_request(rq);
> > > spin_unlock(q->queue_lock);
> > > - map_request(ti, rq, md);
> > > + if (map_request(ti, rq, md))
> > > + goto requeued;
> > > spin_lock_irq(q->queue_lock);
> > > }
> >
> > While looking over the code I also noticed that the spinlock is dropped with
> > spin_unlock and then reacquired with spin_lock_irq. Isn't the irq version too
> > much in that case? Or was the intention to have interrupts enabled when unlocking?
>
> Ick, thanks for the review. I'll drop this patch for now and fix it up
> in the next release if needed.
This part of the commentary seems to be relevant for mainline too.
According to git logs, this spin_unlock/spin_lock_irq imbalance goes back
to commit cec47e3d4a (last June). Maybe there's some reason for it, but it
does look odd.
Ueda-san, Nomura-san, Alasdair? Comments?
Linus
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@...r.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/
Powered by blists - more mailing lists