mirror of https://lore.kernel.org/lkml/
 help / color / mirror / Atom feed
* [PATCH] rcu: Remove duplicate RCU exp QS report from rcu_report_dead()
@ 2022-08-30  8:31 Zqiang
  2022-08-30  9:06 ` Paul E. McKenney
  0 siblings, 1 reply; 4+ messages in thread
From: Zqiang @ 2022-08-30  8:31 UTC (permalink / raw)
  To: paulmck, frederic, quic_neeraju, joel; +Cc: rcu, linux-kernel

For PREEMPT_RCU, the rcu_report_dead() is invoked means that the
outgoing CPU mask is clear from leaf rcu_node and has no further
need of RCU, so invoke rcu_preempt_depth() return value is always
zero in rcu_report_dead(), if the current outgoing CPU rcu_data
structure's cpu_no_qs.b.exp is true, the rcu_preempt_deferred_qs()
will invoke rcu_report_exp_rdp() to report exp QS.

for non-PREEMPT_RCU, the rcu_preempt_deferred_qs() is equivalent to
rcu_report_exp_rdp().

Signed-off-by: Zqiang <qiang1.zhang@intel.com>
---
 kernel/rcu/tree.c | 2 --
 1 file changed, 2 deletions(-)

diff --git a/kernel/rcu/tree.c b/kernel/rcu/tree.c
index 6bb8e72bc815..0ca21ac0f064 100644
--- a/kernel/rcu/tree.c
+++ b/kernel/rcu/tree.c
@@ -4276,8 +4276,6 @@ void rcu_report_dead(unsigned int cpu)
 	// Do any dangling deferred wakeups.
 	do_nocb_deferred_wakeup(rdp);
 
-	/* QS for any half-done expedited grace period. */
-	rcu_report_exp_rdp(rdp);
 	rcu_preempt_deferred_qs(current);
 
 	/* Remove outgoing CPU from mask in the leaf rcu_node structure. */
-- 
2.25.1


^ permalink raw reply	[flat|nested] 4+ messages in thread

end of thread, other threads:[~2022-08-31 17:02 UTC | newest]

Thread overview: 4+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2022-08-30  8:31 [PATCH] rcu: Remove duplicate RCU exp QS report from rcu_report_dead() Zqiang
2022-08-30  9:06 ` Paul E. McKenney
2022-08-30 11:30   ` Zhang, Qiang1
2022-08-31 17:00     ` Paul E. McKenney

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox

all inboxes | Powered by JetHome®