Skip to content

Commit

Permalink
sched: Remove unused struct sched_group_capacity::capacity_orig
Browse files Browse the repository at this point in the history
The 'struct sched_group_capacity::capacity_orig' field is no longer used
in the scheduler so we can remove it.

Signed-off-by: Vincent Guittot <vincent.guittot@linaro.org>
Signed-off-by: Peter Zijlstra (Intel) <peterz@infradead.org>
Cc: Morten.Rasmussen@arm.com
Cc: dietmar.eggemann@arm.com
Cc: efault@gmx.de
Cc: kamalesh@linux.vnet.ibm.com
Cc: linaro-kernel@lists.linaro.org
Cc: nicolas.pitre@linaro.org
Cc: preeti@linux.vnet.ibm.com
Cc: riel@redhat.com
Link: http://lkml.kernel.org/r/1425378903-5349-1-git-send-email-vincent.guittot@linaro.org
Signed-off-by: Ingo Molnar <mingo@kernel.org>
  • Loading branch information
Vincent Guittot authored and Ingo Molnar committed Mar 27, 2015
1 parent ea67821 commit dc7ff76
Show file tree
Hide file tree
Showing 3 changed files with 4 additions and 23 deletions.
12 changes: 0 additions & 12 deletions kernel/sched/core.c
Original file line number Diff line number Diff line change
Expand Up @@ -5447,17 +5447,6 @@ static int sched_domain_debug_one(struct sched_domain *sd, int cpu, int level,
break;
}

/*
* Even though we initialize ->capacity to something semi-sane,
* we leave capacity_orig unset. This allows us to detect if
* domain iteration is still funny without causing /0 traps.
*/
if (!group->sgc->capacity_orig) {
printk(KERN_CONT "\n");
printk(KERN_ERR "ERROR: domain->cpu_capacity not set\n");
break;
}

if (!cpumask_weight(sched_group_cpus(group))) {
printk(KERN_CONT "\n");
printk(KERN_ERR "ERROR: empty group\n");
Expand Down Expand Up @@ -5941,7 +5930,6 @@ build_overlap_sched_groups(struct sched_domain *sd, int cpu)
* die on a /0 trap.
*/
sg->sgc->capacity = SCHED_CAPACITY_SCALE * cpumask_weight(sg_span);
sg->sgc->capacity_orig = sg->sgc->capacity;

/*
* Make sure the first group of this domain contains the
Expand Down
13 changes: 3 additions & 10 deletions kernel/sched/fair.c
Original file line number Diff line number Diff line change
Expand Up @@ -6073,7 +6073,6 @@ static void update_cpu_capacity(struct sched_domain *sd, int cpu)
capacity >>= SCHED_CAPACITY_SHIFT;

cpu_rq(cpu)->cpu_capacity_orig = capacity;
sdg->sgc->capacity_orig = capacity;

capacity *= scale_rt_capacity(cpu);
capacity >>= SCHED_CAPACITY_SHIFT;
Expand All @@ -6089,7 +6088,7 @@ void update_group_capacity(struct sched_domain *sd, int cpu)
{
struct sched_domain *child = sd->child;
struct sched_group *group, *sdg = sd->groups;
unsigned long capacity, capacity_orig;
unsigned long capacity;
unsigned long interval;

interval = msecs_to_jiffies(sd->balance_interval);
Expand All @@ -6101,7 +6100,7 @@ void update_group_capacity(struct sched_domain *sd, int cpu)
return;
}

capacity_orig = capacity = 0;
capacity = 0;

if (child->flags & SD_OVERLAP) {
/*
Expand All @@ -6121,19 +6120,15 @@ void update_group_capacity(struct sched_domain *sd, int cpu)
* Use capacity_of(), which is set irrespective of domains
* in update_cpu_capacity().
*
* This avoids capacity/capacity_orig from being 0 and
* This avoids capacity from being 0 and
* causing divide-by-zero issues on boot.
*
* Runtime updates will correct capacity_orig.
*/
if (unlikely(!rq->sd)) {
capacity_orig += capacity_orig_of(cpu);
capacity += capacity_of(cpu);
continue;
}

sgc = rq->sd->groups->sgc;
capacity_orig += sgc->capacity_orig;
capacity += sgc->capacity;
}
} else {
Expand All @@ -6144,13 +6139,11 @@ void update_group_capacity(struct sched_domain *sd, int cpu)

group = child->groups;
do {
capacity_orig += group->sgc->capacity_orig;
capacity += group->sgc->capacity;
group = group->next;
} while (group != child->groups);
}

sdg->sgc->capacity_orig = capacity_orig;
sdg->sgc->capacity = capacity;
}

Expand Down
2 changes: 1 addition & 1 deletion kernel/sched/sched.h
Original file line number Diff line number Diff line change
Expand Up @@ -826,7 +826,7 @@ struct sched_group_capacity {
* CPU capacity of this group, SCHED_LOAD_SCALE being max capacity
* for a single CPU.
*/
unsigned int capacity, capacity_orig;
unsigned int capacity;
unsigned long next_update;
int imbalance; /* XXX unrelated to capacity but shared group state */
/*
Expand Down

0 comments on commit dc7ff76

Please sign in to comment.