summaryrefslogtreecommitdiffstats
path: root/fs/xfs
diff options
context:
space:
mode:
authorDave Chinner2013-06-03 07:28:49 +0200
committerBen Myers2013-06-05 00:36:30 +0200
commit59913f14dfe8eb772ff93eb442947451b4416329 (patch)
treea9925823147b4a3be6f5bc6086750b1acf7a3af6 /fs/xfs
parentxfs: rework dquot CRCs (diff)
downloadkernel-qcow2-linux-59913f14dfe8eb772ff93eb442947451b4416329.tar.gz
kernel-qcow2-linux-59913f14dfe8eb772ff93eb442947451b4416329.tar.xz
kernel-qcow2-linux-59913f14dfe8eb772ff93eb442947451b4416329.zip
xfs: fix remote attribute invalidation for a leaf
When invalidating an attribute leaf block block, there might be remote attributes that it points to. With the recent rework of the remote attribute format, we have to make sure we calculate the length of the attribute correctly. We aren't doing that in xfs_attr3_leaf_inactive(), so fix it. Signed-off-by: Dave Chinner <dchinner@redhat.com> Reviewed-by: Brian Foster <bfoster@redhat.com> Reviewed-by: Mark Tinguely <tinuguely@sgi.com> Signed-off-by: Ben Myers <bpm@sgi.com>
Diffstat (limited to 'fs/xfs')
-rw-r--r--fs/xfs/xfs_attr_leaf.c2
1 files changed, 1 insertions, 1 deletions
diff --git a/fs/xfs/xfs_attr_leaf.c b/fs/xfs/xfs_attr_leaf.c
index d788302e506a..31d3cd129269 100644
--- a/fs/xfs/xfs_attr_leaf.c
+++ b/fs/xfs/xfs_attr_leaf.c
@@ -3258,7 +3258,7 @@ xfs_attr3_leaf_inactive(
name_rmt = xfs_attr3_leaf_name_remote(leaf, i);
if (name_rmt->valueblk) {
lp->valueblk = be32_to_cpu(name_rmt->valueblk);
- lp->valuelen = XFS_B_TO_FSB(dp->i_mount,
+ lp->valuelen = xfs_attr3_rmt_blocks(dp->i_mount,
be32_to_cpu(name_rmt->valuelen));
lp++;
}