mirror of
https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
synced 2025-01-09 14:50:19 +00:00
tools/memory-model: Expand definition of barrier
Commit 66be4e66a7f4 ("rcu: locking and unlocking need to always be at least barriers") added compiler barriers back into rcu_read_lock() and rcu_read_unlock(). Furthermore, srcu_read_lock() and srcu_read_unlock() have always contained compiler barriers. The Linux Kernel Memory Model ought to know about these barriers. This patch adds them into the memory model. Signed-off-by: Alan Stern <stern@rowland.harvard.edu> Acked-by: Andrea Parri <andrea.parri@amarulasolutions.com> Signed-off-by: Paul E. McKenney <paulmck@linux.ibm.com>
This commit is contained in:
parent
37c600a3cc
commit
f9de417121
@ -45,7 +45,8 @@ let strong-fence = mb | gp
|
||||
let nonrw-fence = strong-fence | po-rel | acq-po
|
||||
let fence = nonrw-fence | wmb | rmb
|
||||
let barrier = fencerel(Barrier | Rmb | Wmb | Mb | Sync-rcu | Sync-srcu |
|
||||
Before-atomic | After-atomic | Acquire | Release) |
|
||||
Before-atomic | After-atomic | Acquire | Release |
|
||||
Rcu-lock | Rcu-unlock | Srcu-lock | Srcu-unlock) |
|
||||
(po ; [Release]) | ([Acquire] ; po)
|
||||
|
||||
(**********************************)
|
||||
|
Loading…
x
Reference in New Issue
Block a user