From: Jan Kara <jack@suse.cz>
To: Jan Blunck <jblunck@suse.de>
Cc: Jan Kara <jack@suse.cz>,
linux-fsdevel@vger.kernel.org, Matthew Wilcox <matthew@wil.cx>,
linux-kernel@vger.kernel.org, Andi Kleen <andi@firstfloor.org>,
Al Viro <viro@zeniv.linux.org.uk>,
Andrew Morton <akpm@linux-foundation.org>,
Andi Kleen <ak@linux.intel.com>, Christoph Hellwig <hch@lst.de>,
linux-ext4@vger.kernel.org
Subject: Re: [PATCH 05/27] BKL: Remove BKL from ext2 filesystem
Date: Thu, 5 Nov 2009 14:56:52 +0100 [thread overview]
Message-ID: <20091105135651.GE12770@duck.suse.cz> (raw)
In-Reply-To: <20091105130635.GE21750@bolzano.suse.de>
On Thu 05-11-09 14:06:35, Jan Blunck wrote:
> On Thu, Nov 05, Jan Kara wrote:
>
> > On Mon 02-11-09 11:04:45, Jan Blunck wrote:
> > > The BKL is still used in ext2_put_super(), ext2_fill_super(), ext2_sync_fs()
> > > ext2_remount() and ext2_write_inode(). From these calls ext2_put_super(),
> > > ext2_fill_super() and ext2_remount() are protected against each other by
> > > the struct super_block s_umount rw semaphore. The call in ext2_write_inode()
> > > could only protect the modification of the ext2_sb_info through
> > > ext2_update_dynamic_rev() against concurrent ext2_sync_fs() or ext2_remount().
> > > ext2_fill_super() and ext2_put_super() can be left out because you need a
> > > valid filesystem reference in all three cases, which you do not have when
> > > you are one of these functions.
> > This is not quite true. Actually, ext2_sync_fs() is called also with
> > s_umount held (for reading) so it cannot race with any of the mounting /
> > umounting functions. But it should probably be guarded against running two
> > instances of ext2_sync_fs() in parallel.
> > Looking into the code, we probably have a race in ext2_write_inode that
> > two threads can write one inode in parallel. But that's a separe issue from
> > BKL removal.
>
> Have you actually seen that the previous patch introduces s_mutex? Meanwhile
> that mutex has been replaced by a spinlock due to Andy's feedback.
Ops, I wanted to comment on that patch as well but then decided it might
be better to write my version and didn't get to it yet... Thinking more
about it, probably go ahead with these two patches (modulo some changes
I've now suggested in a reply to your second ext2 patch) and I can cleanup
ext2 code after that.
Honza
--
Jan Kara <jack@suse.cz>
SUSE Labs, CR
next prev parent reply other threads:[~2009-11-05 13:56 UTC|newest]
Thread overview: 16+ messages / expand[flat|nested] mbox.gz Atom feed top
[not found] <1257156307-24175-1-git-send-email-jblunck@suse.de>
2009-11-02 10:04 ` [PATCH 01/27] BKL: Push down BKL from do_new_mount() to the filesystems get_sb/fill_super operation Jan Blunck
2009-11-02 10:04 ` [PATCH 04/27] ext2: Add ext2_sb_info mutex Jan Blunck
2009-11-02 10:26 ` Andi Kleen
2009-11-02 16:57 ` Jan Blunck
2009-11-02 17:25 ` Andi Kleen
2009-11-05 13:55 ` Jan Kara
2009-11-02 10:04 ` [PATCH 05/27] BKL: Remove BKL from ext2 filesystem Jan Blunck
2009-11-05 12:41 ` Jan Kara
2009-11-05 13:06 ` Jan Blunck
2009-11-05 13:56 ` Jan Kara [this message]
2009-11-02 10:04 ` [PATCH 06/27] BKL: Remove BKL from ext3 fill_super() Jan Blunck
2009-11-05 11:55 ` Jan Kara
2009-11-02 10:04 ` [PATCH 07/27] BKL: Remove BKL from ext3_put_super() and ext3_remount() Jan Blunck
2009-11-05 11:56 ` Jan Kara
2009-11-02 10:04 ` [PATCH 08/27] BKL: Remove BKL from ext4 filesystem Jan Blunck
2009-11-09 14:45 ` Theodore Tso
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=20091105135651.GE12770@duck.suse.cz \
--to=jack@suse.cz \
--cc=ak@linux.intel.com \
--cc=akpm@linux-foundation.org \
--cc=andi@firstfloor.org \
--cc=hch@lst.de \
--cc=jblunck@suse.de \
--cc=linux-ext4@vger.kernel.org \
--cc=linux-fsdevel@vger.kernel.org \
--cc=linux-kernel@vger.kernel.org \
--cc=matthew@wil.cx \
--cc=viro@zeniv.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