blob: ac0b270b456c107bd3aa9f91a1c43d85d5086fd8 [file] [log] [blame]
Joel Fernandes (Google)a5918902020-03-22 21:57:34 -04001============
2LITMUS TESTS
3============
4
Akira Yokosawacdaac9d2020-05-10 15:12:57 +09005Each subdirectory contains litmus tests that are typical to describe the
6semantics of respective kernel APIs.
7For more information about how to "run" a litmus test or how to generate
8a kernel test module based on a litmus test, please see
9tools/memory-model/README.
10
11
12atomic (/atomic derectory)
13--------------------------
14
15Atomic-RMW+mb__after_atomic-is-stronger-than-acquire.litmus
16 Test that an atomic RMW followed by a smp_mb__after_atomic() is
17 stronger than a normal acquire: both the read and write parts of
18 the RMW are ordered before the subsequential memory accesses.
19
20Atomic-RMW-ops-are-atomic-WRT-atomic_set.litmus
21 Test that atomic_set() cannot break the atomicity of atomic RMWs.
22
23
Joel Fernandes (Google)a5918902020-03-22 21:57:34 -040024RCU (/rcu directory)
25--------------------
26
27RCU+sync+read.litmus
28RCU+sync+free.litmus
29 Both the above litmus tests demonstrate the RCU grace period guarantee
30 that an RCU read-side critical section can never span a grace period.