Use SIGUSR1 unconditionally as SIG_IPI. First, ucontext coroutines tend
to corrupt RT signal masks due to a 32-on-64-bit Linux kernel bug. And,
second, there appears to be no advantage in using RT signals for VCPU
kicking.
Signed-off-by: Jan Kiszka<address@hidden>
---
As people prefer to stick with ucontext, this replaces the backend
switch for i386-linux.
Avi, you once committed the RT signal based SIG_IPI version to
qemu-kvm. Can you confirm that SIGUSR1 comes with no downside?
This is also stable material.
main-loop.h | 4 ----
1 files changed, 0 insertions(+), 4 deletions(-)
diff --git a/main-loop.h b/main-loop.h
index c06b8bc..dce1cd9 100644
--- a/main-loop.h
+++ b/main-loop.h
@@ -25,11 +25,7 @@
#ifndef QEMU_MAIN_LOOP_H
#define QEMU_MAIN_LOOP_H 1
-#ifdef SIGRTMIN
-#define SIG_IPI (SIGRTMIN+4)
-#else
#define SIG_IPI SIGUSR1
-#endif
/**
* qemu_init_main_loop: Set up the process so that it can run the main loop.