[<prev] [next>] [thread-next>] [day] [month] [year] [list]
Message-id: <1226954173.3972.70.camel@localhost>
Date: Tue, 18 Nov 2008 02:06:13 +0530
From: Kalpak Shah <Kalpak.Shah@....COM>
To: linux-ext4 <linux-ext4@...r.kernel.org>
Cc: TheodoreTso <tytso@....edu>, Mingming Cao <cmm@...ibm.com>,
Andreas Dilger <adilger@....COM>
Subject: [PATCH 2/2] Large EAs
This is the implementation for large EA support in ext4. Note that this also helps to have a larger number of EAs since large EAs get written out to a new inode instead of the EA block.
If value of an attribute is greater than 1/2 the blocksize, the value is not saved in the external EA block, instead it is saved in an inode. The EA entry saves the inode number in e_value_inum field (earlier this was
e_value_block that was unused). The EA inode has the same generation as the parent inode and the mtime of the EA inode is set to the inode number of the parent. A new EXT4_FEATURE_INCOMPAT_EA_INODE feature has been added for this.
This "large_xattr" feature is not enabled automatically and needs to be enabled by mkfs or using tune2fs.
Signed-off-by: Andreas Dilger <adilger@....com>
Signed-off-by: Kalpak Shah <kalpak.shah@....com>
ext4.h | 7 -
xattr.c | 413 +++++++++++++++++++++++++++++++++++++++++++++++++++++++++-------
xattr.h | 11 +
3 files changed, 386 insertions(+), 45 deletions(-)
Thanks,
Kalpak
View attachment "ext4-large-eas.patch" of type "text/x-patch" (21868 bytes)
Powered by blists - more mailing lists