qemu-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[Qemu-devel] [PATCH] cpus.c: Use pthread_sigmask() rather than sigprocma


From: Peter Maydell
Subject: [Qemu-devel] [PATCH] cpus.c: Use pthread_sigmask() rather than sigprocmask()
Date: Mon, 16 May 2016 18:33:59 +0100

On Linux, sigprocmask() and pthread_sigmask() are in practice the
same thing (they only set the signal mask for the calling thread),
but the documentation states that the behaviour of sigprocmask() in a
multithreaded process is undefined. Use pthread_sigmask() instead
(which is what we do in almost all places in QEMU that alter the
signal mask already).

Signed-off-by: Peter Maydell <address@hidden>
---
 cpus.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/cpus.c b/cpus.c
index cbeb1f6..1d0fc53 100644
--- a/cpus.c
+++ b/cpus.c
@@ -778,7 +778,7 @@ static void sigbus_reraise(void)
         raise(SIGBUS);
         sigemptyset(&set);
         sigaddset(&set, SIGBUS);
-        sigprocmask(SIG_UNBLOCK, &set, NULL);
+        pthread_sigmask(SIG_UNBLOCK, &set, NULL);
     }
     perror("Failed to re-raise SIGBUS!\n");
     abort();
-- 
1.9.1




reply via email to

[Prev in Thread] Current Thread [Next in Thread]