From: Al Viro <viro@ZenIV.linux.org.uk>
To: Ingo Molnar <mingo@elte.hu>
Cc: Alessio Igor Bogani <abogani@texware.it>,
Alexander Viro <viro@ftp.linux.org.uk>,
Frederic Weisbecker <fweisbec@gmail.com>,
Peter Zijlstra <a.p.zijlstra@chello.nl>,
LKML <linux-kernel@vger.kernel.org>,
Jonathan Corbet <corbet@lwn.net>
Subject: Re: [PATCH -tip] remove the BKL: Replace BKL in mount/umount syscalls with a mutex
Date: Fri, 17 Apr 2009 00:56:49 +0100 [thread overview]
Message-ID: <20090416235649.GF26366@ZenIV.linux.org.uk> (raw)
In-Reply-To: <20090416160645.GB17804@elte.hu>
On Thu, Apr 16, 2009 at 06:06:45PM +0200, Ingo Molnar wrote:
>
> * Alessio Igor Bogani <abogani@texware.it> wrote:
>
> > Replace ths BKL in sys_mount()/sys_umount() syscalls with a regular mutex.
> >
> > Signed-off-by: Alessio Igor Bogani <abogani@texware.it>
> > ---
> > fs/namespace.c | 16 +++++++++-------
> > fs/super.c | 9 ++++-----
> > 2 files changed, 13 insertions(+), 12 deletions(-)
>
> Ok, this patch needs to be flamed^W commented on by Al.
>
> Al: this patch is very likely broken as i cannot imagine you leaving
> the BKL there just so. So lets accept that (and your NAK) as a given
> and not get upset about it too much.
NAK is certainly given. Dealing with force-umount is laughable - there
are so few instances, that we simply ought to take (all two? of) them
individually.
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.
> I'm wondering how much the BKL use here is made necessary by the
> sys_open() BKL use in device drivers. Jonathan has done extensive
> work on the sys_open front (and there's more such work in
> tip:core/kill-the-BKL) - perhaps that has largely paved the way for
> this change?
>
> There's also ioctl BKL use - is the BKL use here in sys_mount
> necessiated by the (naked) BKL use in those handlers?
No. It's all about fs internals protected from themselves. ->remount_fs()
tends to be grotty shite, so nobody had enough courage to do proper review
and fixes. And it's not a place where we would really suffer from contention,
so it didn't get high priority that way either.
next prev parent reply other threads:[~2009-04-16 23:57 UTC|newest]
Thread overview: 25+ messages / expand[flat|nested] mbox.gz Atom feed top
2009-04-16 14:27 [PATCH -tip] remove the BKL: Replace BKL in mount/umount syscalls with a mutex Alessio Igor Bogani
2009-04-16 14:36 ` Christoph Hellwig
2009-04-16 16:49 ` Ingo Molnar
2009-04-16 17:01 ` Christoph Hellwig
2009-04-16 17:13 ` Ingo Molnar
2009-04-17 0:05 ` Al Viro
2009-04-16 16:06 ` Ingo Molnar
2009-04-16 16:58 ` Ingo Molnar
2009-04-16 23:56 ` Al Viro [this message]
2009-04-17 0:01 ` Ingo Molnar
2009-04-17 0:13 ` Al Viro
2009-04-17 0:27 ` Ingo Molnar
2009-04-17 0:38 ` Al Viro
2009-04-17 16:56 ` Ingo Molnar
2009-04-17 17:04 ` Peter Zijlstra
2009-04-17 17:21 ` Linus Torvalds
2009-04-17 17:31 ` Jonathan Corbet
2009-04-17 18:03 ` Linus Torvalds
2009-04-17 18:44 ` Matthew Wilcox
2009-04-22 17:28 ` J. Bruce Fields
2009-04-17 18:08 ` Al Viro
2009-04-17 18:34 ` Ingo Molnar
2009-04-17 17:41 ` Al Viro
2009-04-17 17:34 ` Al Viro
2009-04-16 23:49 ` Al Viro
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20090416235649.GF26366@ZenIV.linux.org.uk \
--to=viro@zeniv.linux.org.uk \
--cc=a.p.zijlstra@chello.nl \
--cc=abogani@texware.it \
--cc=corbet@lwn.net \
--cc=fweisbec@gmail.com \
--cc=linux-kernel@vger.kernel.org \
--cc=mingo@elte.hu \
--cc=viro@ftp.linux.org.uk \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox