copy_file_range: fix fallback when source create on same txg
commit92f095a903f8599e76473cdc019e6da64d0b67c4
authorRob N <robn@despairlabs.com>
Tue, 15 Aug 2023 00:34:14 +0000 (15 10:34 +1000)
committerBrian Behlendorf <behlendorf1@llnl.gov>
Fri, 25 Aug 2023 20:33:40 +0000 (25 13:33 -0700)
tree1c50a667e4f5ccba0377e43d9139af387fdd7182
parent645a7e4d958df96f98f88a93cd38183369bf36a3
copy_file_range: fix fallback when source create on same txg

In 019dea0a5 we removed the conversion from EAGAIN->EXDEV inside
zfs_clone_range(), but forgot to add a test for EAGAIN to the
copy_file_range() entry points to trigger fallback to a content copy.

This commit fixes that.

Reviewed-by: Brian Behlendorf <behlendorf1@llnl.gov>
Reviewed-by: Kay Pedersen <mail@mkwg.de>
Signed-off-by: Rob Norris <robn@despairlabs.com>
Closes #15170
Closes #15172
module/os/freebsd/zfs/zfs_vnops_os.c
module/os/linux/zfs/zpl_file_range.c
module/zfs/zfs_vnops.c
tests/runfiles/linux.run
tests/test-runner/bin/zts-report.py.in
tests/zfs-tests/tests/Makefile.am
tests/zfs-tests/tests/functional/block_cloning/block_cloning_copyfilerange_fallback_same_txg.ksh [new file with mode: 0755]