Release fstests v2024.09.08
btrfs/319: make the test work when compression is used
Currently btrfs/319 assumes there is no compression and that the files
get a single extent (1 fiemap line) with a size of 1048581 bytes. However
when testing with compression, for example by passing "-o compress" to
MOUNT_OPTIONS environment variable, we get several extents and two lines
of fiemap output, which makes the test fail since it hardcodes the fiemap
output:
$ MOUNT_OPTIONS="-o compress" ./check btrfs/319
FSTYP -- btrfs
PLATFORM -- Linux/x86_64 debian0 6.11.0-rc6-btrfs-next-173+ #1 SMP PREEMPT_DYNAMIC Tue Sep 3 17:40:24 WEST 2024
MKFS_OPTIONS -- /dev/sdc
MOUNT_OPTIONS -- -o compress /dev/sdc /home/fdmanana/btrfs-tests/scratch_1
btrfs/319 1s ... - output mismatch (see /home/fdmanana/git/hub/xfstests/results//btrfs/319.out.bad)
--- tests/btrfs/319.out 2024-08-12 14:16:55.653383284 +0100
+++ /home/fdmanana/git/hub/xfstests/results//btrfs/319.out.bad 2024-09-05 15:24:53.323076548 +0100
@@ -6,11 +6,13 @@
e61178ee0288ebe3fa36a3c975b02c94 SCRATCH_MNT/snap/foo
e61178ee0288ebe3fa36a3c975b02c94 SCRATCH_MNT/snap/bar
File bar fiemap in the original filesystem:
-0: [0..2055]: shared|last
+0: [0..2047]: shared
+1: [2048..2055]: shared|last
Creating a new filesystem to receive the send stream...
...
(Run 'diff -u /home/fdmanana/git/hub/xfstests/tests/btrfs/319.out /home/fdmanana/git/hub/xfstests/results//btrfs/319.out.bad' to see the entire diff)
HINT: You _MAY_ be missing kernel fix:
46a6e10a1ab1 btrfs: send: allow cloning non-aligned extent if it ends at i_size
Ran: btrfs/319
Failures: btrfs/319
Failed 1 of 1 tests
So change the test to not rely on the fiemap output in its golden output
and instead just check if all the extents reported by fiemap have the
shared flag set (failing if there are any without the shared flag).
Signed-off-by: Filipe Manana <fdmanana@suse.com>
Reviewed-by: Qu Wenruo <wqu@suse.com>
Reviewed-by: Anand Jain <anand.jain@oracle.com>
Signed-off-by: Zorro Lang <zlang@kernel.org>
2 files changed