On Sun, Jun 24, 2012 at 10:13:56PM +0800, Tao Ma wrote: > From: Tao Ma <boyu.mt@xxxxxxxxxx> > > In xattr block operation, we use h_refcount to indicate whether the > xattr block is shared among many inodes. And xattr block csum uses > s_csum_seed if it is shared and i_csum_seed if it belongs to > one inode. But this has a problem. So consider the block is shared > first bewteen inode A and B, and B has some xattr update and CoW > the xattr block. When it updates the *old* xattr block(because > of the h_refcount change) and calls ext4_xattr_release_block, we > has no idea that inode A is the real owner of the *old* xattr > block and we can't use the i_csum_seed of inode A either in xattr > block csum calculation. And I don't think we have an easy way to > find inode A. > > So this patch just removes the tricky i_csum_seed and we now uses > s_csum_seed every time for the xattr block csum. The corresponding > patch for the e2fsprogs will be sent in another patch. > > This is spotted by xfstests 117. > > Cc: Darrick J. Wong <djwong@xxxxxxxxxx> > Cc: "Theodore Ts'o" <tytso@xxxxxxx> > Signed-off-by: Tao Ma <boyu.mt@xxxxxxxxxx> Thanks, applied. - Ted -- To unsubscribe from this list: send the line "unsubscribe linux-ext4" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html