[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[PULL 30/29] vhost-user-blk-test: pass vhost-user socket fds to QSD
From: |
Michael S. Tsirkin |
Subject: |
[PULL 30/29] vhost-user-blk-test: pass vhost-user socket fds to QSD |
Date: |
Tue, 19 Oct 2021 10:08:38 -0400 |
From: Stefan Hajnoczi <stefanha@redhat.com>
qemu-storage-daemon is launched with the vhost-user listen socket path.
The path is first unlinked before opening the listen socket. This
prevents stale UNIX domain socket files from stopping socket
initialization.
This behavior is undesirable in vhost-user-blk-test and the cause of a
bug:
There is a race condition in vhost-user-blk-test when QEMU launches
before QSD. It connects to the old socket that QSD unlinks and the
vhost-user connection is never serviced, resulting in a hang.
Pass the listen socket fd to QSD to maintain listen socket continuity
and prevent the lost connection.
Fixes: 806952026df41939680abe92b329715b9b4e01cc ("test: new qTest case to test
the vhost-user-blk-server")
Cc: Raphael Norwitz <raphael.norwitz@nutanix.com>
Cc: Michael S. Tsirkin <mst@redhat.com>
Cc: Thomas Huth <thuth@redhat.com>
Cc: Coiby Xu <coiby.xu@gmail.com>
Signed-off-by: Stefan Hajnoczi <stefanha@redhat.com>
Message-Id: <20211019135655.83067-1-stefanha@redhat.com>
Reviewed-by: Michael S. Tsirkin <mst@redhat.com>
Signed-off-by: Michael S. Tsirkin <mst@redhat.com>
---
tests/qtest/vhost-user-blk-test.c | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/tests/qtest/vhost-user-blk-test.c
b/tests/qtest/vhost-user-blk-test.c
index 6f108a1b62..62e670f39b 100644
--- a/tests/qtest/vhost-user-blk-test.c
+++ b/tests/qtest/vhost-user-blk-test.c
@@ -906,9 +906,9 @@ static void start_vhost_user_blk(GString *cmd_line, int
vus_instances,
img_path = drive_create();
g_string_append_printf(storage_daemon_command,
"--blockdev driver=file,node-name=disk%d,filename=%s "
- "--export
type=vhost-user-blk,id=disk%d,addr.type=unix,addr.path=%s,"
+ "--export type=vhost-user-blk,id=disk%d,addr.type=fd,addr.str=%d,"
"node-name=disk%i,writable=on,num-queues=%d ",
- i, img_path, i, sock_path, i, num_queues);
+ i, img_path, i, fd, i, num_queues);
g_string_append_printf(cmd_line, "-chardev socket,id=char%d,path=%s ",
i + 1, sock_path);
--
MST
- [PULL 23/29] vhost-user-rng-pci: Add vhost-user-rng-pci implementation, (continued)
- [PULL 23/29] vhost-user-rng-pci: Add vhost-user-rng-pci implementation, Michael S. Tsirkin, 2021/10/19
- [PULL 22/29] vhost-user-rng: Add vhost-user-rng implementation, Michael S. Tsirkin, 2021/10/19
- [PULL 25/29] vhost-user: fix duplicated notifier MR init, Michael S. Tsirkin, 2021/10/19
- [PULL 26/29] tests/acpi/bios-tables-test: add and allow changes to a new q35 DSDT table blob, Michael S. Tsirkin, 2021/10/19
- [PULL 27/29] tests/acpi/pcihp: add unit tests for hotplug on multifunction bridges for q35, Michael S. Tsirkin, 2021/10/19
- [PULL 28/29] tests/acpi/bios-tables-test: update DSDT blob for multifunction bridge test, Michael S. Tsirkin, 2021/10/19
- [PULL 29/29] failover: fix a regression introduced by JSON'ification of -device, Michael S. Tsirkin, 2021/10/19
- [PULL 15/29] tests: bios-tables-test: use qtest_has_accel() API to register TCG only tests, Michael S. Tsirkin, 2021/10/19
- [PULL 10/29] tests: acpi: add testcase for amd-iommu (IVRS table), Michael S. Tsirkin, 2021/10/19
- Re: [PULL 00/29] pc,pci,virtio: features, fixes, Michael S. Tsirkin, 2021/10/19
- [PULL 30/29] vhost-user-blk-test: pass vhost-user socket fds to QSD,
Michael S. Tsirkin <=
- Re: [PULL 00/29] pc,pci,virtio: features, fixes, Richard Henderson, 2021/10/19
- Re: [PULL 00/29] pc,pci,virtio: features, fixes, Igor Mammedov, 2021/10/20
- Re: [PULL 00/29] pc,pci,virtio: features, fixes, Thomas Huth, 2021/10/20
- Re: [PULL 00/29] pc,pci,virtio: features, fixes, Michael S. Tsirkin, 2021/10/20
- Re: [PULL 00/29] pc,pci,virtio: features, fixes, Thomas Huth, 2021/10/20
- Re: [PULL 00/29] pc,pci,virtio: features, fixes, Marcel Apfelbaum, 2021/10/20