diff options
author | Manfred Spraul <manfred@colorfullife.com> | 2020-02-03 17:34:42 -0800 |
---|---|---|
committer | Linus Torvalds <torvalds@linux-foundation.org> | 2020-02-04 03:05:24 +0000 |
commit | 8116b54e7e23ef948ecac0e0ab78d10888265cab (patch) | |
tree | 78124f712b73ade494a06d584fe9286f76180076 /ipc/msg.c | |
parent | 0d97a82ba830d89a1e541cc9cd11f1e38c28e416 (diff) | |
download | linux-8116b54e7e23ef948ecac0e0ab78d10888265cab.tar.gz linux-8116b54e7e23ef948ecac0e0ab78d10888265cab.tar.bz2 linux-8116b54e7e23ef948ecac0e0ab78d10888265cab.zip |
ipc/sem.c: document and update memory barriers
Document and update the memory barriers in ipc/sem.c:
- Add smp_store_release() to wake_up_sem_queue_prepare() and
document why it is needed.
- Read q->status using READ_ONCE+smp_acquire__after_ctrl_dep().
as the pair for the barrier inside wake_up_sem_queue_prepare().
- Add comments to all barriers, and mention the rules in the block
regarding locking.
- Switch to using wake_q_add_safe().
Link: http://lkml.kernel.org/r/20191020123305.14715-6-manfred@colorfullife.com
Signed-off-by: Manfred Spraul <manfred@colorfullife.com>
Cc: Waiman Long <longman@redhat.com>
Cc: Davidlohr Bueso <dave@stgolabs.net>
Cc: <1vier1@web.de>
Cc: Peter Zijlstra <peterz@infradead.org>
Cc: Will Deacon <will.deacon@arm.com>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
Diffstat (limited to 'ipc/msg.c')
0 files changed, 0 insertions, 0 deletions