From: Riku Voipio <riku.voi...@nokia.com> Qemu may hang in host_signal_handler after qemu has done a seppuku with cpu_abort(). But at this stage we are not really interested in target process coredump anymore, so unregister host_signal_handler to die grafefully.
Signed-off-by: Riku Voipio <riku.voi...@nokia.com> --- exec.c | 9 +++++++++ 1 files changed, 9 insertions(+), 0 deletions(-) diff --git a/exec.c b/exec.c index 431e104..eeb17d0 100644 --- a/exec.c +++ b/exec.c @@ -40,6 +40,7 @@ #include "kvm.h" #if defined(CONFIG_USER_ONLY) #include <qemu.h> +#include <signal.h> #endif //#define DEBUG_TB_INVALIDATE @@ -1692,6 +1693,14 @@ void cpu_abort(CPUState *env, const char *fmt, ...) } va_end(ap2); va_end(ap); +#if defined(CONFIG_USER_ONLY) + { + struct sigaction act; + sigfillset(&act.sa_mask); + act.sa_handler = SIG_DFL; + sigaction(SIGABRT, &act, NULL); + } +#endif abort(); } -- 1.6.5