Re: [PATCH 05/13] XFS: Fix lock ASSERT on UP

From: Andi Kleen
Date: Fri Mar 30 2012 - 10:05:10 EST


On Fri, Mar 30, 2012 at 03:13:48PM +1100, Dave Chinner wrote:
> On Fri, Mar 30, 2012 at 01:52:01AM +0200, Andi Kleen wrote:
> > On Thu, Mar 29, 2012 at 07:21:14PM -0400, Christoph Hellwig wrote:
> > > On Tue, Mar 27, 2012 at 05:47:09PM -0700, Andi Kleen wrote:
> > > > From: Andi Kleen <ak@xxxxxxxxxxxxxxx>
> > > >
> > > > ASSERT(!spin_is_locked()) doesn't work on UP builds. Replace with a standard
> > > > lockdep_assert_held()
> > >
> > > The "standard" is assert_spin_locked() - which not only is much cheaper
> > > but also has the advantage of working in non-lockdep builds.
> >
> > But then you have it unconditional, not just on debug builds.
>
> And the problem with that is what? There is so little overhead to the
> check it doesn't matter that it is enabled in production kernels...

It's really interesting how much you guys argue for your buggy construct
which you clearly never tested on a UP build...

Not sure if that is a hot path, but on highly contended locks every cache line
fetch is quite expensive on larger systems.

also I doubt the thing really catches bugs, and if it did you would be
probably better off with a sparse notation or so.

Anyways I will turn it into the normal assert.

-Andi
--
ak@xxxxxxxxxxxxxxx -- Speaking for myself only.
--
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/