From: Filipe Manana <fdmanana@xxxxxxxx>
This patchset adds support for currently unsupported cases of reflink
operations that cover a file range that has inline extents, more details
on why/how in patch 4/4.
It also starts by moving all the reflink code out of ioctl.c into a new
file named reflink.c (like xfs does) since this code is quite significant
in size and has grown over the years.
V3: Updated first patch to introduce reflink.h as well, besides reflink.c.
V2: Removed third patch from the previous patchset version. Since the full
page ends up getting written, it's not necessary to read it before
writing to it in case it's not uptodate. The final patch, which is
now patch number 3, ends up being simpler as well.
*** BLURB HERE ***
Filipe Manana (3):
Btrfs: move all reflink implementation code into its own file
Btrfs: simplify inline extent handling when doing reflinks
Btrfs: implement full reflink support for inline extents
fs/btrfs/Makefile | 2 +-
fs/btrfs/ctree.h | 3 -
fs/btrfs/file.c | 1 +
fs/btrfs/ioctl.c | 733 ------------------------------------------
fs/btrfs/reflink.c | 782 +++++++++++++++++++++++++++++++++++++++++++++
fs/btrfs/reflink.h | 12 +
6 files changed, 796 insertions(+), 737 deletions(-)
create mode 100644 fs/btrfs/reflink.c
create mode 100644 fs/btrfs/reflink.h
--
2.25.0