diff options
author | Eric Sandeen <sandeen@redhat.com> | 2009-12-14 13:00:30 -0600 |
---|---|---|
committer | Jan Kara <jack@suse.cz> | 2009-12-23 13:44:11 +0100 |
commit | b8a052d01669977f224255b0f9f2737018171ddb (patch) | |
tree | 2ef6c2e038d269f2bc4eb73e82439f0301d5c6b1 /fs/ext3/super.c | |
parent | 4854a5f0cbb1967fc7db3ea861d97afeea78b88b (diff) | |
download | talos-op-linux-b8a052d01669977f224255b0f9f2737018171ddb.tar.gz talos-op-linux-b8a052d01669977f224255b0f9f2737018171ddb.zip |
ext3: Replace lock/unlock_super() with an explicit lock for the orphan list
Use a separate lock to protect the orphan list, so we can stop
overloading the use of lock_super().
Port of ext4 commit 3b9d4ed26680771295d904a6b83e88e620780893
by Theodore Ts'o <tytso@mit.edu>.
CC: Theodore Ts'o <tytso@mit.edu>
Signed-off-by: Eric Sandeen <sandeen@redhat.com>
Signed-off-by: Jan Kara <jack@suse.cz>
Diffstat (limited to 'fs/ext3/super.c')
-rw-r--r-- | fs/ext3/super.c | 1 |
1 files changed, 1 insertions, 0 deletions
diff --git a/fs/ext3/super.c b/fs/ext3/super.c index 806b8b780add..97dd3828384c 100644 --- a/fs/ext3/super.c +++ b/fs/ext3/super.c @@ -1928,6 +1928,7 @@ static int ext3_fill_super (struct super_block *sb, void *data, int silent) sb->dq_op = &ext3_quota_operations; #endif INIT_LIST_HEAD(&sbi->s_orphan); /* unlinked but open files */ + mutex_init(&sbi->s_orphan_lock); sb->s_root = NULL; |