Message ID | 20200408123728.19595-1-marcos@mpdesouza.com (mailing list archive) |
---|---|
State | New, archived |
Headers | show |
Series | btrfs-progs: mkfs-test: Fix check for truncate command failing | expand |
On Wed, Apr 08, 2020 at 09:37:28AM -0300, Marcos Paulo de Souza wrote: > From: Marcos Paulo de Souza <mpdesouza@suse.com> > > Commit 31f477ee ("btrfs-progs: mkfs-tests: skip test if truncate fails > with EFBIG") tried to detect a failure in truncate command by checking > the $? expecting it to be an errno, when it actually returns 0 or 1. > > To fix this test just check if the command failed (returned 1) and look > for the output, skipping the test if the OS cannot create a 6E file. > > Fixes: #241 > > Tested-by: Erhard Furtner <erhard_f@mailbox.org> > Signed-off-by: Marcos Paulo de Souza <mpdesouza@suse.com> Added to devel, thanks.
diff --git a/tests/mkfs-tests/018-multidevice-overflow/test.sh b/tests/mkfs-tests/018-multidevice-overflow/test.sh index eb5c0a43..55ec1289 100755 --- a/tests/mkfs-tests/018-multidevice-overflow/test.sh +++ b/tests/mkfs-tests/018-multidevice-overflow/test.sh @@ -15,14 +15,15 @@ run_check_mkfs_test_dev run_check_mount_test_dev # truncate can fail with EFBIG if the OS cannot create a 6EiB file -run_mayfail $SUDO_HELPER truncate -s 6E "$TEST_MNT/img1" +out=$(run_mayfail_stdout $SUDO_HELPER truncate -s 6E "$TEST_MNT/img1" 2>&1) ret=$? -if [ $ret == 27 ]; then - _not_run "Current kernel could not create a 6E file" -fi -if [ $ret -gt 0 ]; then - _fail "truncate -s 6E failed: $ret" +if [ $ret -ne 0 ]; then + run_check_umount_test_dev + if [[ "$out" == *"File too large"* ]]; then + _not_run "Current kernel could not create a 6E file" + fi + _fail "Command failed: $out" fi run_check $SUDO_HELPER truncate -s 6E "$TEST_MNT/img2"