device: 0.389 graphic: 0.286 network: 0.262 performance: 0.242 socket: 0.231 semantic: 0.163 PID: 0.109 permissions: 0.096 vnc: 0.096 boot: 0.087 debug: 0.087 files: 0.053 KVM: 0.034 other: 0.031 qemu-user doesn't block target signals on entry to signal hanlder. Upon entry to a target signal handler the function process_pending_signals in linux-user/signal.c block the appropriate host signals, but signals already received and queued by Qemu are not blocked. If multiple signals arrive in quick succession this results incorrect recursion in the target signal handler. The attached test case my be run as: $ (sleep 2 ; echo) | qemu-i386 ./a.out .................. Recursion in signal handler! qemu: uncaught target signal 6 (Aborted) - core dumped The patches to block signals on entry to the signal handler have now been applied to master.