All of lore.kernel.org
 help / color / mirror / Atom feed
* [PATCH] tests/qtest/vhost-user-blk-test: Check whether qemu-storage-daemon is available
@ 2021-08-11  9:59 Thomas Huth
  2021-08-11 10:10 ` Alexander Bulekov
  2021-08-11 11:08 ` Peter Maydell
  0 siblings, 2 replies; 4+ messages in thread
From: Thomas Huth @ 2021-08-11  9:59 UTC (permalink / raw)
  To: qemu-devel, Kevin Wolf, Coiby Xu
  Cc: peter.maydell, qemu-block, philmd, alxndr, Stefan Hajnoczi, alex.bennee

The vhost-user-blk-test currently hangs if QTEST_QEMU_STORAGE_DAEMON_BINARY
points to a non-existing binary. Let's improve this situation by checking
for the availability of the binary first, so we can fail gracefully if
it is not accessible.

Signed-off-by: Thomas Huth <thuth@redhat.com>
---
 tests/qtest/vhost-user-blk-test.c | 8 ++++++++
 1 file changed, 8 insertions(+)

diff --git a/tests/qtest/vhost-user-blk-test.c b/tests/qtest/vhost-user-blk-test.c
index 8796c74ca4..6f108a1b62 100644
--- a/tests/qtest/vhost-user-blk-test.c
+++ b/tests/qtest/vhost-user-blk-test.c
@@ -789,6 +789,14 @@ static const char *qtest_qemu_storage_daemon_binary(void)
         exit(0);
     }
 
+    /* If we've got a path to the binary, check whether we can access it */
+    if (strchr(qemu_storage_daemon_bin, '/') &&
+        access(qemu_storage_daemon_bin, X_OK) != 0) {
+        fprintf(stderr, "ERROR: '%s' is not accessible\n",
+                qemu_storage_daemon_bin);
+        exit(1);
+    }
+
     return qemu_storage_daemon_bin;
 }
 
-- 
2.27.0



^ permalink raw reply related	[flat|nested] 4+ messages in thread

end of thread, other threads:[~2021-10-14  6:49 UTC | newest]

Thread overview: 4+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2021-08-11  9:59 [PATCH] tests/qtest/vhost-user-blk-test: Check whether qemu-storage-daemon is available Thomas Huth
2021-08-11 10:10 ` Alexander Bulekov
2021-08-11 11:08 ` Peter Maydell
2021-10-14  6:45   ` Thomas Huth

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.