x86: move cpu_coregroup_map to common file
it is equal between architectures Signed-off-by: Glauber Costa <gcosta@redhat.com> Signed-off-by: Ingo Molnar <mingo@elte.hu>
This commit is contained in:
parent
768d95051b
commit
70708a18e8
3 changed files with 16 additions and 28 deletions
|
@ -1,6 +1,7 @@
|
||||||
#include <linux/init.h>
|
#include <linux/init.h>
|
||||||
#include <linux/smp.h>
|
#include <linux/smp.h>
|
||||||
#include <linux/module.h>
|
#include <linux/module.h>
|
||||||
|
#include <linux/sched.h>
|
||||||
|
|
||||||
/* Number of siblings per CPU package */
|
/* Number of siblings per CPU package */
|
||||||
int smp_num_siblings = 1;
|
int smp_num_siblings = 1;
|
||||||
|
@ -95,6 +96,21 @@ void __cpuinit set_cpu_sibling_map(int cpu)
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/* maps the cpu to the sched domain representing multi-core */
|
||||||
|
cpumask_t cpu_coregroup_map(int cpu)
|
||||||
|
{
|
||||||
|
struct cpuinfo_x86 *c = &cpu_data(cpu);
|
||||||
|
/*
|
||||||
|
* For perf, we return last level cache shared map.
|
||||||
|
* And for power savings, we return cpu_core_map
|
||||||
|
*/
|
||||||
|
if (sched_mc_power_savings || sched_smt_power_savings)
|
||||||
|
return per_cpu(cpu_core_map, cpu);
|
||||||
|
else
|
||||||
|
return c->llc_shared_map;
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
#ifdef CONFIG_HOTPLUG_CPU
|
#ifdef CONFIG_HOTPLUG_CPU
|
||||||
void remove_siblinginfo(int cpu)
|
void remove_siblinginfo(int cpu)
|
||||||
{
|
{
|
||||||
|
|
|
@ -260,20 +260,6 @@ static void __cpuinit smp_callin(void)
|
||||||
|
|
||||||
static int cpucount;
|
static int cpucount;
|
||||||
|
|
||||||
/* maps the cpu to the sched domain representing multi-core */
|
|
||||||
cpumask_t cpu_coregroup_map(int cpu)
|
|
||||||
{
|
|
||||||
struct cpuinfo_x86 *c = &cpu_data(cpu);
|
|
||||||
/*
|
|
||||||
* For perf, we return last level cache shared map.
|
|
||||||
* And for power savings, we return cpu_core_map
|
|
||||||
*/
|
|
||||||
if (sched_mc_power_savings || sched_smt_power_savings)
|
|
||||||
return per_cpu(cpu_core_map, cpu);
|
|
||||||
else
|
|
||||||
return c->llc_shared_map;
|
|
||||||
}
|
|
||||||
|
|
||||||
/*
|
/*
|
||||||
* Activate a secondary processor.
|
* Activate a secondary processor.
|
||||||
*/
|
*/
|
||||||
|
|
|
@ -211,20 +211,6 @@ void __cpuinit smp_callin(void)
|
||||||
cpu_set(cpuid, cpu_callin_map);
|
cpu_set(cpuid, cpu_callin_map);
|
||||||
}
|
}
|
||||||
|
|
||||||
/* maps the cpu to the sched domain representing multi-core */
|
|
||||||
cpumask_t cpu_coregroup_map(int cpu)
|
|
||||||
{
|
|
||||||
struct cpuinfo_x86 *c = &cpu_data(cpu);
|
|
||||||
/*
|
|
||||||
* For perf, we return last level cache shared map.
|
|
||||||
* And for power savings, we return cpu_core_map
|
|
||||||
*/
|
|
||||||
if (sched_mc_power_savings || sched_smt_power_savings)
|
|
||||||
return per_cpu(cpu_core_map, cpu);
|
|
||||||
else
|
|
||||||
return c->llc_shared_map;
|
|
||||||
}
|
|
||||||
|
|
||||||
/*
|
/*
|
||||||
* Setup code on secondary processor (after comming out of the trampoline)
|
* Setup code on secondary processor (after comming out of the trampoline)
|
||||||
*/
|
*/
|
||||||
|
|
Loading…
Add table
Reference in a new issue