From 565465fcae755fbdb11c2f65ec5f0ae62c78db3a Mon Sep 17 00:00:00 2001 From: Jan Kiszka Date: Wed, 20 Jul 2011 12:20:17 +0200 Subject: [PATCH] slirp: Put forked exec into separate process group 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 Signed-off-by: Anthony Liguori --- slirp/misc.c | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/slirp/misc.c b/slirp/misc.c index 08eba6adc0..34179e26a8 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 {