summary refs log tree commit diff
path: root/drivers/gpio/gpio-mvebu.c
diff options
context:
space:
mode:
authorDavidlohr Bueso <dave@stgolabs.net>2015-06-30 14:58:39 -0700
committerLinus Torvalds <torvalds@linux-foundation.org>2015-06-30 19:44:58 -0700
commitff35e5ef86fea1fa84eb7fdc939d0b1e3f1222bf (patch)
treedcbd89deb61c178925663ce5ad0457f232715a23 /drivers/gpio/gpio-mvebu.c
parentc5c8975b2eb4eb7604e8ce4f762987f56d2a96a2 (diff)
downloadlinux-ff35e5ef86fea1fa84eb7fdc939d0b1e3f1222bf.tar.gz
ipc,msg: provide barrier pairings for lockless receive
We currently use a full barrier on the sender side to to avoid receiver
tasks disappearing on us while still performing on the sender side wakeup.
 We lack however, the proper CPU-CPU interactions pairing on the receiver
side which busy-waits for the message.  Similarly, we do not need a full
smp_mb, and can relax the semantics for the writer and reader sides of the
message.  This is safe as we are only ordering loads and stores to r_msg.
And in both smp_wmb and smp_rmb, there are no stores after the calls
_anyway_.

This obviously applies for pipelined_send and expunge_all, for EIRDM when
destroying a queue.

Signed-off-by: Davidlohr Bueso <dbueso@suse.de>
Cc: Manfred Spraul <manfred@colorfullife.com>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
Diffstat (limited to 'drivers/gpio/gpio-mvebu.c')
0 files changed, 0 insertions, 0 deletions