Skip to content
Snippets Groups Projects
Commit aa725876 authored by Andreas Dilger's avatar Andreas Dilger
Browse files

Branch b1_6

Description: MDS may lose file striping (and hence file data) in some cases
Details    : If there are additional extended attributes stored on the MDS,
	     in particular ACLs, SELinux, or user attributes (if user_xattr
	     is specified for the client mount options) then there is a risk
	     of attribute loss.  Additionally, the Lustre file striping
	     needs to be larger than default (e.g. striped over all OSTs),
	     and an additional attribute must be stored initially in the
	     inode and then increase in size enough to be moved to the
	     external attribute block (e.g. ACL growing in size) for file
	     data to be lost.
i=kalpak.shah
i=alex.zhuravlev
b=15777

Sync ChangeLog from b_release_1_6_5.
parent 3ddfc288
No related branches found
No related tags found
No related merge requests found
......@@ -30,6 +30,18 @@ Description: soft lockups on 1.6.2 MDS (is_subdir)
Details : don't add dentries with ".." to dcache and ignore such dentries in
iopen_lookup().
Severity : critical
Frequency : very rare, if additional xattrs are used on kernels >= 2.6.12
Bugzilla : 15777
Description: files may lose file attributes in some cases
Details : If there are multiple extended attributes stored on the inode,
in particular ACLs, SELinux, or user attributes (if user_xattr
is specified for the client mount options) then there is a risk
of attribute loss. If an additional attribute is be stored
initially in the inode and then increase in size enough to be
moved to the external attribute block (e.g. ACL growing in size)
for the attribute to be lost.
--------------------------------------------------------------------------------
2008-01-11 Sun Microsystems, Inc.
......
Date: Mon, 12 May 2008 11:24:40 +0800
From: Tiger Yang <tiger.yang@oracle.com>
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 <tiger.yang@oracle.com>
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;
......@@ -13,6 +13,7 @@ ext3-filterdata-sles10.patch
ext3-uninit-2.6.18.patch
ext3-nanosecond-2.6.18-vanilla.patch
ext3-inode-version-2.6.18-vanilla.patch
ext3-ea-expand-lose-block.patch
ext3-mmp-2.6.18-vanilla.patch
ext3-unlink-race.patch
ext3-fiemap-2.6.18-vanilla.patch
......
......@@ -18,6 +18,7 @@ ext3-disable-write-bar-by-default-2.6-sles10.patch
ext3-uninit-2.6-sles10.patch
ext3-nanosecond-2.6-sles10.patch
ext3-inode-version-2.6-sles10.patch
ext3-ea-expand-lose-block.patch
ext3-mmp-2.6-sles10.patch
ext3-fiemap-2.6-sles10.patch
ext3-statfs-2.6-sles10.patch
......
......@@ -14,6 +14,7 @@ ext3-16tb-overflow-fixes.patch
ext3-uninit-2.6.18.patch
ext3-nanosecond-2.6.18-vanilla.patch
ext3-inode-version-2.6.18-vanilla.patch
ext3-ea-expand-lose-block.patch
ext3-mmp-2.6.18-vanilla.patch
ext3-handle-directory-corruption-better.patch
ext3-fiemap-2.6.18-vanilla.patch
......
......@@ -13,6 +13,7 @@ ext3-filterdata-sles10.patch
ext3-uninit-2.6.22-vanilla.patch
ext3-nanosecond-2.6.22-vanilla.patch
ext3-inode-version-2.6.18-vanilla.patch
ext3-ea-expand-lose-block.patch
ext3-mmp-2.6.22-vanilla.patch
ext3-fiemap-2.6.22-vanilla.patch
ext3-statfs-2.6.22.patch
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment