[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[PULL 36/38] vhost-user-blk-test: close fork child file descriptors
From: |
Michael S. Tsirkin |
Subject: |
[PULL 36/38] vhost-user-blk-test: close fork child file descriptors |
Date: |
Tue, 3 Nov 2020 09:35:33 -0500 |
From: Stefan Hajnoczi <stefanha@redhat.com>
Do not leave stdin, stdout, stderr open after fork. stdout is the
tap-driver.pl pipe. If we keep the pipe open then tap-driver.pl will not
detect that qos-test has terminated and it will hang.
Signed-off-by: Stefan Hajnoczi <stefanha@redhat.com>
Message-Id: <20201027173528.213464-11-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 | 11 +++++++++++
1 file changed, 11 insertions(+)
diff --git a/tests/qtest/vhost-user-blk-test.c
b/tests/qtest/vhost-user-blk-test.c
index f05f14c192..15daf8ccbc 100644
--- a/tests/qtest/vhost-user-blk-test.c
+++ b/tests/qtest/vhost-user-blk-test.c
@@ -749,6 +749,17 @@ static char *start_vhost_user_blk(GString *cmd_line, int
vus_instances,
storage_daemon_command->str);
pid_t pid = fork();
if (pid == 0) {
+ /*
+ * Close standard file descriptors so tap-driver.pl pipe detects when
+ * our parent terminates.
+ */
+ close(0);
+ close(1);
+ close(2);
+ open("/dev/null", O_RDONLY);
+ open("/dev/null", O_WRONLY);
+ open("/dev/null", O_WRONLY);
+
execlp("/bin/sh", "sh", "-c", storage_daemon_command->str, NULL);
exit(1);
}
--
MST
- [PULL 26/38] vhost-blk: set features before setting inflight feature, (continued)
- [PULL 26/38] vhost-blk: set features before setting inflight feature, Michael S. Tsirkin, 2020/11/03
- [PULL 27/38] libvhost-user: follow QEMU comment style, Michael S. Tsirkin, 2020/11/03
- [PULL 28/38] configure: introduce --enable-vhost-user-blk-server, Michael S. Tsirkin, 2020/11/03
- [PULL 29/38] block/export: make vhost-user-blk config space little-endian, Michael S. Tsirkin, 2020/11/03
- [PULL 30/38] block/export: fix vhost-user-blk get_config() information leak, Michael S. Tsirkin, 2020/11/03
- [PULL 31/38] contrib/vhost-user-blk: fix get_config() information leak, Michael S. Tsirkin, 2020/11/03
- [PULL 33/38] tests/qtest: add multi-queue test case to vhost-user-blk-test, Michael S. Tsirkin, 2020/11/03
- [PULL 32/38] test: new qTest case to test the vhost-user-blk-server, Michael S. Tsirkin, 2020/11/03
- [PULL 35/38] vhost-user-blk-test: rename destroy_drive() to destroy_file(), Michael S. Tsirkin, 2020/11/03
- [PULL 38/38] vhost-user-blk-test: fix races by using fd passing, Michael S. Tsirkin, 2020/11/03
- [PULL 36/38] vhost-user-blk-test: close fork child file descriptors,
Michael S. Tsirkin <=
- [PULL 37/38] vhost-user-blk-test: drop unused return value, Michael S. Tsirkin, 2020/11/03
- [PULL 34/38] libqtest: add qtest_socket_server(), Michael S. Tsirkin, 2020/11/03
- [PULL 25/38] Revert "vhost-blk: set features before setting inflight feature", Michael S. Tsirkin, 2020/11/03
- [PULL 16/38] virtio-iommu: Call memory notifiers in attach/detach, Michael S. Tsirkin, 2020/11/03
- Re: [PULL 00/38] pc,pci,vhost,virtio: fixes, Peter Maydell, 2020/11/03