rcu: Split rcu_report_exp_cpu_mult() mask parameter and use for tracing

This commit renames the rcu_report_exp_cpu_mult() function from "mask"
to "mask_in" and introduced a "mask" local variable to better support
upcoming event-tracing additions.

Signed-off-by: Paul E. McKenney <paulmck@kernel.org>
Cc: Frederic Weisbecker <frederic@kernel.org>
Signed-off-by: Boqun Feng <boqun.feng@gmail.com>
pull/1183/head
Paul E. McKenney 2024-10-28 08:39:53 -07:00 committed by Boqun Feng
parent 2014c95afe
commit a3e8162105
1 changed files with 4 additions and 2 deletions

View File

@ -230,17 +230,19 @@ static void __maybe_unused rcu_report_exp_rnp(struct rcu_node *rnp, bool wake)
* specified leaf rcu_node structure, which is acquired by the caller. * specified leaf rcu_node structure, which is acquired by the caller.
*/ */
static void rcu_report_exp_cpu_mult(struct rcu_node *rnp, unsigned long flags, static void rcu_report_exp_cpu_mult(struct rcu_node *rnp, unsigned long flags,
unsigned long mask, bool wake) unsigned long mask_in, bool wake)
__releases(rnp->lock) __releases(rnp->lock)
{ {
int cpu; int cpu;
unsigned long mask;
struct rcu_data *rdp; struct rcu_data *rdp;
raw_lockdep_assert_held_rcu_node(rnp); raw_lockdep_assert_held_rcu_node(rnp);
if (!(rnp->expmask & mask)) { if (!(rnp->expmask & mask_in)) {
raw_spin_unlock_irqrestore_rcu_node(rnp, flags); raw_spin_unlock_irqrestore_rcu_node(rnp, flags);
return; return;
} }
mask = mask_in & rnp->expmask;
WRITE_ONCE(rnp->expmask, rnp->expmask & ~mask); WRITE_ONCE(rnp->expmask, rnp->expmask & ~mask);
for_each_leaf_node_cpu_mask(rnp, cpu, mask) { for_each_leaf_node_cpu_mask(rnp, cpu, mask) {
rdp = per_cpu_ptr(&rcu_data, cpu); rdp = per_cpu_ptr(&rcu_data, cpu);