Re: 2.6.19-rc3-git7: scsi_device_unbusy: inconsistent lock state

From: Jens Axboe
Date: Mon Oct 30 2006 - 13:02:38 EST


On Mon, Oct 30 2006, Ingo Molnar wrote:
>
> * Jens Axboe <jens.axboe@xxxxxxxxxx> wrote:
>
> > > > things may be allocated from that path, so we pass gfp_mask around. I'll
> > > > double check it tonight, but I don't currently see what could be wrong.
> > > > Would lockdep complain about:
> > > >
> > > > spin_lock_irqsave(lock, flags);
> > > > ...
> > > > spin_unlock_irq(lock);
> > > > ...
> > > > spin_lock_irq(lock);
> > > > ...
> > > > spin_unlock_irqrestore(lock, flags);
> > >
> > > this is fine for lockdep IF and only IF there is no "out lock" held
> > > around this that requires irqs to be off. So if you do
> > >
> > > spin_lock_irqsave(lock1, flags);
> > > ...
> > > spin_lock_irqsave(lock2, flags);
> > > spin_unlock_irq(lock2)
> > > ...
> > >
> > > then lockdep WILL complain, and rightfully so, about a violation since
> > > lock1 gets violated here ;)
> >
> > Naturally, that is a bug fair and simple, nothing to do with lockdep.
>
> well, finding such locking bugs is the main purpose of lockdep, so there
> is at least some connection i'd say ;-)

Right, I'm totally with you on that one, I wasn't trying to state
otherwise :-)

But we've also had a class of lockdep complaints that simply need some
sort of annotation so that lockdep understands there's nothing wrong
with it.

--
Jens Axboe

-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/