diff mbox series

[v2,3/7] iotests: Valgrind fails to work with nonexistent directory

Message ID 1560276131-683243-4-git-send-email-andrey.shinkevich@virtuozzo.com
State New
Headers show
Series None | expand

Commit Message

Andrey Shinkevich June 11, 2019, 6:02 p.m. UTC
The Valgrind uses the exported variable TMPDIR and fails if the
directory does not exist. Let us exclude such a test case from
being run under the Valgrind.

Signed-off-by: Andrey Shinkevich <andrey.shinkevich@virtuozzo.com>
---
 tests/qemu-iotests/051 | 1 +
 1 file changed, 1 insertion(+)

Comments

Vladimir Sementsov-Ogievskiy June 13, 2019, 9:52 a.m. UTC | #1
11.06.2019 21:02, Andrey Shinkevich wrote:
> The Valgrind uses the exported variable TMPDIR and fails if the
> directory does not exist. Let us exclude such a test case from
> being run under the Valgrind.
> 
> Signed-off-by: Andrey Shinkevich <andrey.shinkevich@virtuozzo.com>

Hmm, isn't it preferable to skip unsupported by
valgrind iotests, instead silently disable valgrind in them?

> ---
>   tests/qemu-iotests/051 | 1 +
>   1 file changed, 1 insertion(+)
> 
> diff --git a/tests/qemu-iotests/051 b/tests/qemu-iotests/051
> index 200660f..ccc5bc2 100755
> --- a/tests/qemu-iotests/051
> +++ b/tests/qemu-iotests/051
> @@ -377,6 +377,7 @@ printf %b "qemu-io $device_id \"write -P 0x33 0 4k\"\ncommit $device_id\n" |
>   $QEMU_IO -c "read -P 0x33 0 4k" "$TEST_IMG" | _filter_qemu_io
>   
>   # Using snapshot=on with a non-existent TMPDIR

(you can add into comment: "Valgrind needs TMPDIR, so disable it"

> +VALGRIND_QEMU="" \
>   TMPDIR=/nonexistent run_qemu -drive driver=null-co,snapshot=on
>   
>   # Using snapshot=on together with read-only=on
>
Kevin Wolf June 17, 2019, 11:22 a.m. UTC | #2
Am 13.06.2019 um 11:52 hat Vladimir Sementsov-Ogievskiy geschrieben:
> 11.06.2019 21:02, Andrey Shinkevich wrote:
> > The Valgrind uses the exported variable TMPDIR and fails if the
> > directory does not exist. Let us exclude such a test case from
> > being run under the Valgrind.
> > 
> > Signed-off-by: Andrey Shinkevich <andrey.shinkevich@virtuozzo.com>
> 
> Hmm, isn't it preferable to skip unsupported by
> valgrind iotests, instead silently disable valgrind in them?

You mean like this at the start of the script?

[ "$VALGRIND_QEMU" == "y" ] && _notrun "valgrind needs a working TMPDIR"

I agree that silently doing something different that the user requested
is bad and visibly skipping the test is often better. On the other hand,
051 is relatively long and it's only one subtest that doesn't work with
valgrind.

Hm... How about we do run the test, but put a note in the casenotrun
file so it's visible that we didn't use valgrind for everything?

Kevin
diff mbox series

Patch

diff --git a/tests/qemu-iotests/051 b/tests/qemu-iotests/051
index 200660f..ccc5bc2 100755
--- a/tests/qemu-iotests/051
+++ b/tests/qemu-iotests/051
@@ -377,6 +377,7 @@  printf %b "qemu-io $device_id \"write -P 0x33 0 4k\"\ncommit $device_id\n" |
 $QEMU_IO -c "read -P 0x33 0 4k" "$TEST_IMG" | _filter_qemu_io
 
 # Using snapshot=on with a non-existent TMPDIR
+VALGRIND_QEMU="" \
 TMPDIR=/nonexistent run_qemu -drive driver=null-co,snapshot=on
 
 # Using snapshot=on together with read-only=on