[PATCH RFC tip/core/rcu 0/15] Remove to-be-unneeded smp_read_barrier_depends()
From: Paul E. McKenney
Date: Mon Oct 09 2017 - 20:20:02 EST
Hello!
Will Deacon has proposed adding smp_read_barrier_depends() to READ_ONCE(),
which would mean that quite a few instances of smp_read_barrier_depends()
would become redundant. This series depends on Will's change and removes
those smp_read_barrier_depends(), while fixing a bug or two along the
way. Some of these bugs are subtle, hence posting this sooner rather
than later.
This patch series depends on an in-progress series from Mark Rutland that
changes all calls to ACCESS_ONCE() to either READ_ONCE() or WRITE_ONCE(),
depending. This patch series also depends on an upcoming patch from Will
Deacon that adds smp_read_barrier_depends() to Alpha's relaxed/release
RMW atomic operations.
As Will pointed out, once all of these patch series are in place, the
core kernel will no longer need any Alpha-specific code, with the sole
exception of READ_ONCE() and of course smp_read_barrier_depends() itself.
Pretty cool, huh? ;-)
Thanx, Paul
------------------------------------------------------------------------
Documentation/memory-barriers.txt | 11 ++++++-----
arch/mn10300/kernel/mn10300-serial.c | 7 +++++--
drivers/net/ethernet/qlogic/qed/qed_spq.c | 4 +---
fs/dcache.c | 10 +++-------
include/linux/assoc_array_priv.h | 5 +++--
include/linux/percpu-refcount.h | 6 +++---
include/linux/rcupdate.h | 23 +++++++++++------------
include/linux/rtnetlink.h | 3 +--
include/linux/seqlock.h | 3 +--
kernel/events/uprobes.c | 12 ++++++------
kernel/locking/qspinlock.c | 12 +++++-------
kernel/tracepoint.c | 9 ++++-----
lib/assoc_array.c | 20 ++------------------
lib/percpu-refcount.c | 8 ++++----
mm/ksm.c | 9 +--------
net/ipv4/netfilter/arp_tables.c | 7 +------
net/ipv4/netfilter/ip_tables.c | 7 +------
net/ipv6/netfilter/ip6_tables.c | 7 +------
security/keys/keyring.c | 7 -------
19 files changed, 59 insertions(+), 111 deletions(-)