Messages in this thread | | | Date | Wed, 14 Apr 2010 10:00:19 +0200 | From | Jan Blunck <> | Subject | Re: [PATCH 5/5] ext2: Add ext2_sb_info s_lock spinlock |
| |
On Wed, Apr 14, Jaswinder Singh Rajput wrote:
> Hello, > > On Tue, Apr 13, 2010 at 2:11 AM, Jan Blunck <jblunck@suse.de> wrote: > > Add a spinlock that protects against concurrent modifications of > > s_mount_state, s_blocks_last, s_overhead_last and the content of the > > superblock's buffer pointed to by sbi->s_es. This is a preparation patch > > for removing the BKL from ext2 in the next patch. > > > > Signed-off-by: Jan Blunck <jblunck@suse.de> > > Cc: Andi Kleen <andi@firstfloor.org> > > Cc: Jan Kara <jack@suse.cz> > > Cc: OGAWA Hirofumi <hirofumi@mail.parknet.co.jp> > > --- > > fs/ext2/inode.c | 2 ++ > > fs/ext2/super.c | 31 +++++++++++++++++++++++++++++-- > > include/linux/ext2_fs_sb.h | 6 ++++++ > > 3 files changed, 37 insertions(+), 2 deletions(-) > > > > diff --git a/fs/ext2/inode.c b/fs/ext2/inode.c > > index fc13cc1..5d15442 100644 > > --- a/fs/ext2/inode.c > > +++ b/fs/ext2/inode.c > > @@ -1407,9 +1407,11 @@ static int __ext2_write_inode(struct inode *inode, int do_sync) > > * created, add a flag to the superblock. > > */ > > lock_kernel(); > > + spin_lock(&EXT2_SB(sb)->s_lock); > > ext2_update_dynamic_rev(sb); > > EXT2_SET_RO_COMPAT_FEATURE(sb, > > EXT2_FEATURE_RO_COMPAT_LARGE_FILE); > > + spin_unlock(&EXT2_SB(sb)->s_lock); > > unlock_kernel(); > > ext2_write_super(sb); > > Do we need both locks (kernel lock and spin lock) >
The BKL is removed in a separate patch. First I though it should get merged through Frederic's tree but since the removal does not depend on the pushdown from do_new_mount() I guess it is safe to add here.
Thanks, Jan -- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/
| |