qemu-devel
[Top][All Lists]
Advanced

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

[Qemu-devel] [PATCH] slirp: Put forked exec into separate process group


From: Jan Kiszka
Subject: [Qemu-devel] [PATCH] slirp: Put forked exec into separate process group
Date: Mon, 30 May 2011 22:21:17 +0200
User-agent: Mozilla/5.0 (X11; U; Linux i686 (x86_64); de; rv:1.8.1.12) Gecko/20080226 SUSE/2.0.0.12-1.1 Thunderbird/2.0.0.12 Mnenhy/0.7.5.666

From: Jan Kiszka <address@hidden>

Recent smb daemons tend to terminate themselves via a process group
SIGTERM. If the daemon is still in qemu's group by that time, qemu will
die as well. Avoid this by always pushing fork_exec processes into a
group of their own, not just (unused) type 2 execs.

Signed-off-by: Jan Kiszka <address@hidden>
---
 slirp/misc.c |    3 ++-
 1 files changed, 2 insertions(+), 1 deletions(-)

diff --git a/slirp/misc.c b/slirp/misc.c
index 08eba6a..34179e2 100644
--- a/slirp/misc.c
+++ b/slirp/misc.c
@@ -153,11 +153,12 @@ fork_exec(struct socket *so, const char *ex, int do_pty)
                return 0;
 
         case 0:
+                setsid();
+
                /* Set the DISPLAY */
                if (do_pty == 2) {
                        (void) close(master);
 #ifdef TIOCSCTTY /* XXXXX */
-                       (void) setsid();
                        ioctl(s, TIOCSCTTY, (char *)NULL);
 #endif
                } else {
-- 
1.7.1



reply via email to

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