linux-stable/kernel/rcu
Frederic Weisbecker 7562eed272 rcu/nocb: Remove superfluous memory barrier after bypass enqueue
Pre-GP accesses performed by the update side must be ordered against
post-GP accesses performed by the readers. This is ensured by the
bypass or nocb locking on enqueue time, followed by the fully ordered
rnp locking initiated while callbacks are accelerated, and then
propagated throughout the whole GP lifecyle associated with the
callbacks.

Therefore the explicit barrier advertizing ordering between bypass
enqueue and rcuo wakeup is superfluous. If anything, it would even only
order the first bypass callback enqueue against the rcuo wakeup and
ignore all the subsequent ones.

Remove the needless barrier.

Signed-off-by: Frederic Weisbecker <frederic@kernel.org>
Signed-off-by: Neeraj Upadhyay <neeraj.upadhyay@kernel.org>
2024-09-09 00:05:26 +05:30
..
Kconfig rcu: Create NEED_TASKS_RCU to factor out enablement logic 2024-04-15 11:29:48 +02:00
Kconfig.debug rcu: Restrict access to RCU CPU stall notifiers 2023-12-12 02:31:22 +05:30
Makefile rcuperf: Change rcuperf to rcuscale 2020-08-24 18:39:24 -07:00
rcu_segcblist.c rcu/nocb: Simplify (de-)offloading state machine 2024-09-09 00:03:55 +05:30
rcu_segcblist.h rcu/nocb: Simplify (de-)offloading state machine 2024-09-09 00:03:55 +05:30
rcu.h rcutorture: Make rcutorture support print rcu-tasks gp state 2024-04-16 11:16:35 +02:00
rcuscale.c rcutorture: Add missing MODULE_DESCRIPTION() macros 2024-06-06 11:44:42 -07:00
rcutorture.c rcutorture: Add missing MODULE_DESCRIPTION() macros 2024-06-06 11:44:42 -07:00
refscale.c rcutorture: Add missing MODULE_DESCRIPTION() macros 2024-06-06 11:44:42 -07:00
srcutiny.c srcu: Fill out polled grace-period APIs 2024-06-18 10:13:37 -07:00
srcutree.c Merge branches 'doc.2024.06.06a', 'fixes.2024.07.04a', 'mb.2024.06.28a', 'nocb.2024.06.03a', 'rcu-tasks.2024.06.06a', 'rcutorture.2024.06.06a' and 'srcu.2024.06.18a' into HEAD 2024-07-04 13:54:17 -07:00
sync.c rcu: Eliminate lockless accesses to rcu_sync->gp_count 2024-07-04 13:48:57 -07:00
tasks.h rcu/tasks: Fix stale task snaphot for Tasks Trace 2024-06-06 11:50:04 -07:00
tiny.c rcu: Make Tiny RCU explicitly disable preemption 2024-04-15 11:29:48 +02:00
tree_exp.h rcu/exp: Remove redundant full memory barrier at the end of GP 2024-06-28 06:44:12 -07:00
tree_nocb.h rcu/nocb: Remove superfluous memory barrier after bypass enqueue 2024-09-09 00:05:26 +05:30
tree_plugin.h rcu/nocb: Introduce nocb mutex 2024-07-29 07:34:31 +05:30
tree_stall.h rcu: Remove full memory barrier on RCU stall printout 2024-06-28 06:44:12 -07:00
tree.c rcu/nocb: Remove SEGCBLIST_RCU_CORE 2024-07-29 07:34:32 +05:30
tree.h rcu/nocb: Introduce nocb mutex 2024-07-29 07:34:31 +05:30
update.c rcu-tasks: Make Tasks RCU wait idly for grace-period delays 2024-04-09 15:11:49 +02:00