Re: [PATCH -tip] remove the BKL: Replace BKL in mount/umountsyscalls with a mutex

From: Al Viro
Date: Thu Apr 16 2009 - 20:14:00 EST


On Fri, Apr 17, 2009 at 02:01:42AM +0200, Ingo Molnar wrote:
>
> * Al Viro <viro@xxxxxxxxxxxxxxxxxx> wrote:
>
> > remount is potentially nastier, but then it *is* nasty. Again,
> > it's only per-fs stuff, so the obvious first step is taking BKL
> > down into the instances. It doesn't protect anything in VFS; all
> > uses are fs internal, so that'll take review of individual
> > filesystems.
> >
> > NOTE: do not assume that code in fs/foo/* is correct; "it doesn't
> > take BKL elsewhere" does _not_ mean that we don't have races.
> > IOW, the same review ought to look for such beasts and deal with
> > them. Mere "oh, no BKL anywhere in that fs" is not enough to
> > discard the ->remount_fs() instance.
>
> what kind of races do you mean? Timing sensitive ones that are there
> just are not easy to trigger with the BKL held?
>
> Or actual locking interaction between that body of BKL code and all
> other BKL using code?

Old foo_read_super/foo_write_super/foo_put_super/foo_remount_fs for the
same foo. IOW, per-driver (and not per-fs - that's taken care of) data
structures. Arbitrary weird ones.
--
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/