filter: Introduce filter to filter out offset for xfs_io
authorQu Wenruo <wqu@suse.com>
Thu, 11 Jan 2018 08:01:11 +0000 (16:01 +0800)
committerEryu Guan <eguan@redhat.com>
Fri, 12 Jan 2018 03:40:39 +0000 (11:40 +0800)
Some test cases (AFAIK, btrfs RAID recovery test cases) read out
certain location to verify its data.

Such read is mostly OK, but the golden output contains the on-disk
offset, which can differ due to underlying chunk change.  (This time
is mkfs chunk layout change for btrfs)

So introduce macro _filter_xfs_io_offset to filter out the offset part
wrote 65536/65536 bytes at offset 136708096
                       ^^^^^^^^^^^^^^^^^^^^
And offset from "pread -v"
08260000:  aa aa aa aa aa aa aa aa aa aa aa aa aa aa aa aa  ................
^^^^^^^^^

Only btrfs/14[0-3] are affected.

Reported-by: Nikolay Borisov <nborisov@suse.com>
Signed-off-by: Qu Wenruo <wqu@suse.com>
Reviewed-by: Eryu Guan <eguan@redhat.com>
Signed-off-by: Eryu Guan <eguan@redhat.com>
common/filter
tests/btrfs/140
tests/btrfs/140.out
tests/btrfs/141
tests/btrfs/141.out
tests/btrfs/142
tests/btrfs/142.out
tests/btrfs/143
tests/btrfs/143.out

index 9c33efacea6c856c150e0f5d9703243cc2ec393d..8e1fdb4e501d960ff26b7b3a261ad273e7778db6 100644 (file)
@@ -226,6 +226,15 @@ _filter_xfs_io()
     sed -e "s/[0-9/.]* [GMKiBbytes]*, [0-9]* ops\; [0-9/:. sec]* ([infa0-9/.]* [EPGMKiBbytes]*\/sec and [infa0-9/.]* ops\/sec)/XXX Bytes, X ops\; XX:XX:XX.X (XXX YYY\/sec and XXX ops\/sec)/"
 }
 
+# Also filter out the offset part of xfs_io output
+# Some test cases may be affected by underlaying extent/chunk layout change,
+# so wipe out this part to avoid golden output difference
+_filter_xfs_io_offset()
+{
+    # filter out " at offset XXX" and offset of "pread -v"
+    _filter_xfs_io | sed -e "s/ at offset [0-9]*$//" -e "s/^[0-9a-f]\+:/XXXXXXXX:/"
+}
+
 # stderr filter for xfs_io to handle change of error output format (e.g.
 # pwrite64 -> pwrite).
 _filter_xfs_io_error()
@@ -277,7 +286,6 @@ _filter_xfs_io_pages_modified()
        _filter_xfs_io_units_modified "Page" $PAGE_SIZE
 }
 
-
 _filter_test_dir()
 {
        # TEST_DEV may be a prefix of TEST_DIR (e.g. /mnt, /mnt/ovl-mnt)
index 985327a09d967d48075bfbe85b2534b6abfc219f..cf5751e544a750d28146f79cc490b004fd9c8081 100755 (executable)
@@ -78,7 +78,8 @@ _scratch_pool_mkfs $mkfs_opts >>$seqres.full 2>&1
 # chunk
 _scratch_mount -o nospace_cache
 
-$XFS_IO_PROG -f -d -c "pwrite -S 0xaa -b 128K 0 128K" "$SCRATCH_MNT/foobar" | _filter_xfs_io
+$XFS_IO_PROG -f -d -c "pwrite -S 0xaa -b 128K 0 128K" "$SCRATCH_MNT/foobar" |\
+       _filter_xfs_io_offset
 
 # step 2, corrupt the first 64k of one copy (on SCRATCH_DEV which is the first
 # one in $SCRATCH_DEV_POOL
@@ -89,7 +90,8 @@ logical_in_btrfs=`${FILEFRAG_PROG} -v $SCRATCH_MNT/foobar | _filter_filefrag | c
 physical_on_scratch=`get_physical ${logical_in_btrfs}`
 
 _scratch_unmount
-$XFS_IO_PROG -d -c "pwrite -S 0xbb -b 64K $physical_on_scratch 64K" $SCRATCH_DEV | _filter_xfs_io
+$XFS_IO_PROG -d -c "pwrite -S 0xbb -b 64K $physical_on_scratch 64K" $SCRATCH_DEV |\
+       _filter_xfs_io_offset
 
 _scratch_mount
 
@@ -109,7 +111,8 @@ done
 _scratch_unmount
 
 # check if the repair works
-$XFS_IO_PROG -d -c "pread -v -b 512 $physical_on_scratch 512" $SCRATCH_DEV | _filter_xfs_io
+$XFS_IO_PROG -d -c "pread -v -b 512 $physical_on_scratch 512" $SCRATCH_DEV |\
+       _filter_xfs_io_offset
 
 _scratch_dev_pool_put
 # success, all done
index c8565f539862bbb50d71b926c7ea37e374836a30..f3fdf1742384715617de2e364dd304a8a19e4688 100644 (file)
@@ -1,39 +1,39 @@
 QA output created by 140
-wrote 131072/131072 bytes at offset 0
+wrote 131072/131072 bytes
 XXX Bytes, X ops; XX:XX:XX.X (XXX YYY/sec and XXX ops/sec)
-wrote 65536/65536 bytes at offset 136708096
+wrote 65536/65536 bytes
 XXX Bytes, X ops; XX:XX:XX.X (XXX YYY/sec and XXX ops/sec)
-08260000:  aa aa aa aa aa aa aa aa aa aa aa aa aa aa aa aa  ................
-08260010:  aa aa aa aa aa aa aa aa aa aa aa aa aa aa aa aa  ................
-08260020:  aa aa aa aa aa aa aa aa aa aa aa aa aa aa aa aa  ................
-08260030:  aa aa aa aa aa aa aa aa aa aa aa aa aa aa aa aa  ................
-08260040:  aa aa aa aa aa aa aa aa aa aa aa aa aa aa aa aa  ................
-08260050:  aa aa aa aa aa aa aa aa aa aa aa aa aa aa aa aa  ................
-08260060:  aa aa aa aa aa aa aa aa aa aa aa aa aa aa aa aa  ................
-08260070:  aa aa aa aa aa aa aa aa aa aa aa aa aa aa aa aa  ................
-08260080:  aa aa aa aa aa aa aa aa aa aa aa aa aa aa aa aa  ................
-08260090:  aa aa aa aa aa aa aa aa aa aa aa aa aa aa aa aa  ................
-082600a0:  aa aa aa aa aa aa aa aa aa aa aa aa aa aa aa aa  ................
-082600b0:  aa aa aa aa aa aa aa aa aa aa aa aa aa aa aa aa  ................
-082600c0:  aa aa aa aa aa aa aa aa aa aa aa aa aa aa aa aa  ................
-082600d0:  aa aa aa aa aa aa aa aa aa aa aa aa aa aa aa aa  ................
-082600e0:  aa aa aa aa aa aa aa aa aa aa aa aa aa aa aa aa  ................
-082600f0:  aa aa aa aa aa aa aa aa aa aa aa aa aa aa aa aa  ................
-08260100:  aa aa aa aa aa aa aa aa aa aa aa aa aa aa aa aa  ................
-08260110:  aa aa aa aa aa aa aa aa aa aa aa aa aa aa aa aa  ................
-08260120:  aa aa aa aa aa aa aa aa aa aa aa aa aa aa aa aa  ................
-08260130:  aa aa aa aa aa aa aa aa aa aa aa aa aa aa aa aa  ................
-08260140:  aa aa aa aa aa aa aa aa aa aa aa aa aa aa aa aa  ................
-08260150:  aa aa aa aa aa aa aa aa aa aa aa aa aa aa aa aa  ................
-08260160:  aa aa aa aa aa aa aa aa aa aa aa aa aa aa aa aa  ................
-08260170:  aa aa aa aa aa aa aa aa aa aa aa aa aa aa aa aa  ................
-08260180:  aa aa aa aa aa aa aa aa aa aa aa aa aa aa aa aa  ................
-08260190:  aa aa aa aa aa aa aa aa aa aa aa aa aa aa aa aa  ................
-082601a0:  aa aa aa aa aa aa aa aa aa aa aa aa aa aa aa aa  ................
-082601b0:  aa aa aa aa aa aa aa aa aa aa aa aa aa aa aa aa  ................
-082601c0:  aa aa aa aa aa aa aa aa aa aa aa aa aa aa aa aa  ................
-082601d0:  aa aa aa aa aa aa aa aa aa aa aa aa aa aa aa aa  ................
-082601e0:  aa aa aa aa aa aa aa aa aa aa aa aa aa aa aa aa  ................
-082601f0:  aa aa aa aa aa aa aa aa aa aa aa aa aa aa aa aa  ................
-read 512/512 bytes at offset 136708096
+XXXXXXXX:  aa aa aa aa aa aa aa aa aa aa aa aa aa aa aa aa  ................
+XXXXXXXX:  aa aa aa aa aa aa aa aa aa aa aa aa aa aa aa aa  ................
+XXXXXXXX:  aa aa aa aa aa aa aa aa aa aa aa aa aa aa aa aa  ................
+XXXXXXXX:  aa aa aa aa aa aa aa aa aa aa aa aa aa aa aa aa  ................
+XXXXXXXX:  aa aa aa aa aa aa aa aa aa aa aa aa aa aa aa aa  ................
+XXXXXXXX:  aa aa aa aa aa aa aa aa aa aa aa aa aa aa aa aa  ................
+XXXXXXXX:  aa aa aa aa aa aa aa aa aa aa aa aa aa aa aa aa  ................
+XXXXXXXX:  aa aa aa aa aa aa aa aa aa aa aa aa aa aa aa aa  ................
+XXXXXXXX:  aa aa aa aa aa aa aa aa aa aa aa aa aa aa aa aa  ................
+XXXXXXXX:  aa aa aa aa aa aa aa aa aa aa aa aa aa aa aa aa  ................
+XXXXXXXX:  aa aa aa aa aa aa aa aa aa aa aa aa aa aa aa aa  ................
+XXXXXXXX:  aa aa aa aa aa aa aa aa aa aa aa aa aa aa aa aa  ................
+XXXXXXXX:  aa aa aa aa aa aa aa aa aa aa aa aa aa aa aa aa  ................
+XXXXXXXX:  aa aa aa aa aa aa aa aa aa aa aa aa aa aa aa aa  ................
+XXXXXXXX:  aa aa aa aa aa aa aa aa aa aa aa aa aa aa aa aa  ................
+XXXXXXXX:  aa aa aa aa aa aa aa aa aa aa aa aa aa aa aa aa  ................
+XXXXXXXX:  aa aa aa aa aa aa aa aa aa aa aa aa aa aa aa aa  ................
+XXXXXXXX:  aa aa aa aa aa aa aa aa aa aa aa aa aa aa aa aa  ................
+XXXXXXXX:  aa aa aa aa aa aa aa aa aa aa aa aa aa aa aa aa  ................
+XXXXXXXX:  aa aa aa aa aa aa aa aa aa aa aa aa aa aa aa aa  ................
+XXXXXXXX:  aa aa aa aa aa aa aa aa aa aa aa aa aa aa aa aa  ................
+XXXXXXXX:  aa aa aa aa aa aa aa aa aa aa aa aa aa aa aa aa  ................
+XXXXXXXX:  aa aa aa aa aa aa aa aa aa aa aa aa aa aa aa aa  ................
+XXXXXXXX:  aa aa aa aa aa aa aa aa aa aa aa aa aa aa aa aa  ................
+XXXXXXXX:  aa aa aa aa aa aa aa aa aa aa aa aa aa aa aa aa  ................
+XXXXXXXX:  aa aa aa aa aa aa aa aa aa aa aa aa aa aa aa aa  ................
+XXXXXXXX:  aa aa aa aa aa aa aa aa aa aa aa aa aa aa aa aa  ................
+XXXXXXXX:  aa aa aa aa aa aa aa aa aa aa aa aa aa aa aa aa  ................
+XXXXXXXX:  aa aa aa aa aa aa aa aa aa aa aa aa aa aa aa aa  ................
+XXXXXXXX:  aa aa aa aa aa aa aa aa aa aa aa aa aa aa aa aa  ................
+XXXXXXXX:  aa aa aa aa aa aa aa aa aa aa aa aa aa aa aa aa  ................
+XXXXXXXX:  aa aa aa aa aa aa aa aa aa aa aa aa aa aa aa aa  ................
+read 512/512 bytes
 XXX Bytes, X ops; XX:XX:XX.X (XXX YYY/sec and XXX ops/sec)
index 709bb0af096f932c7d11d5c0ad0a8699fe3a754c..909a2ca322cf52d89aba22355fd1225d6c4f8bdf 100755 (executable)
@@ -78,7 +78,8 @@ _scratch_pool_mkfs $mkfs_opts >>$seqres.full 2>&1
 # chunk
 _scratch_mount -o nospace_cache
 
-$XFS_IO_PROG -f -d -c "pwrite -S 0xaa -b 128K 0 128K" "$SCRATCH_MNT/foobar" | _filter_xfs_io
+$XFS_IO_PROG -f -d -c "pwrite -S 0xaa -b 128K 0 128K" "$SCRATCH_MNT/foobar" |\
+       _filter_xfs_io_offset
 
 # step 2, corrupt the first 64k of one copy (on SCRATCH_DEV which is the first
 # one in $SCRATCH_DEV_POOL
@@ -89,7 +90,8 @@ logical_in_btrfs=`${FILEFRAG_PROG} -v $SCRATCH_MNT/foobar | _filter_filefrag | c
 physical_on_scratch=`get_physical ${logical_in_btrfs}`
 
 _scratch_unmount
-$XFS_IO_PROG -d -c "pwrite -S 0xbb -b 64K $physical_on_scratch 64K" $SCRATCH_DEV | _filter_xfs_io
+$XFS_IO_PROG -d -c "pwrite -S 0xbb -b 64K $physical_on_scratch 64K" $SCRATCH_DEV |\
+       _filter_xfs_io_offset
 
 _scratch_mount
 
@@ -110,7 +112,8 @@ done
 _scratch_unmount
 
 # check if the repair works
-$XFS_IO_PROG -c "pread -v -b 512 $physical_on_scratch 512" $SCRATCH_DEV | _filter_xfs_io
+$XFS_IO_PROG -c "pread -v -b 512 $physical_on_scratch 512" $SCRATCH_DEV |\
+       _filter_xfs_io_offset
 
 _scratch_dev_pool_put
 # success, all done
index 2e08fc22dd7faab4eae9e556dde4883ae4150aa0..116f98a290d7e3cf23b7d5b034eb85f5a067150f 100644 (file)
@@ -1,39 +1,39 @@
 QA output created by 141
-wrote 131072/131072 bytes at offset 0
+wrote 131072/131072 bytes
 XXX Bytes, X ops; XX:XX:XX.X (XXX YYY/sec and XXX ops/sec)
-wrote 65536/65536 bytes at offset 136708096
+wrote 65536/65536 bytes
 XXX Bytes, X ops; XX:XX:XX.X (XXX YYY/sec and XXX ops/sec)
-08260000:  aa aa aa aa aa aa aa aa aa aa aa aa aa aa aa aa  ................
-08260010:  aa aa aa aa aa aa aa aa aa aa aa aa aa aa aa aa  ................
-08260020:  aa aa aa aa aa aa aa aa aa aa aa aa aa aa aa aa  ................
-08260030:  aa aa aa aa aa aa aa aa aa aa aa aa aa aa aa aa  ................
-08260040:  aa aa aa aa aa aa aa aa aa aa aa aa aa aa aa aa  ................
-08260050:  aa aa aa aa aa aa aa aa aa aa aa aa aa aa aa aa  ................
-08260060:  aa aa aa aa aa aa aa aa aa aa aa aa aa aa aa aa  ................
-08260070:  aa aa aa aa aa aa aa aa aa aa aa aa aa aa aa aa  ................
-08260080:  aa aa aa aa aa aa aa aa aa aa aa aa aa aa aa aa  ................
-08260090:  aa aa aa aa aa aa aa aa aa aa aa aa aa aa aa aa  ................
-082600a0:  aa aa aa aa aa aa aa aa aa aa aa aa aa aa aa aa  ................
-082600b0:  aa aa aa aa aa aa aa aa aa aa aa aa aa aa aa aa  ................
-082600c0:  aa aa aa aa aa aa aa aa aa aa aa aa aa aa aa aa  ................
-082600d0:  aa aa aa aa aa aa aa aa aa aa aa aa aa aa aa aa  ................
-082600e0:  aa aa aa aa aa aa aa aa aa aa aa aa aa aa aa aa  ................
-082600f0:  aa aa aa aa aa aa aa aa aa aa aa aa aa aa aa aa  ................
-08260100:  aa aa aa aa aa aa aa aa aa aa aa aa aa aa aa aa  ................
-08260110:  aa aa aa aa aa aa aa aa aa aa aa aa aa aa aa aa  ................
-08260120:  aa aa aa aa aa aa aa aa aa aa aa aa aa aa aa aa  ................
-08260130:  aa aa aa aa aa aa aa aa aa aa aa aa aa aa aa aa  ................
-08260140:  aa aa aa aa aa aa aa aa aa aa aa aa aa aa aa aa  ................
-08260150:  aa aa aa aa aa aa aa aa aa aa aa aa aa aa aa aa  ................
-08260160:  aa aa aa aa aa aa aa aa aa aa aa aa aa aa aa aa  ................
-08260170:  aa aa aa aa aa aa aa aa aa aa aa aa aa aa aa aa  ................
-08260180:  aa aa aa aa aa aa aa aa aa aa aa aa aa aa aa aa  ................
-08260190:  aa aa aa aa aa aa aa aa aa aa aa aa aa aa aa aa  ................
-082601a0:  aa aa aa aa aa aa aa aa aa aa aa aa aa aa aa aa  ................
-082601b0:  aa aa aa aa aa aa aa aa aa aa aa aa aa aa aa aa  ................
-082601c0:  aa aa aa aa aa aa aa aa aa aa aa aa aa aa aa aa  ................
-082601d0:  aa aa aa aa aa aa aa aa aa aa aa aa aa aa aa aa  ................
-082601e0:  aa aa aa aa aa aa aa aa aa aa aa aa aa aa aa aa  ................
-082601f0:  aa aa aa aa aa aa aa aa aa aa aa aa aa aa aa aa  ................
-read 512/512 bytes at offset 136708096
+XXXXXXXX:  aa aa aa aa aa aa aa aa aa aa aa aa aa aa aa aa  ................
+XXXXXXXX:  aa aa aa aa aa aa aa aa aa aa aa aa aa aa aa aa  ................
+XXXXXXXX:  aa aa aa aa aa aa aa aa aa aa aa aa aa aa aa aa  ................
+XXXXXXXX:  aa aa aa aa aa aa aa aa aa aa aa aa aa aa aa aa  ................
+XXXXXXXX:  aa aa aa aa aa aa aa aa aa aa aa aa aa aa aa aa  ................
+XXXXXXXX:  aa aa aa aa aa aa aa aa aa aa aa aa aa aa aa aa  ................
+XXXXXXXX:  aa aa aa aa aa aa aa aa aa aa aa aa aa aa aa aa  ................
+XXXXXXXX:  aa aa aa aa aa aa aa aa aa aa aa aa aa aa aa aa  ................
+XXXXXXXX:  aa aa aa aa aa aa aa aa aa aa aa aa aa aa aa aa  ................
+XXXXXXXX:  aa aa aa aa aa aa aa aa aa aa aa aa aa aa aa aa  ................
+XXXXXXXX:  aa aa aa aa aa aa aa aa aa aa aa aa aa aa aa aa  ................
+XXXXXXXX:  aa aa aa aa aa aa aa aa aa aa aa aa aa aa aa aa  ................
+XXXXXXXX:  aa aa aa aa aa aa aa aa aa aa aa aa aa aa aa aa  ................
+XXXXXXXX:  aa aa aa aa aa aa aa aa aa aa aa aa aa aa aa aa  ................
+XXXXXXXX:  aa aa aa aa aa aa aa aa aa aa aa aa aa aa aa aa  ................
+XXXXXXXX:  aa aa aa aa aa aa aa aa aa aa aa aa aa aa aa aa  ................
+XXXXXXXX:  aa aa aa aa aa aa aa aa aa aa aa aa aa aa aa aa  ................
+XXXXXXXX:  aa aa aa aa aa aa aa aa aa aa aa aa aa aa aa aa  ................
+XXXXXXXX:  aa aa aa aa aa aa aa aa aa aa aa aa aa aa aa aa  ................
+XXXXXXXX:  aa aa aa aa aa aa aa aa aa aa aa aa aa aa aa aa  ................
+XXXXXXXX:  aa aa aa aa aa aa aa aa aa aa aa aa aa aa aa aa  ................
+XXXXXXXX:  aa aa aa aa aa aa aa aa aa aa aa aa aa aa aa aa  ................
+XXXXXXXX:  aa aa aa aa aa aa aa aa aa aa aa aa aa aa aa aa  ................
+XXXXXXXX:  aa aa aa aa aa aa aa aa aa aa aa aa aa aa aa aa  ................
+XXXXXXXX:  aa aa aa aa aa aa aa aa aa aa aa aa aa aa aa aa  ................
+XXXXXXXX:  aa aa aa aa aa aa aa aa aa aa aa aa aa aa aa aa  ................
+XXXXXXXX:  aa aa aa aa aa aa aa aa aa aa aa aa aa aa aa aa  ................
+XXXXXXXX:  aa aa aa aa aa aa aa aa aa aa aa aa aa aa aa aa  ................
+XXXXXXXX:  aa aa aa aa aa aa aa aa aa aa aa aa aa aa aa aa  ................
+XXXXXXXX:  aa aa aa aa aa aa aa aa aa aa aa aa aa aa aa aa  ................
+XXXXXXXX:  aa aa aa aa aa aa aa aa aa aa aa aa aa aa aa aa  ................
+XXXXXXXX:  aa aa aa aa aa aa aa aa aa aa aa aa aa aa aa aa  ................
+read 512/512 bytes
 XXX Bytes, X ops; XX:XX:XX.X (XXX YYY/sec and XXX ops/sec)
index 5bd8b728c33bbbf25b26688019bf3e68f6bd83c1..1a6ebb62d3e2b4e96d307066c3553e8b94265816 100755 (executable)
@@ -99,7 +99,8 @@ _scratch_pool_mkfs $mkfs_opts >>$seqres.full 2>&1
 # chunk
 _scratch_mount -o nospace_cache,nodatasum
 
-$XFS_IO_PROG -f -d -c "pwrite -S 0xaa -b 128K 0 128K" "$SCRATCH_MNT/foobar" | _filter_xfs_io
+$XFS_IO_PROG -f -d -c "pwrite -S 0xaa -b 128K 0 128K" "$SCRATCH_MNT/foobar" |\
+       _filter_xfs_io_offset
 
 # step 2, corrupt the first 64k of one copy (on SCRATCH_DEV which is the first
 # one in $SCRATCH_DEV_POOL
@@ -110,7 +111,8 @@ logical_in_btrfs=`${FILEFRAG_PROG} -v $SCRATCH_MNT/foobar | _filter_filefrag | c
 physical_on_scratch=`get_physical ${logical_in_btrfs}`
 
 _scratch_unmount
-$XFS_IO_PROG -d -c "pwrite -S 0xbb -b 64K $physical_on_scratch 64K" $SCRATCH_DEV | _filter_xfs_io
+$XFS_IO_PROG -d -c "pwrite -S 0xbb -b 64K $physical_on_scratch 64K" $SCRATCH_DEV |\
+       _filter_xfs_io_offset
 
 _scratch_mount -o nospace_cache
 
@@ -135,7 +137,8 @@ stop_fail
 _scratch_unmount
 
 # check if the repair works
-$XFS_IO_PROG -c "pread -v -b 512 $physical_on_scratch 512" $SCRATCH_DEV | _filter_xfs_io
+$XFS_IO_PROG -c "pread -v -b 512 $physical_on_scratch 512" $SCRATCH_DEV |\
+       _filter_xfs_io_offset
 
 _scratch_dev_pool_put
 # success, all done
index d8be7fbfd0b42e6d6b1db655468e0afe7357c78e..0f32ffbed69d704143c622c248e3be48aa8fe160 100644 (file)
@@ -1,39 +1,39 @@
 QA output created by 142
-wrote 131072/131072 bytes at offset 0
+wrote 131072/131072 bytes
 XXX Bytes, X ops; XX:XX:XX.X (XXX YYY/sec and XXX ops/sec)
-wrote 65536/65536 bytes at offset 136708096
+wrote 65536/65536 bytes
 XXX Bytes, X ops; XX:XX:XX.X (XXX YYY/sec and XXX ops/sec)
-08260000:  aa aa aa aa aa aa aa aa aa aa aa aa aa aa aa aa  ................
-08260010:  aa aa aa aa aa aa aa aa aa aa aa aa aa aa aa aa  ................
-08260020:  aa aa aa aa aa aa aa aa aa aa aa aa aa aa aa aa  ................
-08260030:  aa aa aa aa aa aa aa aa aa aa aa aa aa aa aa aa  ................
-08260040:  aa aa aa aa aa aa aa aa aa aa aa aa aa aa aa aa  ................
-08260050:  aa aa aa aa aa aa aa aa aa aa aa aa aa aa aa aa  ................
-08260060:  aa aa aa aa aa aa aa aa aa aa aa aa aa aa aa aa  ................
-08260070:  aa aa aa aa aa aa aa aa aa aa aa aa aa aa aa aa  ................
-08260080:  aa aa aa aa aa aa aa aa aa aa aa aa aa aa aa aa  ................
-08260090:  aa aa aa aa aa aa aa aa aa aa aa aa aa aa aa aa  ................
-082600a0:  aa aa aa aa aa aa aa aa aa aa aa aa aa aa aa aa  ................
-082600b0:  aa aa aa aa aa aa aa aa aa aa aa aa aa aa aa aa  ................
-082600c0:  aa aa aa aa aa aa aa aa aa aa aa aa aa aa aa aa  ................
-082600d0:  aa aa aa aa aa aa aa aa aa aa aa aa aa aa aa aa  ................
-082600e0:  aa aa aa aa aa aa aa aa aa aa aa aa aa aa aa aa  ................
-082600f0:  aa aa aa aa aa aa aa aa aa aa aa aa aa aa aa aa  ................
-08260100:  aa aa aa aa aa aa aa aa aa aa aa aa aa aa aa aa  ................
-08260110:  aa aa aa aa aa aa aa aa aa aa aa aa aa aa aa aa  ................
-08260120:  aa aa aa aa aa aa aa aa aa aa aa aa aa aa aa aa  ................
-08260130:  aa aa aa aa aa aa aa aa aa aa aa aa aa aa aa aa  ................
-08260140:  aa aa aa aa aa aa aa aa aa aa aa aa aa aa aa aa  ................
-08260150:  aa aa aa aa aa aa aa aa aa aa aa aa aa aa aa aa  ................
-08260160:  aa aa aa aa aa aa aa aa aa aa aa aa aa aa aa aa  ................
-08260170:  aa aa aa aa aa aa aa aa aa aa aa aa aa aa aa aa  ................
-08260180:  aa aa aa aa aa aa aa aa aa aa aa aa aa aa aa aa  ................
-08260190:  aa aa aa aa aa aa aa aa aa aa aa aa aa aa aa aa  ................
-082601a0:  aa aa aa aa aa aa aa aa aa aa aa aa aa aa aa aa  ................
-082601b0:  aa aa aa aa aa aa aa aa aa aa aa aa aa aa aa aa  ................
-082601c0:  aa aa aa aa aa aa aa aa aa aa aa aa aa aa aa aa  ................
-082601d0:  aa aa aa aa aa aa aa aa aa aa aa aa aa aa aa aa  ................
-082601e0:  aa aa aa aa aa aa aa aa aa aa aa aa aa aa aa aa  ................
-082601f0:  aa aa aa aa aa aa aa aa aa aa aa aa aa aa aa aa  ................
-read 512/512 bytes at offset 136708096
+XXXXXXXX:  aa aa aa aa aa aa aa aa aa aa aa aa aa aa aa aa  ................
+XXXXXXXX:  aa aa aa aa aa aa aa aa aa aa aa aa aa aa aa aa  ................
+XXXXXXXX:  aa aa aa aa aa aa aa aa aa aa aa aa aa aa aa aa  ................
+XXXXXXXX:  aa aa aa aa aa aa aa aa aa aa aa aa aa aa aa aa  ................
+XXXXXXXX:  aa aa aa aa aa aa aa aa aa aa aa aa aa aa aa aa  ................
+XXXXXXXX:  aa aa aa aa aa aa aa aa aa aa aa aa aa aa aa aa  ................
+XXXXXXXX:  aa aa aa aa aa aa aa aa aa aa aa aa aa aa aa aa  ................
+XXXXXXXX:  aa aa aa aa aa aa aa aa aa aa aa aa aa aa aa aa  ................
+XXXXXXXX:  aa aa aa aa aa aa aa aa aa aa aa aa aa aa aa aa  ................
+XXXXXXXX:  aa aa aa aa aa aa aa aa aa aa aa aa aa aa aa aa  ................
+XXXXXXXX:  aa aa aa aa aa aa aa aa aa aa aa aa aa aa aa aa  ................
+XXXXXXXX:  aa aa aa aa aa aa aa aa aa aa aa aa aa aa aa aa  ................
+XXXXXXXX:  aa aa aa aa aa aa aa aa aa aa aa aa aa aa aa aa  ................
+XXXXXXXX:  aa aa aa aa aa aa aa aa aa aa aa aa aa aa aa aa  ................
+XXXXXXXX:  aa aa aa aa aa aa aa aa aa aa aa aa aa aa aa aa  ................
+XXXXXXXX:  aa aa aa aa aa aa aa aa aa aa aa aa aa aa aa aa  ................
+XXXXXXXX:  aa aa aa aa aa aa aa aa aa aa aa aa aa aa aa aa  ................
+XXXXXXXX:  aa aa aa aa aa aa aa aa aa aa aa aa aa aa aa aa  ................
+XXXXXXXX:  aa aa aa aa aa aa aa aa aa aa aa aa aa aa aa aa  ................
+XXXXXXXX:  aa aa aa aa aa aa aa aa aa aa aa aa aa aa aa aa  ................
+XXXXXXXX:  aa aa aa aa aa aa aa aa aa aa aa aa aa aa aa aa  ................
+XXXXXXXX:  aa aa aa aa aa aa aa aa aa aa aa aa aa aa aa aa  ................
+XXXXXXXX:  aa aa aa aa aa aa aa aa aa aa aa aa aa aa aa aa  ................
+XXXXXXXX:  aa aa aa aa aa aa aa aa aa aa aa aa aa aa aa aa  ................
+XXXXXXXX:  aa aa aa aa aa aa aa aa aa aa aa aa aa aa aa aa  ................
+XXXXXXXX:  aa aa aa aa aa aa aa aa aa aa aa aa aa aa aa aa  ................
+XXXXXXXX:  aa aa aa aa aa aa aa aa aa aa aa aa aa aa aa aa  ................
+XXXXXXXX:  aa aa aa aa aa aa aa aa aa aa aa aa aa aa aa aa  ................
+XXXXXXXX:  aa aa aa aa aa aa aa aa aa aa aa aa aa aa aa aa  ................
+XXXXXXXX:  aa aa aa aa aa aa aa aa aa aa aa aa aa aa aa aa  ................
+XXXXXXXX:  aa aa aa aa aa aa aa aa aa aa aa aa aa aa aa aa  ................
+XXXXXXXX:  aa aa aa aa aa aa aa aa aa aa aa aa aa aa aa aa  ................
+read 512/512 bytes
 XXX Bytes, X ops; XX:XX:XX.X (XXX YYY/sec and XXX ops/sec)
index 3875b6c43ba2c8e8794c0b80637ee91c9db7fb3a..848014e0788b5093f97290f984dfbecd20e27bff 100755 (executable)
@@ -106,7 +106,8 @@ _scratch_pool_mkfs $mkfs_opts >>$seqres.full 2>&1
 # chunk
 _scratch_mount -o nospace_cache,nodatasum
 
-$XFS_IO_PROG -f -d -c "pwrite -S 0xaa -b 128K 0 128K" "$SCRATCH_MNT/foobar" | _filter_xfs_io
+$XFS_IO_PROG -f -d -c "pwrite -S 0xaa -b 128K 0 128K" "$SCRATCH_MNT/foobar" |\
+       _filter_xfs_io_offset
 
 # step 2, corrupt the first 64k of one copy (on SCRATCH_DEV which is the first
 # one in $SCRATCH_DEV_POOL
@@ -117,7 +118,8 @@ logical_in_btrfs=`${FILEFRAG_PROG} -v $SCRATCH_MNT/foobar | _filter_filefrag | c
 physical_on_scratch=`get_physical ${logical_in_btrfs}`
 
 _scratch_unmount
-$XFS_IO_PROG -d -c "pwrite -S 0xbb -b 64K $physical_on_scratch 64K" $SCRATCH_DEV | _filter_xfs_io
+$XFS_IO_PROG -d -c "pwrite -S 0xbb -b 64K $physical_on_scratch 64K" $SCRATCH_DEV |\
+       _filter_xfs_io_offset
 
 _scratch_mount -o nospace_cache
 
@@ -142,7 +144,8 @@ done
 _scratch_unmount
 
 # check if the repair works
-$XFS_IO_PROG -c "pread -v -b 512 $physical_on_scratch 512" $SCRATCH_DEV | _filter_xfs_io
+$XFS_IO_PROG -c "pread -v -b 512 $physical_on_scratch 512" $SCRATCH_DEV |\
+       _filter_xfs_io_offset
 
 _scratch_dev_pool_put
 # success, all done
index 97bf45c5af99d99022ea2d0a5352c93ef365e88f..66afea4ba0a47a1c272f47455fd05aa879f86f5d 100644 (file)
@@ -1,39 +1,39 @@
 QA output created by 143
-wrote 131072/131072 bytes at offset 0
+wrote 131072/131072 bytes
 XXX Bytes, X ops; XX:XX:XX.X (XXX YYY/sec and XXX ops/sec)
-wrote 65536/65536 bytes at offset 136708096
+wrote 65536/65536 bytes
 XXX Bytes, X ops; XX:XX:XX.X (XXX YYY/sec and XXX ops/sec)
-08260000:  aa aa aa aa aa aa aa aa aa aa aa aa aa aa aa aa  ................
-08260010:  aa aa aa aa aa aa aa aa aa aa aa aa aa aa aa aa  ................
-08260020:  aa aa aa aa aa aa aa aa aa aa aa aa aa aa aa aa  ................
-08260030:  aa aa aa aa aa aa aa aa aa aa aa aa aa aa aa aa  ................
-08260040:  aa aa aa aa aa aa aa aa aa aa aa aa aa aa aa aa  ................
-08260050:  aa aa aa aa aa aa aa aa aa aa aa aa aa aa aa aa  ................
-08260060:  aa aa aa aa aa aa aa aa aa aa aa aa aa aa aa aa  ................
-08260070:  aa aa aa aa aa aa aa aa aa aa aa aa aa aa aa aa  ................
-08260080:  aa aa aa aa aa aa aa aa aa aa aa aa aa aa aa aa  ................
-08260090:  aa aa aa aa aa aa aa aa aa aa aa aa aa aa aa aa  ................
-082600a0:  aa aa aa aa aa aa aa aa aa aa aa aa aa aa aa aa  ................
-082600b0:  aa aa aa aa aa aa aa aa aa aa aa aa aa aa aa aa  ................
-082600c0:  aa aa aa aa aa aa aa aa aa aa aa aa aa aa aa aa  ................
-082600d0:  aa aa aa aa aa aa aa aa aa aa aa aa aa aa aa aa  ................
-082600e0:  aa aa aa aa aa aa aa aa aa aa aa aa aa aa aa aa  ................
-082600f0:  aa aa aa aa aa aa aa aa aa aa aa aa aa aa aa aa  ................
-08260100:  aa aa aa aa aa aa aa aa aa aa aa aa aa aa aa aa  ................
-08260110:  aa aa aa aa aa aa aa aa aa aa aa aa aa aa aa aa  ................
-08260120:  aa aa aa aa aa aa aa aa aa aa aa aa aa aa aa aa  ................
-08260130:  aa aa aa aa aa aa aa aa aa aa aa aa aa aa aa aa  ................
-08260140:  aa aa aa aa aa aa aa aa aa aa aa aa aa aa aa aa  ................
-08260150:  aa aa aa aa aa aa aa aa aa aa aa aa aa aa aa aa  ................
-08260160:  aa aa aa aa aa aa aa aa aa aa aa aa aa aa aa aa  ................
-08260170:  aa aa aa aa aa aa aa aa aa aa aa aa aa aa aa aa  ................
-08260180:  aa aa aa aa aa aa aa aa aa aa aa aa aa aa aa aa  ................
-08260190:  aa aa aa aa aa aa aa aa aa aa aa aa aa aa aa aa  ................
-082601a0:  aa aa aa aa aa aa aa aa aa aa aa aa aa aa aa aa  ................
-082601b0:  aa aa aa aa aa aa aa aa aa aa aa aa aa aa aa aa  ................
-082601c0:  aa aa aa aa aa aa aa aa aa aa aa aa aa aa aa aa  ................
-082601d0:  aa aa aa aa aa aa aa aa aa aa aa aa aa aa aa aa  ................
-082601e0:  aa aa aa aa aa aa aa aa aa aa aa aa aa aa aa aa  ................
-082601f0:  aa aa aa aa aa aa aa aa aa aa aa aa aa aa aa aa  ................
-read 512/512 bytes at offset 136708096
+XXXXXXXX:  aa aa aa aa aa aa aa aa aa aa aa aa aa aa aa aa  ................
+XXXXXXXX:  aa aa aa aa aa aa aa aa aa aa aa aa aa aa aa aa  ................
+XXXXXXXX:  aa aa aa aa aa aa aa aa aa aa aa aa aa aa aa aa  ................
+XXXXXXXX:  aa aa aa aa aa aa aa aa aa aa aa aa aa aa aa aa  ................
+XXXXXXXX:  aa aa aa aa aa aa aa aa aa aa aa aa aa aa aa aa  ................
+XXXXXXXX:  aa aa aa aa aa aa aa aa aa aa aa aa aa aa aa aa  ................
+XXXXXXXX:  aa aa aa aa aa aa aa aa aa aa aa aa aa aa aa aa  ................
+XXXXXXXX:  aa aa aa aa aa aa aa aa aa aa aa aa aa aa aa aa  ................
+XXXXXXXX:  aa aa aa aa aa aa aa aa aa aa aa aa aa aa aa aa  ................
+XXXXXXXX:  aa aa aa aa aa aa aa aa aa aa aa aa aa aa aa aa  ................
+XXXXXXXX:  aa aa aa aa aa aa aa aa aa aa aa aa aa aa aa aa  ................
+XXXXXXXX:  aa aa aa aa aa aa aa aa aa aa aa aa aa aa aa aa  ................
+XXXXXXXX:  aa aa aa aa aa aa aa aa aa aa aa aa aa aa aa aa  ................
+XXXXXXXX:  aa aa aa aa aa aa aa aa aa aa aa aa aa aa aa aa  ................
+XXXXXXXX:  aa aa aa aa aa aa aa aa aa aa aa aa aa aa aa aa  ................
+XXXXXXXX:  aa aa aa aa aa aa aa aa aa aa aa aa aa aa aa aa  ................
+XXXXXXXX:  aa aa aa aa aa aa aa aa aa aa aa aa aa aa aa aa  ................
+XXXXXXXX:  aa aa aa aa aa aa aa aa aa aa aa aa aa aa aa aa  ................
+XXXXXXXX:  aa aa aa aa aa aa aa aa aa aa aa aa aa aa aa aa  ................
+XXXXXXXX:  aa aa aa aa aa aa aa aa aa aa aa aa aa aa aa aa  ................
+XXXXXXXX:  aa aa aa aa aa aa aa aa aa aa aa aa aa aa aa aa  ................
+XXXXXXXX:  aa aa aa aa aa aa aa aa aa aa aa aa aa aa aa aa  ................
+XXXXXXXX:  aa aa aa aa aa aa aa aa aa aa aa aa aa aa aa aa  ................
+XXXXXXXX:  aa aa aa aa aa aa aa aa aa aa aa aa aa aa aa aa  ................
+XXXXXXXX:  aa aa aa aa aa aa aa aa aa aa aa aa aa aa aa aa  ................
+XXXXXXXX:  aa aa aa aa aa aa aa aa aa aa aa aa aa aa aa aa  ................
+XXXXXXXX:  aa aa aa aa aa aa aa aa aa aa aa aa aa aa aa aa  ................
+XXXXXXXX:  aa aa aa aa aa aa aa aa aa aa aa aa aa aa aa aa  ................
+XXXXXXXX:  aa aa aa aa aa aa aa aa aa aa aa aa aa aa aa aa  ................
+XXXXXXXX:  aa aa aa aa aa aa aa aa aa aa aa aa aa aa aa aa  ................
+XXXXXXXX:  aa aa aa aa aa aa aa aa aa aa aa aa aa aa aa aa  ................
+XXXXXXXX:  aa aa aa aa aa aa aa aa aa aa aa aa aa aa aa aa  ................
+read 512/512 bytes
 XXX Bytes, X ops; XX:XX:XX.X (XXX YYY/sec and XXX ops/sec)