[PATCH v2 0/5] clean up collapse range and handle post-eof delalloc

Brian Foster
2014-09-10T13:20:37Z

Hi all,

Here's v2 of the collapse clean up. We refactor a bit more via the
insertion of patch 3, otherwise it's similar to v1. This will see some
continued testing, but it survived ~500m fsx operations overnight.

Brian

v2:
- Rename helpers to xfs_bmse_*() scheme.
- Rearrange logic and minor cleanups to xfs_bmse[_can]_merge().
- Inserted patch 3 to further refactor xfs_bmap_shift_extents() into
xfs_bmse_shift_one().
- Return corruption error rather than BUG_ON() in patch 4 and detect
error in new helper.
v1: http://oss.sgi.com/archives/xfs/2014-09/msg00061.html
- Retain the eofblocks trim and writeback/inval. the range of shifted
data only.
- Added the xfs_free_file_space() patch to no longer writeback the
entire file.
rfc: http://oss.sgi.com/archives/xfs/2014-08/msg00462.html

Brian Foster (5):
xfs: track collapse via file offset rather than extent index
xfs: refactor shift-by-merge into xfs_bmse_merge() helper
xfs: refactor single extent shift into xfs_bmse_shift_one() helper
xfs: writeback and inval. file range to be shifted by collapse
xfs: only writeback and truncate pages for the freed range

fs/xfs/libxfs/xfs_bmap.c | 365 +++++++++++++++++++++++++++++++----------------
fs/xfs/libxfs/xfs_bmap.h | 7 +-
fs/xfs/xfs_bmap_util.c | 54 ++++---
3 files changed, 275 insertions(+), 151 deletions(-)

--
1.8.3.1