Cleanup: use mutex_lock() wrapper in rculfhash
[urcu.git] / README.md
index b33095c..4615746 100644 (file)
--- a/README.md
+++ b/README.md
@@ -43,6 +43,7 @@ Currently, the following architectures are supported:
   - S390, S390x
   - ARM 32/64
   - MIPS
+  - NIOS2
   - Alpha
   - ia64
   - Sparcv9 32/64
@@ -115,13 +116,13 @@ API
 See the relevant API documentation files in `doc/`. The APIs provided by
 Userspace RCU are, by prefix:
 
-  - `rcu_`: Read-Copy Update (see [`doc/rcu-api.txt`](doc/rcu-api.txt))
+  - `rcu_`: Read-Copy Update (see [`doc/rcu-api.md`](doc/rcu-api.md))
   - `cmm_`: Concurrent Memory Model
   - `caa_`: Concurrent Architecture Abstraction
   - `cds_`: Concurrent Data Structures
-    (see [`doc/cds-api.txt`](doc/cds-api.txt))
+    (see [`doc/cds-api.md`](doc/cds-api.md))
   - `uatomic_`: Userspace Atomic
-    (see [`doc/uatomic-api.txt`](doc/uatomic-api.txt))
+    (see [`doc/uatomic-api.md`](doc/uatomic-api.md))
 
 
 Quick start guide
@@ -158,7 +159,11 @@ This is the preferred version of the library, in terms of
 grace-period detection speed, read-side speed and flexibility.
 Dynamically detects kernel support for `sys_membarrier()`. Falls back
 on `urcu-mb` scheme if support is not present, which has slower
-read-side.
+read-side. Use the --disable-sys-membarrier-fallback configure option
+to disable the fall back, thus requiring `sys_membarrier()` to be
+available. This gives a small speedup when `sys_membarrier()` is
+supported by the kernel, and aborts in the library constructor if not
+supported.
 
 
 ### Usage of `liburcu-qsbr`
@@ -262,7 +267,7 @@ Its API is currently experimental. It may change in future library releases.
     grace periods.  A number of additional functions are provided
     to manage the helper threads used by `call_rcu()`, but reasonable
     defaults are used if these additional functions are not invoked.
-    See [`doc/rcu-api.txt`](doc/rcu-api.txt) in userspace-rcu documentation
+    See [`doc/rcu-api.md`](doc/rcu-api.md) in userspace-rcu documentation
     for more details.
 
 
@@ -353,12 +358,19 @@ can be forced by specifying `--disable-compiler-tls` as configure
 argument.
 
 
-### Usage of `DEBUG_RCU`
+### Usage of `DEBUG_RCU` & `--enable-rcu-debug`
 
-`DEBUG_RCU` is used to add internal debugging self-checks to the
-RCU library. This define adds a performance penalty when enabled.
-Can be enabled by uncommenting the corresponding line in
-`Makefile.build.inc`.
+By default the library is configured with internal debugging
+self-checks disabled.
+
+For always-on debugging self-checks:
+       ./configure --enable-rcu-debug
+
+For fine grained enabling of debugging self-checks, build
+urserspace-rcu with DEBUG_RCU defined and compile dependent
+applications with DEBUG_RCU defined when necessary.
+
+Warning: Enabling this feature result in a performance penalty.
 
 
 ### Usage of `DEBUG_YIELD`
@@ -396,4 +408,4 @@ Contacts
 --------
 
 You can contact the maintainers on the following mailing list:
-`lttng-dev@lists.lttng.org`.
\ No newline at end of file
+`lttng-dev@lists.lttng.org`.
This page took 0.029396 seconds and 4 git commands to generate.