linux/Documentation/litmus-tests/README
<<
>>
Prefs
   1============
   2LITMUS TESTS
   3============
   4
   5Each 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    NOTE: Require herd7 7.56 or later which supports "(void)expr".
  23
  24
  25RCU (/rcu directory)
  26--------------------
  27
  28MP+onceassign+derefonce.litmus (under tools/memory-model/litmus-tests/)
  29    Demonstrates the use of rcu_assign_pointer() and rcu_dereference() to
  30    ensure that an RCU reader will not see pre-initialization garbage.
  31
  32RCU+sync+read.litmus
  33RCU+sync+free.litmus
  34    Both the above litmus tests demonstrate the RCU grace period guarantee
  35    that an RCU read-side critical section can never span a grace period.
  36