X-Git-Url: http://git.liburcu.org/?a=blobdiff_plain;f=README;h=2fae654de9a0aac1bf4e5ea83eebb70656757283;hb=dd052bd346ddd497ed79f771ea1d5b3406bbcf07;hp=d71bbe7597e1fb893cd13742cbb16f6e7ef61e1c;hpb=c97ae6eb5bf6baea503d9df98e8376c0bd36b629;p=urcu.git diff --git a/README b/README index d71bbe7..2fae654 100644 --- a/README +++ b/README @@ -26,9 +26,17 @@ Reading Writing rcu_assign_pointer() and rcu_xchg_pointer() may be called anywhere. - After, synchronize_rcu() must be called. When it returns, the old values - are not in usage anymore. + After, synchronize_rcu() must be called. When it returns, the old + values are not in usage anymore. +Being careful with signals + + 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). Usage of DEBUG_FULL_MB