]> git.apps.os.sepia.ceph.com Git - ceph-client.git/commit
rcu/exp: Remove redundant full memory barrier at the end of GP
authorFrederic Weisbecker <frederic@kernel.org>
Wed, 15 May 2024 12:53:32 +0000 (14:53 +0200)
committerPaul E. McKenney <paulmck@kernel.org>
Fri, 28 Jun 2024 13:44:12 +0000 (06:44 -0700)
commit677ab23bdf416ec8f3ecaf10d7cc8d0ccb46adab
tree5cb19cf4715bee07250a4e0c0ffbf376c4ee0a2a
parent55911a9f4287c19bf7ef29aeace14044a6ed88cb
rcu/exp: Remove redundant full memory barrier at the end of GP

A full memory barrier is necessary at the end of the expedited grace
period to order:

1) The grace period completion (pictured by the GP sequence
   number) with all preceding accesses. This pairs with rcu_seq_end()
   performed by the concurrent kworker.

2) The grace period completion and subsequent post-GP update side
   accesses. Pairs again against rcu_seq_end().

This full barrier is already provided by the final sync_exp_work_done()
test, making the subsequent explicit one redundant. Remove it and
improve comments.

Signed-off-by: Frederic Weisbecker <frederic@kernel.org>
Signed-off-by: Paul E. McKenney <paulmck@kernel.org>
Reviewed-by: Boqun Feng <boqun.feng@gmail.com>
Reviewed-by: Neeraj Upadhyay <neeraj.upadhyay@kernel.org>
kernel/rcu/tree_exp.h