qemu-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[Qemu-devel] [multiprocess RFC PATCH 24/37] multi-process: pass proxy li


From: elena . ufimtseva
Subject: [Qemu-devel] [multiprocess RFC PATCH 24/37] multi-process: pass proxy link socket fd to remote process
Date: Wed, 6 Mar 2019 23:22:24 -0800

From: Elena Ufimtseva <address@hidden>

Signed-off-by: Jagannathan Raman <address@hidden>
Signed-off-by: Elena Ufimtseva <address@hidden>
Signed-off-by: John G Johnson <address@hidden>
---
 hw/proxy/qemu-proxy.c | 12 ++++--------
 1 file changed, 4 insertions(+), 8 deletions(-)

diff --git a/hw/proxy/qemu-proxy.c b/hw/proxy/qemu-proxy.c
index d1560d9..f519beb 100644
--- a/hw/proxy/qemu-proxy.c
+++ b/hw/proxy/qemu-proxy.c
@@ -201,7 +201,7 @@ static void setup_irqfd(PCIProxyDev *dev)
 
 static void init_emulation_process(PCIProxyDev *pdev, char *command, Error 
**errp)
 {
-    char *args[2];
+    char *args[3];
     pid_t rpid;
     int fd[2];
 
@@ -221,16 +221,12 @@ static void init_emulation_process(PCIProxyDev *pdev, 
char *command, Error **err
     }
 
     if (rpid == 0) {
-        if (dup2(fd[1], STDIN_FILENO) != STDIN_FILENO) {
-            perror("Failed to acquire socket.");
-            exit(1);
-        }
-
         close(fd[0]);
-        close(fd[1]);
 
         args[0] = g_strdup(command);
-        args[1] = NULL;
+        args[1] = g_strdup_printf("%d", fd[1]);
+        args[2] = NULL;
+
         execvp(args[0], (char *const *)args);
         exit(1);
     }
-- 
1.8.3.1




reply via email to

[Prev in Thread] Current Thread [Next in Thread]