diff options
author | Andreas Gruenbacher <agruen@suse.de> | 2005-07-07 20:57:00 -0400 |
---|---|---|
committer | Linus Torvalds <torvalds@g5.osdl.org> | 2005-07-07 21:23:46 -0400 |
commit | ff87b37da912d6aeab6c20c58f51b34d3e37f111 (patch) | |
tree | 22c2e6467bbd70ea12c9bdbc8180711791cde02f /fs/ext3/inode.c | |
parent | 6c036527a630720063b67d9a65455e8caca2c8fa (diff) |
[PATCH] ext3 xattr: Don't write to the in-inode xattr space of reserved inodes
We are not using the in-inode space for xattrs in reserved inodes because
mkfs.ext3 doesn't initialize it properly. For those inodes, we set
i_extra_isize to 0. Make sure that we also don't overwrite the
i_extra_isize field when writing out the inode in that case. This is for
cleanliness only, and doesn't fix an actual bug.
Signed-off-by: Andreas Gruenbacher <agruen@suse.de>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
Diffstat (limited to 'fs/ext3/inode.c')
-rw-r--r-- | fs/ext3/inode.c | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/fs/ext3/inode.c b/fs/ext3/inode.c index 0b2db4f618cb..9989fdcf4d5a 100644 --- a/fs/ext3/inode.c +++ b/fs/ext3/inode.c | |||
@@ -2663,7 +2663,7 @@ static int ext3_do_update_inode(handle_t *handle, | |||
2663 | } else for (block = 0; block < EXT3_N_BLOCKS; block++) | 2663 | } else for (block = 0; block < EXT3_N_BLOCKS; block++) |
2664 | raw_inode->i_block[block] = ei->i_data[block]; | 2664 | raw_inode->i_block[block] = ei->i_data[block]; |
2665 | 2665 | ||
2666 | if (EXT3_INODE_SIZE(inode->i_sb) > EXT3_GOOD_OLD_INODE_SIZE) | 2666 | if (ei->i_extra_isize) |
2667 | raw_inode->i_extra_isize = cpu_to_le16(ei->i_extra_isize); | 2667 | raw_inode->i_extra_isize = cpu_to_le16(ei->i_extra_isize); |
2668 | 2668 | ||
2669 | BUFFER_TRACE(bh, "call ext3_journal_dirty_metadata"); | 2669 | BUFFER_TRACE(bh, "call ext3_journal_dirty_metadata"); |