urcu.c: declare noop urcu_init() function non-static
[urcu.git] / README
diff --git a/README b/README
index 71cf729598bd8e5e9223246a3b5562bbaa017dd5..ae8b6619cb5645dfcab48f3bf96d257b20b42973 100644 (file)
--- a/README
+++ b/README
@@ -29,15 +29,23 @@ Writing
        After, synchronize_rcu() must be called. When it returns, the old
        values are not in usage anymore.
 
+Being careful with signals
 
-Usage of DEBUG_FULL_MB
+       The library uses signals internally. The signal handler is
+       registered with the SA_RESTART flag. However, these signals may cause
+       some non-restartable system calls to fail with errno = EINTR. Care
+       should be taken to restart system calls manually if they fail with this
+       error. A list of non-restartable system calls may be found in
+       signal(7). To ensure the Userspace RCU library does not use signals,
+       define CONFIG_URCU_AVOID_SIGNALS at compile-time.
 
-       DEBUG_FULL_MB uses full SMP barriers for readers. This eliminates the
-       need for signals but results in slower reads.
+Usage of CONFIG_URCU_AVOID_SIGNALS
+
+       CONFIG_URCU_AVOID_SIGNALS uses full SMP barriers for readers. This
+       eliminates the need for signals but results in slower reads.
 
 
 Usage of DEBUG_YIELD
 
        DEBUG_YIELD is used to add random delays in the code for testing
        purposes.
-
This page took 0.022519 seconds and 4 git commands to generate.