mirror of
https://github.com/linux-apfs/apfstests.git
synced 2026-05-01 15:01:44 -07:00
6f7ef01037
Test several scenarios of cloning operations where the source range includes inline extents. They used to not be supported on btrfs because their implementation was not straightforward, and therefore these operations used to fail with errno EOPNOTSUPP on older kernels. This currently fails on any released kernel. It passes only when the patch with the following subject is applied: "Btrfs: implement full reflink support for inline extents" Signed-off-by: Filipe Manana <fdmanana@suse.com> Reviewed-by: Josef Bacik <josef@toxicpanda.com> Signed-off-by: Eryu Guan <guaneryu@gmail.com>
242 lines
9.7 KiB
Plaintext
242 lines
9.7 KiB
Plaintext
QA output created by 205
|
|
|
|
Testing with defaults
|
|
|
|
Creating file foo1
|
|
wrote 4096/4096 bytes at offset 0
|
|
XXX Bytes, X ops; XX:XX:XX.X (XXX YYY/sec and XXX ops/sec)
|
|
wrote 126976/126976 bytes at offset 4096
|
|
XXX Bytes, X ops; XX:XX:XX.X (XXX YYY/sec and XXX ops/sec)
|
|
Creating file bar1
|
|
wrote 131072/131072 bytes at offset 0
|
|
XXX Bytes, X ops; XX:XX:XX.X (XXX YYY/sec and XXX ops/sec)
|
|
Cloning foo1 into the end of bar1
|
|
linked 131072/131072 bytes at offset 131072
|
|
XXX Bytes, X ops; XX:XX:XX.X (XXX YYY/sec and XXX ops/sec)
|
|
File bar1 digest = e9d03fb5fff30baf3c709f2384dfde67
|
|
Creating file foo2
|
|
wrote 1000/1000 bytes at offset 0
|
|
XXX Bytes, X ops; XX:XX:XX.X (XXX YYY/sec and XXX ops/sec)
|
|
wrote 61440/61440 bytes at offset 4096
|
|
XXX Bytes, X ops; XX:XX:XX.X (XXX YYY/sec and XXX ops/sec)
|
|
Creating file bar2
|
|
wrote 65536/65536 bytes at offset 0
|
|
XXX Bytes, X ops; XX:XX:XX.X (XXX YYY/sec and XXX ops/sec)
|
|
Cloning foo2 into the end of bar2
|
|
linked 65536/65536 bytes at offset 65536
|
|
XXX Bytes, X ops; XX:XX:XX.X (XXX YYY/sec and XXX ops/sec)
|
|
File bar2 digest = 85678cf32ed48f92ca42ad06d0b63f2a
|
|
Creating file bar3
|
|
wrote 131072/131072 bytes at offset 0
|
|
XXX Bytes, X ops; XX:XX:XX.X (XXX YYY/sec and XXX ops/sec)
|
|
Cloning foo2 into the middle of bar3
|
|
linked 65536/65536 bytes at offset 65536
|
|
XXX Bytes, X ops; XX:XX:XX.X (XXX YYY/sec and XXX ops/sec)
|
|
File bar3 digest = 85678cf32ed48f92ca42ad06d0b63f2a
|
|
Creating file bar4
|
|
wrote 65536/65536 bytes at offset 65536
|
|
XXX Bytes, X ops; XX:XX:XX.X (XXX YYY/sec and XXX ops/sec)
|
|
Cloning foo1 into bar4
|
|
linked 131072/131072 bytes at offset 0
|
|
XXX Bytes, X ops; XX:XX:XX.X (XXX YYY/sec and XXX ops/sec)
|
|
File bar4 digest = 4b48829714d20a4e73a0cf1565270076
|
|
Creating file bar5
|
|
Cloning foo1 into bar5
|
|
linked 131072/131072 bytes at offset 0
|
|
XXX Bytes, X ops; XX:XX:XX.X (XXX YYY/sec and XXX ops/sec)
|
|
File bar5 digest = 4b48829714d20a4e73a0cf1565270076
|
|
Creating file bar6
|
|
wrote 500/500 bytes at offset 0
|
|
XXX Bytes, X ops; XX:XX:XX.X (XXX YYY/sec and XXX ops/sec)
|
|
Cloning foo1 into bar6
|
|
linked 131072/131072 bytes at offset 0
|
|
XXX Bytes, X ops; XX:XX:XX.X (XXX YYY/sec and XXX ops/sec)
|
|
File bar6 digest = 4b48829714d20a4e73a0cf1565270076
|
|
File digests after mounting again the filesystem:
|
|
File bar1 digest = e9d03fb5fff30baf3c709f2384dfde67
|
|
File bar2 digest = 85678cf32ed48f92ca42ad06d0b63f2a
|
|
File bar3 digest = 85678cf32ed48f92ca42ad06d0b63f2a
|
|
File bar4 digest = 4b48829714d20a4e73a0cf1565270076
|
|
File bar5 digest = 4b48829714d20a4e73a0cf1565270076
|
|
File bar6 digest = 4b48829714d20a4e73a0cf1565270076
|
|
|
|
Testing with -o compress
|
|
|
|
Creating file foo1
|
|
wrote 4096/4096 bytes at offset 0
|
|
XXX Bytes, X ops; XX:XX:XX.X (XXX YYY/sec and XXX ops/sec)
|
|
wrote 126976/126976 bytes at offset 4096
|
|
XXX Bytes, X ops; XX:XX:XX.X (XXX YYY/sec and XXX ops/sec)
|
|
Creating file bar1
|
|
wrote 131072/131072 bytes at offset 0
|
|
XXX Bytes, X ops; XX:XX:XX.X (XXX YYY/sec and XXX ops/sec)
|
|
Cloning foo1 into the end of bar1
|
|
linked 131072/131072 bytes at offset 131072
|
|
XXX Bytes, X ops; XX:XX:XX.X (XXX YYY/sec and XXX ops/sec)
|
|
File bar1 digest = e9d03fb5fff30baf3c709f2384dfde67
|
|
Creating file foo2
|
|
wrote 1000/1000 bytes at offset 0
|
|
XXX Bytes, X ops; XX:XX:XX.X (XXX YYY/sec and XXX ops/sec)
|
|
wrote 61440/61440 bytes at offset 4096
|
|
XXX Bytes, X ops; XX:XX:XX.X (XXX YYY/sec and XXX ops/sec)
|
|
Creating file bar2
|
|
wrote 65536/65536 bytes at offset 0
|
|
XXX Bytes, X ops; XX:XX:XX.X (XXX YYY/sec and XXX ops/sec)
|
|
Cloning foo2 into the end of bar2
|
|
linked 65536/65536 bytes at offset 65536
|
|
XXX Bytes, X ops; XX:XX:XX.X (XXX YYY/sec and XXX ops/sec)
|
|
File bar2 digest = 85678cf32ed48f92ca42ad06d0b63f2a
|
|
Creating file bar3
|
|
wrote 131072/131072 bytes at offset 0
|
|
XXX Bytes, X ops; XX:XX:XX.X (XXX YYY/sec and XXX ops/sec)
|
|
Cloning foo2 into the middle of bar3
|
|
linked 65536/65536 bytes at offset 65536
|
|
XXX Bytes, X ops; XX:XX:XX.X (XXX YYY/sec and XXX ops/sec)
|
|
File bar3 digest = 85678cf32ed48f92ca42ad06d0b63f2a
|
|
Creating file bar4
|
|
wrote 65536/65536 bytes at offset 65536
|
|
XXX Bytes, X ops; XX:XX:XX.X (XXX YYY/sec and XXX ops/sec)
|
|
Cloning foo1 into bar4
|
|
linked 131072/131072 bytes at offset 0
|
|
XXX Bytes, X ops; XX:XX:XX.X (XXX YYY/sec and XXX ops/sec)
|
|
File bar4 digest = 4b48829714d20a4e73a0cf1565270076
|
|
Creating file bar5
|
|
Cloning foo1 into bar5
|
|
linked 131072/131072 bytes at offset 0
|
|
XXX Bytes, X ops; XX:XX:XX.X (XXX YYY/sec and XXX ops/sec)
|
|
File bar5 digest = 4b48829714d20a4e73a0cf1565270076
|
|
Creating file bar6
|
|
wrote 500/500 bytes at offset 0
|
|
XXX Bytes, X ops; XX:XX:XX.X (XXX YYY/sec and XXX ops/sec)
|
|
Cloning foo1 into bar6
|
|
linked 131072/131072 bytes at offset 0
|
|
XXX Bytes, X ops; XX:XX:XX.X (XXX YYY/sec and XXX ops/sec)
|
|
File bar6 digest = 4b48829714d20a4e73a0cf1565270076
|
|
File digests after mounting again the filesystem:
|
|
File bar1 digest = e9d03fb5fff30baf3c709f2384dfde67
|
|
File bar2 digest = 85678cf32ed48f92ca42ad06d0b63f2a
|
|
File bar3 digest = 85678cf32ed48f92ca42ad06d0b63f2a
|
|
File bar4 digest = 4b48829714d20a4e73a0cf1565270076
|
|
File bar5 digest = 4b48829714d20a4e73a0cf1565270076
|
|
File bar6 digest = 4b48829714d20a4e73a0cf1565270076
|
|
|
|
Testing with -o nodatacow
|
|
|
|
Creating file foo1
|
|
wrote 4096/4096 bytes at offset 0
|
|
XXX Bytes, X ops; XX:XX:XX.X (XXX YYY/sec and XXX ops/sec)
|
|
wrote 126976/126976 bytes at offset 4096
|
|
XXX Bytes, X ops; XX:XX:XX.X (XXX YYY/sec and XXX ops/sec)
|
|
Creating file bar1
|
|
wrote 131072/131072 bytes at offset 0
|
|
XXX Bytes, X ops; XX:XX:XX.X (XXX YYY/sec and XXX ops/sec)
|
|
Cloning foo1 into the end of bar1
|
|
linked 131072/131072 bytes at offset 131072
|
|
XXX Bytes, X ops; XX:XX:XX.X (XXX YYY/sec and XXX ops/sec)
|
|
File bar1 digest = e9d03fb5fff30baf3c709f2384dfde67
|
|
Creating file foo2
|
|
wrote 1000/1000 bytes at offset 0
|
|
XXX Bytes, X ops; XX:XX:XX.X (XXX YYY/sec and XXX ops/sec)
|
|
wrote 61440/61440 bytes at offset 4096
|
|
XXX Bytes, X ops; XX:XX:XX.X (XXX YYY/sec and XXX ops/sec)
|
|
Creating file bar2
|
|
wrote 65536/65536 bytes at offset 0
|
|
XXX Bytes, X ops; XX:XX:XX.X (XXX YYY/sec and XXX ops/sec)
|
|
Cloning foo2 into the end of bar2
|
|
linked 65536/65536 bytes at offset 65536
|
|
XXX Bytes, X ops; XX:XX:XX.X (XXX YYY/sec and XXX ops/sec)
|
|
File bar2 digest = 85678cf32ed48f92ca42ad06d0b63f2a
|
|
Creating file bar3
|
|
wrote 131072/131072 bytes at offset 0
|
|
XXX Bytes, X ops; XX:XX:XX.X (XXX YYY/sec and XXX ops/sec)
|
|
Cloning foo2 into the middle of bar3
|
|
linked 65536/65536 bytes at offset 65536
|
|
XXX Bytes, X ops; XX:XX:XX.X (XXX YYY/sec and XXX ops/sec)
|
|
File bar3 digest = 85678cf32ed48f92ca42ad06d0b63f2a
|
|
Creating file bar4
|
|
wrote 65536/65536 bytes at offset 65536
|
|
XXX Bytes, X ops; XX:XX:XX.X (XXX YYY/sec and XXX ops/sec)
|
|
Cloning foo1 into bar4
|
|
linked 131072/131072 bytes at offset 0
|
|
XXX Bytes, X ops; XX:XX:XX.X (XXX YYY/sec and XXX ops/sec)
|
|
File bar4 digest = 4b48829714d20a4e73a0cf1565270076
|
|
Creating file bar5
|
|
Cloning foo1 into bar5
|
|
linked 131072/131072 bytes at offset 0
|
|
XXX Bytes, X ops; XX:XX:XX.X (XXX YYY/sec and XXX ops/sec)
|
|
File bar5 digest = 4b48829714d20a4e73a0cf1565270076
|
|
Creating file bar6
|
|
wrote 500/500 bytes at offset 0
|
|
XXX Bytes, X ops; XX:XX:XX.X (XXX YYY/sec and XXX ops/sec)
|
|
Cloning foo1 into bar6
|
|
linked 131072/131072 bytes at offset 0
|
|
XXX Bytes, X ops; XX:XX:XX.X (XXX YYY/sec and XXX ops/sec)
|
|
File bar6 digest = 4b48829714d20a4e73a0cf1565270076
|
|
File digests after mounting again the filesystem:
|
|
File bar1 digest = e9d03fb5fff30baf3c709f2384dfde67
|
|
File bar2 digest = 85678cf32ed48f92ca42ad06d0b63f2a
|
|
File bar3 digest = 85678cf32ed48f92ca42ad06d0b63f2a
|
|
File bar4 digest = 4b48829714d20a4e73a0cf1565270076
|
|
File bar5 digest = 4b48829714d20a4e73a0cf1565270076
|
|
File bar6 digest = 4b48829714d20a4e73a0cf1565270076
|
|
|
|
Testing with -O no-holes
|
|
|
|
Creating file foo1
|
|
wrote 4096/4096 bytes at offset 0
|
|
XXX Bytes, X ops; XX:XX:XX.X (XXX YYY/sec and XXX ops/sec)
|
|
wrote 126976/126976 bytes at offset 4096
|
|
XXX Bytes, X ops; XX:XX:XX.X (XXX YYY/sec and XXX ops/sec)
|
|
Creating file bar1
|
|
wrote 131072/131072 bytes at offset 0
|
|
XXX Bytes, X ops; XX:XX:XX.X (XXX YYY/sec and XXX ops/sec)
|
|
Cloning foo1 into the end of bar1
|
|
linked 131072/131072 bytes at offset 131072
|
|
XXX Bytes, X ops; XX:XX:XX.X (XXX YYY/sec and XXX ops/sec)
|
|
File bar1 digest = e9d03fb5fff30baf3c709f2384dfde67
|
|
Creating file foo2
|
|
wrote 1000/1000 bytes at offset 0
|
|
XXX Bytes, X ops; XX:XX:XX.X (XXX YYY/sec and XXX ops/sec)
|
|
wrote 61440/61440 bytes at offset 4096
|
|
XXX Bytes, X ops; XX:XX:XX.X (XXX YYY/sec and XXX ops/sec)
|
|
Creating file bar2
|
|
wrote 65536/65536 bytes at offset 0
|
|
XXX Bytes, X ops; XX:XX:XX.X (XXX YYY/sec and XXX ops/sec)
|
|
Cloning foo2 into the end of bar2
|
|
linked 65536/65536 bytes at offset 65536
|
|
XXX Bytes, X ops; XX:XX:XX.X (XXX YYY/sec and XXX ops/sec)
|
|
File bar2 digest = 85678cf32ed48f92ca42ad06d0b63f2a
|
|
Creating file bar3
|
|
wrote 131072/131072 bytes at offset 0
|
|
XXX Bytes, X ops; XX:XX:XX.X (XXX YYY/sec and XXX ops/sec)
|
|
Cloning foo2 into the middle of bar3
|
|
linked 65536/65536 bytes at offset 65536
|
|
XXX Bytes, X ops; XX:XX:XX.X (XXX YYY/sec and XXX ops/sec)
|
|
File bar3 digest = 85678cf32ed48f92ca42ad06d0b63f2a
|
|
Creating file bar4
|
|
wrote 65536/65536 bytes at offset 65536
|
|
XXX Bytes, X ops; XX:XX:XX.X (XXX YYY/sec and XXX ops/sec)
|
|
Cloning foo1 into bar4
|
|
linked 131072/131072 bytes at offset 0
|
|
XXX Bytes, X ops; XX:XX:XX.X (XXX YYY/sec and XXX ops/sec)
|
|
File bar4 digest = 4b48829714d20a4e73a0cf1565270076
|
|
Creating file bar5
|
|
Cloning foo1 into bar5
|
|
linked 131072/131072 bytes at offset 0
|
|
XXX Bytes, X ops; XX:XX:XX.X (XXX YYY/sec and XXX ops/sec)
|
|
File bar5 digest = 4b48829714d20a4e73a0cf1565270076
|
|
Creating file bar6
|
|
wrote 500/500 bytes at offset 0
|
|
XXX Bytes, X ops; XX:XX:XX.X (XXX YYY/sec and XXX ops/sec)
|
|
Cloning foo1 into bar6
|
|
linked 131072/131072 bytes at offset 0
|
|
XXX Bytes, X ops; XX:XX:XX.X (XXX YYY/sec and XXX ops/sec)
|
|
File bar6 digest = 4b48829714d20a4e73a0cf1565270076
|
|
File digests after mounting again the filesystem:
|
|
File bar1 digest = e9d03fb5fff30baf3c709f2384dfde67
|
|
File bar2 digest = 85678cf32ed48f92ca42ad06d0b63f2a
|
|
File bar3 digest = 85678cf32ed48f92ca42ad06d0b63f2a
|
|
File bar4 digest = 4b48829714d20a4e73a0cf1565270076
|
|
File bar5 digest = 4b48829714d20a4e73a0cf1565270076
|
|
File bar6 digest = 4b48829714d20a4e73a0cf1565270076
|