diff mbox

ext2: fix missing mutex_unlock in error path

Message ID 20090414073631.GA4145@localhost.localdomain
State Not Applicable, archived
Headers show

Commit Message

Akinobu Mita April 14, 2009, 7:36 a.m. UTC
Add missing mutex_unlock in error path in ext2_quota_write()

Cc: Jan Kara <jack@suse.cz>
Signed-off-by: Akinobu Mita <akinobu.mita@gmail.com>
---
--
To unsubscribe from this list: send the line "unsubscribe linux-ext4" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html

Comments

Manish Katiyar April 14, 2009, 7:43 a.m. UTC | #1
On Tue, Apr 14, 2009 at 1:06 PM, Akinobu Mita <akinobu.mita@gmail.com> wrote:
> Add missing mutex_unlock in error path in ext2_quota_write()

This has already been taken I think.

http://patchwork.ozlabs.org/patch/25661/

Thanks -
Manish


>
> Cc: Jan Kara <jack@suse.cz>
> Signed-off-by: Akinobu Mita <akinobu.mita@gmail.com>
> ---
> diff --git a/fs/ext2/super.c b/fs/ext2/super.c
> index f983225..5c4afe6 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++;
> --
> To unsubscribe from this list: send the line "unsubscribe linux-ext4" in
> the body of a message to majordomo@vger.kernel.org
> More majordomo info at  http://vger.kernel.org/majordomo-info.html
>
Jan Kara April 14, 2009, 7:43 a.m. UTC | #2
Hello,

On Tue 14-04-09 16:36:31, Akinobu Mita wrote:
> Add missing mutex_unlock in error path in ext2_quota_write()
> 
> Cc: Jan Kara <jack@suse.cz>
> Signed-off-by: Akinobu Mita <akinobu.mita@gmail.com>
> ---
> diff --git a/fs/ext2/super.c b/fs/ext2/super.c
> index f983225..5c4afe6 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++;
  Thanks for the patch but I already have this patch in my quota tree from
Dan Carpenter...

								Honza
Akinobu Mita April 14, 2009, 9:35 a.m. UTC | #3
On Tue, Apr 14, 2009 at 09:43:57AM +0200, Jan Kara wrote:
>   Thanks for the patch but I already have this patch in my quota tree from
> Dan Carpenter...

Oh, I should have checked your tree.
BTW, JFS still have same problem in jfs_quota_write() 
--
To unsubscribe from this list: send the line "unsubscribe linux-ext4" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Akinobu Mita April 14, 2009, 9:43 a.m. UTC | #4
On Tue, Apr 14, 2009 at 06:35:45PM +0900, Akinobu Mita wrote:
> On Tue, Apr 14, 2009 at 09:43:57AM +0200, Jan Kara wrote:
> >   Thanks for the patch but I already have this patch in my quota tree from
> > Dan Carpenter...
> 
> Oh, I should have checked your tree.
> BTW, JFS still have same problem in jfs_quota_write() 

It's already fixed in JFS tree...
--
To unsubscribe from this list: send the line "unsubscribe linux-ext4" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
diff mbox

Patch

diff --git a/fs/ext2/super.c b/fs/ext2/super.c
index f983225..5c4afe6 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++;