From e1b3ab5f5182f954a5cf2109b856dd95affc324c Mon Sep 17 00:00:00 2001 From: Paul Dagnelie Date: Wed, 19 Apr 2023 13:20:02 -0700 Subject: [PATCH] ZTS: send-c_volume is flaky We use block_device_wait to wait for the zvol block device to actually appear, and we log the result of the dd calls by using an intermediate file. Reviewed-by: George Melikov Reviewed-by: John Wren Kennedy Reviewed-by: Brian Behlendorf Signed-off-by: Paul Dagnelie Closes #14767 --- tests/zfs-tests/tests/functional/rsend/send-c_volume.ksh | 9 +++++++-- 1 file changed, 7 insertions(+), 2 deletions(-) diff --git a/tests/zfs-tests/tests/functional/rsend/send-c_volume.ksh b/tests/zfs-tests/tests/functional/rsend/send-c_volume.ksh index 988ed91b99..1bf2348234 100755 --- a/tests/zfs-tests/tests/functional/rsend/send-c_volume.ksh +++ b/tests/zfs-tests/tests/functional/rsend/send-c_volume.ksh @@ -29,6 +29,7 @@ function cleanup { + rm $BACKDIR/copy log_must_busy zfs destroy -r $vol cleanup_pool $POOL2 } @@ -60,7 +61,9 @@ log_must eval "zfs recv -d $POOL2 <$BACKDIR/full" verify_stream_size $BACKDIR/full $vol verify_stream_size $BACKDIR/full $vol2 -md5=$(dd if=$voldev2 bs=1024k count=$megs 2>/dev/null | md5digest) +block_device_wait $voldev2 +log_must dd if=$voldev2 of=$BACKDIR/copy bs=1024k count=$megs +md5=$(md5digest $BACKDIR/copy) [[ $md5 = $md5_1 ]] || log_fail "md5 mismatch: $md5 != $md5_1" # Repeat, for an incremental send @@ -72,7 +75,9 @@ log_must eval "zfs recv -d $POOL2 <$BACKDIR/inc" verify_stream_size $BACKDIR/inc $vol 90 $vol@snap verify_stream_size $BACKDIR/inc $vol2 90 $vol2@snap -md5=$(dd skip=$megs if=$voldev2 bs=1024k count=$megs 2>/dev/null | md5digest) +block_device_wait $voldev2 +log_must dd skip=$megs if=$voldev2 of=$BACKDIR/copy bs=1024k count=$megs +md5=$(md5digest $BACKDIR/copy) [[ $md5 = $md5_2 ]] || log_fail "md5 mismatch: $md5 != $md5_2" log_pass "Verify compressed send works with volumes"