aboutsummaryrefslogtreecommitdiffstats
path: root/fs/xfs/xfs_buf.c
diff options
context:
space:
mode:
authorDave Chinner <dchinner@redhat.com>2013-05-21 18:02:06 +1000
committerBen Myers <bpm@sgi.com>2013-05-30 17:26:24 -0500
commit634fd5322a3e6ae632dcf5f20eebc0583ba50838 (patch)
tree9add9c9df36af29972ef5c0d50543a76d03f6a62 /fs/xfs/xfs_buf.c
parentxfs: fully initialise temp leaf in xfs_attr3_leaf_unbalance (diff)
downloadlinux-dev-634fd5322a3e6ae632dcf5f20eebc0583ba50838.tar.xz
linux-dev-634fd5322a3e6ae632dcf5f20eebc0583ba50838.zip
xfs: fully initialise temp leaf in xfs_attr3_leaf_compact
xfs_attr3_leaf_compact() uses a temporary buffer for compacting the the entries in a leaf. It copies the the original buffer into the temporary buffer, then zeros the original buffer completely. It then copies the entries back into the original buffer. However, the original buffer has not been correctly initialised, and so the movement of the entries goes horribly wrong. Make sure the zeroed destination buffer is fully initialised, and once we've set up the destination incore header appropriately, write is back to the buffer before starting to move entries around. While debugging this, the _d/_s prefixes weren't sufficient to remind me what buffer was what, so rename then all _src/_dst. 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 d4c712bcf26a25c2b67c90e44e0b74c7993b5334)
Diffstat (limited to 'fs/xfs/xfs_buf.c')
0 files changed, 0 insertions, 0 deletions