xfs: correctly map remote attr buffers during removal
authorDave Chinner <dchinner@redhat.com>
Tue, 21 May 2013 08:02:04 +0000 (18:02 +1000)
committerBen Myers <bpm@sgi.com>
Thu, 30 May 2013 22:26:08 +0000 (17:26 -0500)
commit58a72281555bf301f6dff24db2db205c87ef8db1
tree08167ec47b27c14dcf71744557a0edaac73d2bdd
parent26f714450c3907ce07c41a0bd1bea40368e0b4da
xfs: correctly map remote attr buffers during removal

If we don't map the buffers correctly (same as for get/set
operations) then the incore buffer lookup will fail. If a block
number matches but a length is wrong, then debug kernels will ASSERT
fail in _xfs_buf_find() due to the length mismatch. Ensure that we
map the buffers correctly by basing the length of the buffer on the
attribute data length rather than the remote block count.

Signed-off-by: Dave Chinner <dchinner@redhat.com>
Reviewed-by: Ben Myers <bpm@sgi.com>
Signed-off-by: Ben Myers <bpm@sgi.com>
(cherry picked from commit 6863ef8449f1908c19f43db572e4474f24a1e9da)
fs/xfs/xfs_attr_remote.c