This is an archived copy of the Xen.org mailing list, which we have preserved to ensure that existing links to archives are not broken. The live archive, which contains the latest emails, can be found at http://lists.xen.org/
Home Products Support Community News


Re: [Xen-devel] [PATCH] blkfront: Move blkif_interrupt into a tasklet.

On Tue, 2010-09-07 at 22:03 -0400, Jeremy Fitzhardinge wrote:
> On 09/03/2010 09:08 AM, Daniel Stodden wrote:
> > We clearly spin_lock_irqsave all through the blkif_do_interrupt frame.
> >
> > It follows that something underneath quite unconditionally chose to
> > reenable them again (?)
> >
> > Either: Can you add a bunch of similar WARN_ONs along that path?
> >
> > Or: This lock is quite coarse-grained. The lock only matters for queue
> > access, and we know irqs are reenabled, so no need for flags. In fact we
> > only need to spin_lock_irq around the __blk_end_ calls and
> > kick_pending_.
> >
> > But I don't immediately see what's to blame, so I'd be curious.
> It looks like __blk_end_request_all(req, error); (line 743) is returning
> with interrupts enabled sometimes (not consistently).  I had a quick
> look through the code, but I couldn't see where it touches the interrupt
> state at all.

Oha. Was this found on 2.6.32 or later?


Xen-devel mailing list