Re: [PATCH 4/7] ufs: remove the BKL

From: Arnd Bergmann
Date: Wed Mar 02 2011 - 10:08:37 EST


On Wednesday 02 March 2011, Nick Bowler wrote:
> On 2011-03-02 00:13 +0100, Arnd Bergmann wrote:
> > This introduces a new per-superblock mutex in UFS to replace
> > the big kernel lock. I have been careful to avoid nested
> > calls to lock_ufs and to get the lock order right with
> > respect to other mutexes, in particular lock_super.
> >
> > I did not make any attempt to prove that the big kernel
> > lock is not needed in a particular place in the code,
> > which is very possible.
> >
> > The code is still only compile-tested,
>
> This isn't true anymore; I've been running with this patch (well, the
> previous versions thereof) for some time now. On the other hand, I
> don't use all of this driver's features.

I'll updated the comment. Can I add your Tested-by tag?

> > but it should at least be harmless on non-SMP systems, since the new
> > mutex is not taken on those.
>
> I think this part of the patch is strange. It seems like a gratuitous
> difference between SMP/preempt and other systems to #if out the code
> that takes the mutex. This might make problems with the conversion fly
> under the radar longer because people with older systems won't encounter
> them.

I agree it is strange, but the mutex has some serious performance impact
that I wanted to minimize on the systems where we know it is not needed.
The BKL was only active on those systems, so we know that non-SMP
non-preempt kernels don't need the mutex.

Arnd
--
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/