Eryu, This is a re-work of Dave Chinner's copy_file_range() tests which I used to verify the kernel fixes of the syscall [1]. I split out the single bounds test by Dave to 4 tests. immutable and swap file copy have specific requiremenet which many filesystems do not meet (e.g. cifs,nfs,ceph,overlayfs), so those test cases were split to individual test to allow better bounds test converage for all filesystems. The 3 first tests fix bugs in the interface, so they are appropriate for merge IMO. The last test (cross-device copy) tests a new functionality, so you may want to wait with merge till after the work is merged upstream. NOTE that the bounds check test depend on changes that have been merged to xfsprogs v4.20. Without those changes the test will hang! I used an artificial requirement _require_xfs_io_command "chmod" to skip the test with old xfs_io. I welcome suggestions for better way to handle this issue. Thanks, Amir. Changes from v1: - Remove patch to test EINVAL behavior instead of short copy - Remove 'chmod -r' permission drop test case - Split out test for swap/immutable file copy - Split of cross-device copy test [1] https://lore.kernel.org/linux-fsdevel/20190526061100.21761-1-amir73il@xxxxxxxxx/ Amir Goldstein (5): generic: create copy_range group generic: copy_file_range immutable file test generic: copy_file_range swapfile test generic: copy_file_range bounds test generic: cross-device copy_file_range test tests/generic/434 | 2 + tests/generic/988 | 59 ++++++++++++++++++++ tests/generic/988.out | 5 ++ tests/generic/989 | 56 +++++++++++++++++++ tests/generic/989.out | 4 ++ tests/generic/990 | 123 ++++++++++++++++++++++++++++++++++++++++++ tests/generic/990.out | 37 +++++++++++++ tests/generic/991 | 56 +++++++++++++++++++ tests/generic/991.out | 4 ++ tests/generic/group | 14 +++-- 10 files changed, 355 insertions(+), 5 deletions(-) create mode 100755 tests/generic/988 create mode 100644 tests/generic/988.out create mode 100755 tests/generic/989 create mode 100644 tests/generic/989.out create mode 100755 tests/generic/990 create mode 100644 tests/generic/990.out create mode 100755 tests/generic/991 create mode 100644 tests/generic/991.out -- 2.17.1