summaryrefslogtreecommitdiff
path: root/fs/ext2/super.c
diff options
context:
space:
mode:
authorDan Carpenter <error27@gmail.com>2009-04-09 18:07:10 +0200
committerJan Kara <jack@suse.cz>2009-04-27 16:49:52 +0200
commita069e9cee1dba2f847839d325f46ce6976ed1b76 (patch)
treef1af53fdeb9474fd6afe2d0d27f24ae3b92658b5 /fs/ext2/super.c
parentfd1b52435a6d9663de896e8437ef067372916ef3 (diff)
downloadlwn-a069e9cee1dba2f847839d325f46ce6976ed1b76.tar.gz
lwn-a069e9cee1dba2f847839d325f46ce6976ed1b76.zip
ext2: missing unlock in ext2_quota_write()
The inode->i_mutex should be unlocked. Found by smatch (http://repo.or.cz/w/smatch.git). Compile tested. Signed-off-by: Dan Carpenter <error27@gmail.com> Signed-off-by: Jan Kara <jack@suse.cz>
Diffstat (limited to 'fs/ext2/super.c')
-rw-r--r--fs/ext2/super.c4
1 files changed, 3 insertions, 1 deletions
diff --git a/fs/ext2/super.c b/fs/ext2/super.c
index f983225266dc..5c4afe652245 100644
--- a/fs/ext2/super.c
+++ b/fs/ext2/super.c
@@ -1395,8 +1395,10 @@ static ssize_t ext2_quota_write(struct super_block *sb, int type,
blk++;
}
out:
- if (len == towrite)
+ if (len == towrite) {
+ mutex_unlock(&inode->i_mutex);
return err;
+ }
if (inode->i_size < off+len-towrite)
i_size_write(inode, off+len-towrite);
inode->i_version++;