Date: Mon, 12 May 2008 11:24:40 +0800 From: Tiger Yang Subject: [PATCH] ext3/4: fix uninitialized bs in ext3/4_xattr_set_handle() To: linux-ext4@vger.kernel.org Cc: linux-fsdevel@vger.kernel.org, linux-kernel@vger.kernel.org This fix the uninitialized bs when we try to replace a xattr entry in ibody with the new value which require more than free space. Signed-off-by: Tiger Yang diff --git a/fs/ext3/xattr.c b/fs/ext3/xattr.c --- a/fs/ext3/xattr.c +++ b/fs/ext3/xattr.c @@ -1000,6 +1000,11 @@ ext3_xattr_set_handle(handle_t *handle, struct inode *inode, int name_index, i.value = NULL; error = ext3_xattr_block_set(handle, inode, &i, &bs); } else if (error == -ENOSPC) { + if (EXT3_I(inode)->i_file_acl && !bs.s.base) { + error = ext3_xattr_block_find(inode, &i, &bs); + if (error) + goto cleanup; + } error = ext3_xattr_block_set(handle, inode, &i, &bs); if (error) goto cleanup;