diff options
author | Lachlan McIlroy <lachlan@sgi.com> | 2008-09-26 12:16:46 +1000 |
---|---|---|
committer | Lachlan McIlroy <lachlan@redback.melbourne.sgi.com> | 2008-09-26 12:16:46 +1000 |
commit | f1ccd2955157e1aff992f6aaaba0944209076220 (patch) | |
tree | 224a32be1bd5cd508d0b85bc446783ea939b7ad3 /fs | |
parent | 6ef190cc92e33565accff6a320f0e7d90480bfe7 (diff) | |
download | linux-stable-f1ccd2955157e1aff992f6aaaba0944209076220.tar.gz linux-stable-f1ccd2955157e1aff992f6aaaba0944209076220.tar.bz2 linux-stable-f1ccd2955157e1aff992f6aaaba0944209076220.zip |
[XFS] Fix extent list corruption in xfs_iext_irec_compact_full().
If we don't move all the records from the next buffer into the current
buffer then we need to update the er_extoff field of the next buffer as we
shift the remaining records to the start of the buffer.
SGI-PV: 987159
SGI-Modid: xfs-linux-melb:xfs-kern:32165a
Signed-off-by: Lachlan McIlroy <lachlan@sgi.com>
Signed-off-by: Eric Sandeen <sandeen@sandeen.net>
Signed-off-by: Russell Cattelan <cattelan@thebarn.com>
Diffstat (limited to 'fs')
-rw-r--r-- | fs/xfs/xfs_inode.c | 1 |
1 files changed, 1 insertions, 0 deletions
diff --git a/fs/xfs/xfs_inode.c b/fs/xfs/xfs_inode.c index 00e80df9dd9d..419cfc2eacb3 100644 --- a/fs/xfs/xfs_inode.c +++ b/fs/xfs/xfs_inode.c @@ -4584,6 +4584,7 @@ xfs_iext_irec_compact_full( (XFS_LINEAR_EXTS - erp_next->er_extcount) * sizeof(xfs_bmbt_rec_t)); + erp_next->er_extoff += ext_diff; } } |