Commit ee79d1bd authored by Heiko Carstens's avatar Heiko Carstens Committed by Ingo Molnar

sched: let arch_update_cpu_topology indicate if topology changed

Change arch_update_cpu_topology so it returns 1 if the cpu topology changed
and 0 if it didn't change. This will be useful for the next patch which adds
a call to this function in partition_sched_domains.
Signed-off-by: default avatarHeiko Carstens <heiko.carstens@de.ibm.com>
Signed-off-by: default avatarIngo Molnar <mingo@elte.hu>
parent c1dfdc75
...@@ -212,7 +212,7 @@ static void update_cpu_core_map(void) ...@@ -212,7 +212,7 @@ static void update_cpu_core_map(void)
cpu_core_map[cpu] = cpu_coregroup_map(cpu); cpu_core_map[cpu] = cpu_coregroup_map(cpu);
} }
void arch_update_cpu_topology(void) int arch_update_cpu_topology(void)
{ {
struct tl_info *info = tl_info; struct tl_info *info = tl_info;
struct sys_device *sysdev; struct sys_device *sysdev;
...@@ -221,7 +221,7 @@ void arch_update_cpu_topology(void) ...@@ -221,7 +221,7 @@ void arch_update_cpu_topology(void)
if (!machine_has_topology) { if (!machine_has_topology) {
update_cpu_core_map(); update_cpu_core_map();
topology_update_polarization_simple(); topology_update_polarization_simple();
return; return 0;
} }
stsi(info, 15, 1, 2); stsi(info, 15, 1, 2);
tl_to_cores(info); tl_to_cores(info);
...@@ -230,6 +230,7 @@ void arch_update_cpu_topology(void) ...@@ -230,6 +230,7 @@ void arch_update_cpu_topology(void)
sysdev = get_cpu_sysdev(cpu); sysdev = get_cpu_sysdev(cpu);
kobject_uevent(&sysdev->kobj, KOBJ_CHANGE); kobject_uevent(&sysdev->kobj, KOBJ_CHANGE);
} }
return 1;
} }
static void topology_work_fn(struct work_struct *work) static void topology_work_fn(struct work_struct *work)
......
...@@ -49,7 +49,7 @@ ...@@ -49,7 +49,7 @@
for_each_online_node(node) \ for_each_online_node(node) \
if (nr_cpus_node(node)) if (nr_cpus_node(node))
void arch_update_cpu_topology(void); int arch_update_cpu_topology(void);
/* Conform to ACPI 2.0 SLIT distance definitions */ /* Conform to ACPI 2.0 SLIT distance definitions */
#define LOCAL_DISTANCE 10 #define LOCAL_DISTANCE 10
......
...@@ -7675,8 +7675,14 @@ static struct sched_domain_attr *dattr_cur; ...@@ -7675,8 +7675,14 @@ static struct sched_domain_attr *dattr_cur;
*/ */
static cpumask_t fallback_doms; static cpumask_t fallback_doms;
void __attribute__((weak)) arch_update_cpu_topology(void) /*
* arch_update_cpu_topology lets virtualized architectures update the
* cpu core maps. It is supposed to return 1 if the topology changed
* or 0 if it stayed the same.
*/
int __attribute__((weak)) arch_update_cpu_topology(void)
{ {
return 0;
} }
/* /*
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment