From 8d8a9d0e7eda9feeee4af7be31932e14b512d3ad Mon Sep 17 00:00:00 2001 From: "Paul E. McKenney" Date: Sat, 4 Aug 2018 20:32:07 -0700 Subject: [PATCH] rcu: Remove obsolete ->dynticks_fqs and ->cond_resched_completed The rcu_data structure's ->dynticks_fqs is incremented but never accesses. Its ->cond_resched_completed field isn't used at all. This commit therefore removes both fields. Signed-off-by: Paul E. McKenney --- kernel/rcu/tree.c | 1 - kernel/rcu/tree.h | 12 +++--------- 2 files changed, 3 insertions(+), 10 deletions(-) diff --git a/kernel/rcu/tree.c b/kernel/rcu/tree.c index 32f500fb24d3..85c2c2dc4c4a 100644 --- a/kernel/rcu/tree.c +++ b/kernel/rcu/tree.c @@ -1039,7 +1039,6 @@ static int rcu_implicit_dynticks_qs(struct rcu_data *rdp) */ if (rcu_dynticks_in_eqs_since(rdp, rdp->dynticks_snap)) { trace_rcu_fqs(rcu_state.name, rdp->gp_seq, rdp->cpu, TPS("dti")); - rdp->dynticks_fqs++; rcu_gpnum_ovf(rnp, rdp); return 1; } diff --git a/kernel/rcu/tree.h b/kernel/rcu/tree.h index af8681fec23b..bfbf97a1c29d 100644 --- a/kernel/rcu/tree.h +++ b/kernel/rcu/tree.h @@ -203,17 +203,11 @@ struct rcu_data { int tick_nohz_enabled_snap; /* Previously seen value from sysfs. */ #endif /* #ifdef CONFIG_RCU_FAST_NO_HZ */ - /* 4) reasons this CPU needed to be kicked by force_quiescent_state */ - unsigned long dynticks_fqs; /* Kicked due to dynticks idle. */ - unsigned long cond_resched_completed; - /* Grace period that needs help */ - /* from cond_resched(). */ - - /* 5) rcu_barrier(), OOM callbacks, and expediting. */ + /* 4) rcu_barrier(), OOM callbacks, and expediting. */ struct rcu_head barrier_head; int exp_dynticks_snap; /* Double-check need for IPI. */ - /* 6) Callback offloading. */ + /* 5) Callback offloading. */ #ifdef CONFIG_RCU_NOCB_CPU struct rcu_head *nocb_head; /* CBs waiting for kthread. */ struct rcu_head **nocb_tail; @@ -240,7 +234,7 @@ struct rcu_data { /* Leader CPU takes GP-end wakeups. */ #endif /* #ifdef CONFIG_RCU_NOCB_CPU */ - /* 7) Diagnostic data, including RCU CPU stall warnings. */ + /* 6) Diagnostic data, including RCU CPU stall warnings. */ unsigned int softirq_snap; /* Snapshot of softirq activity. */ /* ->rcu_iw* fields protected by leaf rcu_node ->lock. */ struct irq_work rcu_iw; /* Check for non-irq activity. */ -- 2.25.1