summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorDave Chinner <dchinner@redhat.com>2013-06-03 15:28:49 +1000
committerBen Myers <bpm@sgi.com>2013-06-04 17:36:30 -0500
commit59913f14dfe8eb772ff93eb442947451b4416329 (patch)
treea9925823147b4a3be6f5bc6086750b1acf7a3af6
parent6fcdc59de28817d1fbf1bd58cc01f4f3fac858fb (diff)
downloadop-kernel-dev-59913f14dfe8eb772ff93eb442947451b4416329.zip
op-kernel-dev-59913f14dfe8eb772ff93eb442947451b4416329.tar.gz
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>
-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 d788302..31d3cd1 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++;
}
OpenPOWER on IntegriCloud