Michael Roth 885660bd48 network scripts: don't block SIGCHLD before forking
This patch fixes a bug where child processes of launch_script() can
misbehave due to SIGCHLD being blocked. In the case of `sudo`, this
causes a permanent hang.

Previously a SIGCHLD handler was added to reap fork_exec()'d zombie
processes by calling waitpid(-1, ...). This required other
fork()/waitpid() callers to temporarilly block SIGCHILD to avoid
having the final wait status being intercepted by the SIGCHLD
handler:

7c3370d4fe3fa6cda8655f109e4659afc8ca4269

Since then, the qemu_add_child_watch() interface was added to allow
registration of such processes and reap only from that specific set
of PIDs:

4d54ec7898bd951007cb6122d5315584bd41d0c4

As a result, we can now avoid blocking SIGCHLD in launch_script(), so
drop that behavior.

Reviewed-by: Jan Kiszka <jan.kiszka@siemens.com>
Reviewed-by: Paolo Bonzini <pbonzini@redhat.com>
Signed-off-by: Michael Roth <mdroth@linux.vnet.ibm.com>
Signed-off-by: Anthony Liguori <aliguori@us.ibm.com>
2011-12-15 10:22:40 -06:00
2011-10-06 09:48:07 +02:00
2011-12-06 11:40:00 -02:00
2011-11-07 10:57:36 -06:00
2011-10-21 18:14:30 +02:00
2011-11-07 10:57:36 -06:00
2009-09-12 07:36:22 +00:00
2011-09-10 16:57:36 +00:00
2011-12-02 10:50:57 +00:00
2011-08-27 15:42:35 +00:00
2011-10-21 18:14:30 +02:00
2011-12-06 11:40:01 -02:00
2011-12-06 11:40:01 -02:00
2011-09-16 08:26:31 -05:00
2010-11-01 00:54:06 +03:00
2011-11-07 08:01:15 +00:00
2011-12-06 11:40:00 -02:00
2011-12-06 10:07:04 +00:00
2011-12-15 09:20:50 -06:00
2011-12-15 09:20:50 -06:00
2011-11-01 10:58:08 -05:00
2011-10-31 21:52:17 +01:00
2011-10-31 21:52:17 +01:00
2011-12-05 14:51:38 +01:00
2011-09-10 16:57:36 +00:00
2009-09-12 07:36:22 +00:00
2011-06-07 13:52:10 -05:00
2011-12-02 10:50:57 +00:00
2011-01-20 20:54:21 +00:00
2011-12-06 11:40:01 -02:00
2011-12-06 11:40:01 -02:00
2011-12-02 10:50:57 +00:00
2011-08-27 15:42:35 +00:00
2011-08-27 15:42:35 +00:00
2011-10-27 11:48:46 -02:00
2011-10-16 13:13:05 +02:00
2011-10-21 18:14:30 +02:00
2009-10-01 16:12:16 -05:00
2011-10-11 15:57:07 +02:00
2011-10-11 15:57:07 +02:00
2010-11-21 09:16:57 -06:00
2011-08-04 15:51:22 +02:00
2011-08-04 15:51:22 +02:00
2011-06-14 03:08:57 +02:00
2011-12-09 11:25:22 +00:00
2011-12-02 10:50:57 +00:00
2011-12-02 10:50:57 +00:00
2011-12-02 10:50:56 +00:00
2011-12-06 11:40:00 -02:00
2010-03-21 08:28:47 +00:00
2011-12-15 09:20:47 -06:00
2011-08-27 15:42:35 +00:00
2011-07-21 16:48:13 -03:00
2011-12-06 11:40:01 -02:00
2011-12-02 10:50:57 +00:00
2011-09-19 11:34:33 +02:00
2011-12-06 11:40:01 -02:00
2011-12-06 11:40:01 -02:00
2011-12-06 09:56:41 +00:00
2011-10-21 17:34:12 +02:00
2011-02-09 10:33:54 +02:00
2011-10-06 09:48:09 +02:00
2011-08-27 15:42:35 +00:00
2009-11-17 08:49:39 -06:00
2010-07-01 14:27:13 -03:00
2011-10-21 17:34:12 +02:00
2009-10-27 12:28:59 -05:00
2010-09-21 18:36:42 +02:00
2011-08-02 15:53:40 +02:00
2010-05-19 12:45:54 -03:00
2011-12-02 10:50:57 +00:00
2011-10-21 18:14:30 +02:00
2011-03-13 14:44:22 +00:00
2011-12-15 09:20:50 -06:00
2011-12-15 09:20:50 -06:00
2011-11-09 12:06:20 -06:00
2011-10-21 18:14:30 +02:00
2011-12-06 10:07:04 +00:00
2011-11-21 14:58:48 -06:00
2009-11-17 08:49:38 -06:00
2010-05-19 12:45:54 -03:00
2010-10-01 10:12:43 -03:00
2011-07-21 16:48:13 -03:00
2010-05-19 12:45:54 -03:00
2010-05-19 12:45:54 -03:00
2010-09-18 05:53:14 +00:00
2011-12-11 17:50:43 -06:00
2011-10-01 09:31:08 +00:00
2011-10-01 09:31:08 +00:00
2011-10-01 09:31:08 +00:00
2011-07-23 11:26:12 -05:00
2011-08-27 15:42:35 +00:00
2010-03-14 22:04:50 +01:00
2011-10-31 21:52:17 +01:00
2011-12-05 14:51:38 +01:00
2009-10-01 16:12:16 -05:00
2011-08-27 15:42:35 +00:00
2011-09-15 16:39:32 -03:00
2011-09-10 16:57:39 +00:00

Read the documentation in qemu-doc.html or on http://wiki.qemu.org

- QEMU team
Description
Original Xbox Emulator for Windows, macOS, and Linux (Active Development)
Readme 531 MiB
Languages
C 82.5%
C++ 7%
Python 3.3%
Dylan 2.8%
Shell 1.5%
Other 2.6%