aboutsummaryrefslogtreecommitdiff
path: root/fs/ext3
diff options
context:
space:
mode:
authorThomas Gleixner <tglx@linutronix.de>2008-05-18 11:54:43 +0200
committerThomas Gleixner <tglx@linutronix.de>2008-05-18 11:54:43 +0200
commitb4ef290d7c3abd1bf8cefcf8def359537fda7f31 (patch)
treef3e270923fa36c773eee3bb1f9981aab1711d938 /fs/ext3
parent77b52b4c5c66175553ee59eb43f74366f1e54bde (diff)
parentf26a3988917913b3d11b2bd741601a2c64ab9204 (diff)
Merge branch 'linus' into x86/pat
Diffstat (limited to 'fs/ext3')
-rw-r--r--fs/ext3/xattr.c5
1 files changed, 5 insertions, 0 deletions
diff --git a/fs/ext3/xattr.c b/fs/ext3/xattr.c
index d4a4f0e9ff6..175414ac221 100644
--- 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;