Message ID | 20220527081915.2024853-5-hch@lst.de (mailing list archive) |
---|---|
State | New, archived |
Headers | show |
Series | [01/10] btrfs: add a helpers for read repair testing | expand |
On 5/27/22 13:49, Christoph Hellwig wrote: > Use the common helpers to find the btrfs logical address and to read from > a specific mirror. > > Signed-off-by: Christoph Hellwig <hch@lst.de> > Reviewed-by: Qu Wenruo <wqu@suse.com> > --- > tests/btrfs/142 | 10 +++------- > 1 file changed, 3 insertions(+), 7 deletions(-) > > diff --git a/tests/btrfs/142 b/tests/btrfs/142 > index 58d01add..7a63fb83 100755 > --- a/tests/btrfs/142 > +++ b/tests/btrfs/142 > @@ -27,7 +27,6 @@ _require_scratch_dev_pool 2 > _require_dm_target dust > > _require_btrfs_command inspect-internal dump-tree > -_require_command "$FILEFRAG_PROG" filefrag > > _scratch_dev_pool_get 2 > # step 1, create a raid1 btrfs which contains one 128k file. > @@ -46,8 +45,7 @@ $XFS_IO_PROG -f -d -c "pwrite -S 0xaa -b 128K 0 128K" "$SCRATCH_MNT/foobar" |\ > # step 2, corrupt the first 64k of stripe #1 > echo "step 2......corrupt file extent" >>$seqres.full > > -${FILEFRAG_PROG} -v $SCRATCH_MNT/foobar >> $seqres.full > -logical_in_btrfs=`${FILEFRAG_PROG} -v $SCRATCH_MNT/foobar | _filter_filefrag | cut -d '#' -f 1` > +logical_in_btrfs=$(_btrfs_get_first_logical $SCRATCH_MNT/foobar) > echo "Logical offset is $logical_in_btrfs" >>$seqres.full > _scratch_unmount > > @@ -67,10 +65,8 @@ echo "step 3......repair the bad copy" >>$seqres.full > > $DMSETUP_PROG message dust-test 0 addbadblock $((physical / 512)) > $DMSETUP_PROG message dust-test 0 enable > -while [[ -z $( (( BASHPID % 2 == stripe )) && > - exec $XFS_IO_PROG -d -c "pread -b 128K 0 128K" "$SCRATCH_MNT/foobar") ]]; do > - : > -done Ah. It is an existing code, we are discussing this in 1/10. > + > +_btrfs_direct_read_on_mirror $stripe 2 "$SCRATCH_MNT/foobar" 0 128K > Otherwise look good. Reviewed-by: Anand Jain <anand.jain@oracle.com> > _cleanup_dust >
diff --git a/tests/btrfs/142 b/tests/btrfs/142 index 58d01add..7a63fb83 100755 --- a/tests/btrfs/142 +++ b/tests/btrfs/142 @@ -27,7 +27,6 @@ _require_scratch_dev_pool 2 _require_dm_target dust _require_btrfs_command inspect-internal dump-tree -_require_command "$FILEFRAG_PROG" filefrag _scratch_dev_pool_get 2 # step 1, create a raid1 btrfs which contains one 128k file. @@ -46,8 +45,7 @@ $XFS_IO_PROG -f -d -c "pwrite -S 0xaa -b 128K 0 128K" "$SCRATCH_MNT/foobar" |\ # step 2, corrupt the first 64k of stripe #1 echo "step 2......corrupt file extent" >>$seqres.full -${FILEFRAG_PROG} -v $SCRATCH_MNT/foobar >> $seqres.full -logical_in_btrfs=`${FILEFRAG_PROG} -v $SCRATCH_MNT/foobar | _filter_filefrag | cut -d '#' -f 1` +logical_in_btrfs=$(_btrfs_get_first_logical $SCRATCH_MNT/foobar) echo "Logical offset is $logical_in_btrfs" >>$seqres.full _scratch_unmount @@ -67,10 +65,8 @@ echo "step 3......repair the bad copy" >>$seqres.full $DMSETUP_PROG message dust-test 0 addbadblock $((physical / 512)) $DMSETUP_PROG message dust-test 0 enable -while [[ -z $( (( BASHPID % 2 == stripe )) && - exec $XFS_IO_PROG -d -c "pread -b 128K 0 128K" "$SCRATCH_MNT/foobar") ]]; do - : -done + +_btrfs_direct_read_on_mirror $stripe 2 "$SCRATCH_MNT/foobar" 0 128K _cleanup_dust