linux: implement filesystem-side copy/clone functions for EL7
commit2768dc04cc45b2506a5f2f3b7c5da17eb42ec3c3
authorRob Norris <rob.norris@klarasystems.com>
Sun, 25 Jun 2023 10:50:19 +0000 (25 20:50 +1000)
committerBrian Behlendorf <behlendorf1@llnl.gov>
Wed, 26 Jul 2023 15:46:58 +0000 (26 08:46 -0700)
treed0ea617e13ad0806a6c278089c4ecd463a4989ac
parent3366ceaf3ab7f9f5f96313a2421c7c3418e541dd
linux: implement filesystem-side copy/clone functions for EL7

Redhat have backported copy_file_range and clone_file_range to the EL7
kernel using an "extended file operations" wrapper structure. This
connects all that up to let cloning work there too.

Reviewed-by: Brian Behlendorf <behlendorf1@llnl.gov>
Reviewed-by: Kay Pedersen <mail@mkwg.de>
Signed-off-by: Rob Norris <rob.norris@klarasystems.com>
Sponsored-By: OpenDrives Inc.
Sponsored-By: Klara Inc.
Closes #15050
config/kernel-vfs-extended-file_range.m4 [new file with mode: 0644]
config/kernel.m4
include/os/linux/zfs/sys/zpl.h
module/os/linux/zfs/zfs_vfsops.c
module/os/linux/zfs/zfs_znode.c
module/os/linux/zfs/zpl_file.c
module/os/linux/zfs/zpl_file_range.c