[PATCH v2 2/9] rcu: Remove superfluous local variable in rcu_init_geometry()

From: Alexander Gordeev
Date: Fri May 29 2015 - 05:54:25 EST


Local variable 'n' mimics 'nr_cpu_ids' while the both are
used within one function. There is no reason for 'n' to
exist whatsoever.

Cc: "Paul E. McKenney" <paulmck@xxxxxxxxxxxxxxxxxx>
Cc: Steven Rostedt <rostedt@xxxxxxxxxxx>
Signed-off-by: Alexander Gordeev <agordeev@xxxxxxxxxx>
---
kernel/rcu/tree.c | 14 +++++++-------
1 file changed, 7 insertions(+), 7 deletions(-)

diff --git a/kernel/rcu/tree.c b/kernel/rcu/tree.c
index 66a4230..6a418be 100644
--- a/kernel/rcu/tree.c
+++ b/kernel/rcu/tree.c
@@ -4083,7 +4083,6 @@ static void __init rcu_init_geometry(void)
ulong d;
int i;
int j;
- int n = nr_cpu_ids;
int rcu_capacity[MAX_RCU_LVLS + 1];

/*
@@ -4126,7 +4125,7 @@ static void __init rcu_init_geometry(void)
* the rcu_node masks. Complain and fall back to the compile-
* time values if these limits are exceeded.
*/
- if (n > rcu_capacity[MAX_RCU_LVLS])
+ if (nr_cpu_ids > rcu_capacity[MAX_RCU_LVLS])
panic("rcu_init_geometry: rcu_capacity[] is too small");
else if (rcu_fanout_leaf < RCU_FANOUT_LEAF ||
rcu_fanout_leaf > sizeof(unsigned long) * 8) {
@@ -4136,10 +4135,11 @@ static void __init rcu_init_geometry(void)

/* Calculate the number of rcu_nodes at each level of the tree. */
for (i = 1; i <= MAX_RCU_LVLS; i++)
- if (n <= rcu_capacity[i]) {
- for (j = 0; j <= i; j++)
- num_rcu_lvl[j] =
- DIV_ROUND_UP(n, rcu_capacity[i - j]);
+ if (nr_cpu_ids <= rcu_capacity[i]) {
+ for (j = 0; j <= i; j++) {
+ int cap = rcu_capacity[i - j];
+ num_rcu_lvl[j] = DIV_ROUND_UP(nr_cpu_ids, cap);
+ }
rcu_num_lvls = i;
for (j = i + 1; j <= MAX_RCU_LVLS; j++)
num_rcu_lvl[j] = 0;
@@ -4150,7 +4150,7 @@ static void __init rcu_init_geometry(void)
rcu_num_nodes = 0;
for (i = 0; i <= MAX_RCU_LVLS; i++)
rcu_num_nodes += num_rcu_lvl[i];
- rcu_num_nodes -= n;
+ rcu_num_nodes -= nr_cpu_ids;
}

/*
--
1.8.3.1

--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/