qemu-devel
[Top][All Lists]
Advanced

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

[Qemu-devel] [PATCH] linux-user: Fix fork() and vfork()


From: Tim Hentenaar
Subject: [Qemu-devel] [PATCH] linux-user: Fix fork() and vfork()
Date: Tue, 28 Feb 2017 03:51:57 +0100

A check was introduced in 5ea2fc84da1bffce749c9d0848f5336def2818bb which
causes fork() and vfork() to fail if TARGET_SIGCHLD != SIGCHLD.

Signed-off-by: Tim Hentenaar <address@hidden>
---
 linux-user/syscall.c | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/linux-user/syscall.c b/linux-user/syscall.c
index f569f82..ac4106a 100644
--- a/linux-user/syscall.c
+++ b/linux-user/syscall.c
@@ -7680,7 +7680,7 @@ abi_long do_syscall(void *cpu_env, int num, abi_long arg1,
         break;
 #ifdef TARGET_NR_fork
     case TARGET_NR_fork:
-        ret = get_errno(do_fork(cpu_env, SIGCHLD, 0, 0, 0, 0));
+        ret = get_errno(do_fork(cpu_env, TARGET_SIGCHLD, 0, 0, 0, 0));
         break;
 #endif
 #ifdef TARGET_NR_waitpid
@@ -10490,7 +10490,7 @@ abi_long do_syscall(void *cpu_env, int num, abi_long 
arg1,
 #endif
 #ifdef TARGET_NR_vfork
     case TARGET_NR_vfork:
-        ret = get_errno(do_fork(cpu_env, CLONE_VFORK | CLONE_VM | SIGCHLD,
+        ret = get_errno(do_fork(cpu_env, CLONE_VFORK | CLONE_VM | 
TARGET_SIGCHLD,
                         0, 0, 0, 0));
         break;
 #endif
-- 
2.10.2




reply via email to

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