diff mbox series

[v2,17/20] iotests: Give access to the qemu-storage-daemon

Message ID 20200922104932.46384-18-mreitz@redhat.com
State Superseded
Headers show
Series block/export: Allow exporting BDSs via FUSE | expand

Commit Message

Max Reitz Sept. 22, 2020, 10:49 a.m. UTC
Signed-off-by: Max Reitz <mreitz@redhat.com>
---
 tests/qemu-iotests/check     | 11 +++++++++++
 tests/qemu-iotests/common.rc | 17 +++++++++++++++++
 2 files changed, 28 insertions(+)

Comments

Kevin Wolf Oct. 15, 2020, 11:27 a.m. UTC | #1
Am 22.09.2020 um 12:49 hat Max Reitz geschrieben:
> Signed-off-by: Max Reitz <mreitz@redhat.com>
> ---
>  tests/qemu-iotests/check     | 11 +++++++++++
>  tests/qemu-iotests/common.rc | 17 +++++++++++++++++
>  2 files changed, 28 insertions(+)
> 
> diff --git a/tests/qemu-iotests/check b/tests/qemu-iotests/check
> index e14a1f354d..467a7cf1b7 100755
> --- a/tests/qemu-iotests/check
> +++ b/tests/qemu-iotests/check
> @@ -644,6 +644,17 @@ if [ -z $QEMU_NBD_PROG ]; then
>  fi
>  export QEMU_NBD_PROG="$(type -p "$QEMU_NBD_PROG")"
>  
> +if [ -z "$QEMU_STGD_PROG" ]; then

No series without some bikeshedding:

This is the first time I see "QEMU_STGD" as a short form. Without the
subject line of the patch, I wouldn't be able to guess what it is.

If the full name ($QEMU_STORAGE_DAEMON_PROG) is too long, I think simply
$QSD_PROG would be an alternative, because "qsd" is what people already
use an as abbreviation.

Kevin
Max Reitz Oct. 15, 2020, 3:22 p.m. UTC | #2
On 15.10.20 13:27, Kevin Wolf wrote:
> Am 22.09.2020 um 12:49 hat Max Reitz geschrieben:

>> Signed-off-by: Max Reitz <mreitz@redhat.com>

>> ---

>>  tests/qemu-iotests/check     | 11 +++++++++++

>>  tests/qemu-iotests/common.rc | 17 +++++++++++++++++

>>  2 files changed, 28 insertions(+)

>>

>> diff --git a/tests/qemu-iotests/check b/tests/qemu-iotests/check

>> index e14a1f354d..467a7cf1b7 100755

>> --- a/tests/qemu-iotests/check

>> +++ b/tests/qemu-iotests/check

>> @@ -644,6 +644,17 @@ if [ -z $QEMU_NBD_PROG ]; then

>>  fi

>>  export QEMU_NBD_PROG="$(type -p "$QEMU_NBD_PROG")"

>>  

>> +if [ -z "$QEMU_STGD_PROG" ]; then

> 

> No series without some bikeshedding:

> 

> This is the first time I see "QEMU_STGD" as a short form. Without the

> subject line of the patch, I wouldn't be able to guess what it is.

> 

> If the full name ($QEMU_STORAGE_DAEMON_PROG) is too long, I think simply

> $QSD_PROG would be an alternative, because "qsd" is what people already

> use an as abbreviation.


I asked myself for a second what this QEMU Street Day you’re referring
to is (I blame the [k] at the beginning of both ?SDs), but sure, why not.

Max
diff mbox series

Patch

diff --git a/tests/qemu-iotests/check b/tests/qemu-iotests/check
index e14a1f354d..467a7cf1b7 100755
--- a/tests/qemu-iotests/check
+++ b/tests/qemu-iotests/check
@@ -644,6 +644,17 @@  if [ -z $QEMU_NBD_PROG ]; then
 fi
 export QEMU_NBD_PROG="$(type -p "$QEMU_NBD_PROG")"
 
+if [ -z "$QEMU_STGD_PROG" ]; then
+    if [ -x "$build_iotests/qemu-storage-daemon" ]; then
+        export QEMU_STGD_PROG="$build_iotests/qemu-storage-daemon"
+    elif [ -x "$build_root/storage-daemon/qemu-storage-daemon" ]; then
+        export QEMU_STGD_PROG="$build_root/storage-daemon/qemu-storage-daemon"
+    else
+        _init_error "qemu-storage-daemon not found"
+    fi
+fi
+export QEMU_STGD_PROG="$(type -p "$QEMU_STGD_PROG")"
+
 if [ -x "$build_iotests/socket_scm_helper" ]
 then
     export SOCKET_SCM_HELPER="$build_iotests/socket_scm_helper"
diff --git a/tests/qemu-iotests/common.rc b/tests/qemu-iotests/common.rc
index 23f46da2db..e4751d4985 100644
--- a/tests/qemu-iotests/common.rc
+++ b/tests/qemu-iotests/common.rc
@@ -124,6 +124,7 @@  fi
 : ${VALGRIND_QEMU_IMG=$VALGRIND_QEMU}
 : ${VALGRIND_QEMU_IO=$VALGRIND_QEMU}
 : ${VALGRIND_QEMU_NBD=$VALGRIND_QEMU}
+: ${VALGRIND_QEMU_STGD=$VALGRIND_QEMU}
 
 # The Valgrind own parameters may be set with
 # its environment variable VALGRIND_OPTS, e.g.
@@ -211,6 +212,21 @@  _qemu_nbd_wrapper()
     return $RETVAL
 }
 
+_qemu_storage_daemon_wrapper()
+{
+    local VALGRIND_LOGFILE="${TEST_DIR}"/$$.valgrind
+    (
+        if [ -n "${QEMU_STGD_NEED_PID}" ]; then
+            echo $BASHPID > "${QEMU_TEST_DIR}/qemu-storage-daemon.pid"
+        fi
+        VALGRIND_QEMU="${VALGRIND_QEMU_STGD}" _qemu_proc_exec "${VALGRIND_LOGFILE}" \
+            "$QEMU_STGD_PROG" $QEMU_STGD_OPTIONS "$@"
+    )
+    RETVAL=$?
+    _qemu_proc_valgrind_log "${VALGRIND_LOGFILE}" $RETVAL
+    return $RETVAL
+}
+
 # Valgrind bug #409141 https://bugs.kde.org/show_bug.cgi?id=409141
 # Until valgrind 3.16+ is ubiquitous, we must work around a hang in
 # valgrind when issuing sigkill. Disable valgrind for this invocation.
@@ -223,6 +239,7 @@  export QEMU=_qemu_wrapper
 export QEMU_IMG=_qemu_img_wrapper
 export QEMU_IO=_qemu_io_wrapper
 export QEMU_NBD=_qemu_nbd_wrapper
+export QEMU_STGD=_qemu_storage_daemon_wrapper
 
 if [ "$IMGOPTSSYNTAX" = "true" ]; then
     DRIVER="driver=$IMGFMT"