automake: Rename INCLUDES to AM_CPPFLAGS (new name)
[urcu.git] / urcu.c
diff --git a/urcu.c b/urcu.c
index 1d5c06f53c565af243fb45c5e47c1ebb609dff97..a016bbda89db8ca970014728f24b24d738fb4464 100644 (file)
--- a/urcu.c
+++ b/urcu.c
@@ -66,7 +66,7 @@
  * RCU_MEMBARRIER is only possibly available on Linux.
  */
 #if defined(RCU_MEMBARRIER) && defined(__linux__)
-#include <syscall.h>
+#include <urcu/syscall-compat.h>
 #endif
 
 /* If the headers do not support SYS_membarrier, fall back on RCU_MB */
@@ -109,11 +109,6 @@ struct rcu_gp rcu_gp = { .ctr = RCU_GP_COUNT };
  */
 DEFINE_URCU_TLS(struct rcu_reader, rcu_reader);
 
-#ifdef DEBUG_YIELD
-unsigned int rcu_yield_active;
-DEFINE_URCU_TLS(unsigned int, rcu_rand_yield);
-#endif
-
 static CDS_LIST_HEAD(registry);
 
 /*
@@ -513,14 +508,14 @@ void rcu_init(void)
 
 void rcu_exit(void)
 {
-       struct sigaction act;
-       int ret;
-
-       ret = sigaction(SIGRCU, NULL, &act);
-       if (ret)
-               urcu_die(errno);
-       assert(act.sa_sigaction == sigrcu_handler);
-       assert(cds_list_empty(&registry));
+       /*
+        * Don't unregister the SIGRCU signal handler anymore, because
+        * call_rcu threads could still be using it shortly before the
+        * application exits.
+        * Assertion disabled because call_rcu threads are now rcu
+        * readers, and left running at exit.
+        * assert(cds_list_empty(&registry));
+        */
 }
 
 #endif /* #ifdef RCU_SIGNAL */
This page took 0.023625 seconds and 4 git commands to generate.