Hello,
it seems this patchset did not make it through to LKML, so I'm trying to resend.
This set of patches contains cleanups and fixes to the mbcache and ext2/ext3 xattr code, and adds completely reworks Alex Tomas's in-inode attribute patch. I did a fair amount of review and testing on all the patches; Andrew Tridgell did some testing as well. As far as I can tell the patches are ready for direct merging. Alternatively the fixes could be merged while the in-inode attribute support could go into -mm; either way won't make much difference for me. Please comment.
In order for the patches to apply, please first revert Alex's in-inode-ea patch. The patch was not ready for merging yet. I could retrofit the rewrite on top of Alex's patch, but this would cause a lot of work, and would benefit the code quality in no way.
Alex's patch was merged in this changeset:
http://linux.bkbits.net:8080/linux-2.6/cset@41db7b23z5xP6bWuxXwEgBu1AxyStQ?nav=index.html|ChangeSet@-4w
All the patches contain decsriptions. The bugfix patches in this set are:
revert-old-ea-in-inode.diff
A reverse diff of Alex's patch.
mbcache-cleanup.diff
A small mbcache cleanup.
mbcache-bug.diff
Convert the mbcache to protect cache entries readers/writer
style. This fixes an attribute sharing race.
xattr-credits.diff
Don't use journal_release_buffer in ext3 xattrs; it's unsafe.
ext3_xattr_release_block.diff
Factor our common xattr code.
remove-XATTR_INDEX_MAX.diff
Minor cleaup.
The patches for in-inode attribute support are:
xattr-cleanup.diff
Prepare xattr code for in-inode xattrs.
fix-get_inode_loc.diff
Hide ext3_get_inode_loc in_mem optimization from users;
the optimization applies differently with in-inode xattrs.
ea-in-inode.diff
In-inode attribute support. This is the original patch from Alex
heavily cleaned up.
Please apply the patches in this order:
revert-old-ea-in-inode.diff
mbcache-cleanup.diff
mbcache-bug.diff
xattr-credits.diff
ext3_xattr_release_block.diff
remove-XATTR_INDEX_MAX.diff
xattr-cleanup.diff
fix-get_inode_loc.diff
ea-in-inode.diff
Regards,
--
Andreas Gruenbacher <[email protected]>
SUSE Labs, SUSE LINUX PRODUCTS GMBH