From b39bd1965ed2fdeadb427648ec7e911613c8398f Mon Sep 17 00:00:00 2001 Message-Id: From: Panu Matilainen Date: Thu, 20 Jun 2019 15:07:12 +0300 Subject: [PATCH] Fix excessive use of thread local storage (RhBug:1722181), part II This essentially reverts commit ff43d03d1f9686c9ffa9232a64e253783309feb5 which made these all thread local. It might not be quite right, but then using TLS is not sensible either - threads have their own signal *mask*, but disposition is global, and most of what we do here is global anyway. In addition, the signal queue is only enabled in places where threads are not used (or would not be safe anyhow) so reverting for now seems the lesser evil. --- rpmio/rpmsq.c | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/rpmio/rpmsq.c b/rpmio/rpmsq.c index d157514e9..249a204b3 100644 --- a/rpmio/rpmsq.c +++ b/rpmio/rpmsq.c @@ -16,9 +16,9 @@ #include "debug.h" -static __thread int disableInterruptSafety; -static __thread sigset_t rpmsqCaught; -static __thread sigset_t rpmsqActive; +static int disableInterruptSafety; +static sigset_t rpmsqCaught; +static sigset_t rpmsqActive; typedef struct rpmsig_s * rpmsig; @@ -171,8 +171,8 @@ int rpmsqPoll(void) int rpmsqBlock(int op) { - static __thread sigset_t oldMask; - static __thread int blocked = 0; + static sigset_t oldMask; + static int blocked = 0; sigset_t newMask; int ret = 0; -- 2.21.0