aboutsummaryrefslogtreecommitdiffstats
path: root/fs/ext4/super.c
diff options
context:
space:
mode:
authorTheodore Ts'o <tytso@mit.edu>2009-04-25 22:53:39 -0400
committerTheodore Ts'o <tytso@mit.edu>2009-04-25 22:53:39 -0400
commit32ed5058ce90024efcd811254b4b1de0468099df (patch)
tree0054cc5c385b4ba02abd95a761ccb01b453ba05f /fs/ext4/super.c
parent3b9d4ed26680771295d904a6b83e88e620780893 (diff)
downloadkernel_samsung_smdk4412-32ed5058ce90024efcd811254b4b1de0468099df.zip
kernel_samsung_smdk4412-32ed5058ce90024efcd811254b4b1de0468099df.tar.gz
kernel_samsung_smdk4412-32ed5058ce90024efcd811254b4b1de0468099df.tar.bz2
ext4: Replace lock/unlock_super() with an explicit lock for resizing
Use a separate lock to protect s_groups_count and the other block group descriptors which get changed via an on-line resize operation, so we can stop overloading the use of lock_super(). Signed-off-by: "Theodore Ts'o" <tytso@mit.edu>
Diffstat (limited to 'fs/ext4/super.c')
-rw-r--r--fs/ext4/super.c1
1 files changed, 1 insertions, 0 deletions
diff --git a/fs/ext4/super.c b/fs/ext4/super.c
index 7f43fde..1fbf090 100644
--- a/fs/ext4/super.c
+++ b/fs/ext4/super.c
@@ -2646,6 +2646,7 @@ static int ext4_fill_super(struct super_block *sb, void *data, int silent)
#endif
INIT_LIST_HEAD(&sbi->s_orphan); /* unlinked but open files */
mutex_init(&sbi->s_orphan_lock);
+ mutex_init(&sbi->s_resize_lock);
sb->s_root = NULL;