June 2016 XFS reverse-mapping, reflink, and online fs scrub

Darrick J. Wong darrick.wong at oracle.com
Fri Jun 3 19:47:30 CDT 2016


Hi all,

Time for my monthly rmap+reflink code dump to github!  Kernel patches
are against 4.6.0, and xfsprogs patches are against ... 4.5. <shudder>
xfs/128 still fails when rmap is enabled.

On the plus side, CoW and reflink remapping is now atomic!  For rmap,
I also moved the 'unwritten' bit out of the rm_blockcount field so
that we can use all 32 bits.  I've fixed numerous silly bugs in
xfs_repair dealing with incorrect key handling, and worked in some
large(ish) performance improvements.  I also put in some tests that
inject errors into the deferred op finishing code so that we can crash
the FS at various points during a remapping multi-transaction to check
that the redo items actually work.

I plan to rebase the whole mess against 4.7-rc and for-next when I get
a chance; and properly integrate the new patches into the start of the
patchbomb.  (342 patches is a bit much).  The remaining work items are
to make sure that quota accounting works acceptably, fix swapext when
rmap is enabled, investigate caching the "is shared?" information in
core to speed up reflink, and fixing performance problems.  Maybe more
scrub work too some day.

Christoph: I've put in all your patches that you've sent me.

--D

Code-bomb:
https://github.com/djwong/linux/commits/djwong-devel
https://github.com/djwong/xfsprogs/commits/djwong-devel
https://github.com/djwong/xfstests/commits/djwong-devel
https://github.com/djwong/xfs-documentation/commits/djwong-devel
https://github.com/djwong/man-pages/commits/djwong-devel



More information about the xfs mailing list