43 lines
1.3 KiB
Diff
43 lines
1.3 KiB
Diff
From: Thomas Renninger <trenn@suse.de>
|
|
Subject: Do not try to set up acpi processor stuff on cores exceeding maxcpus=
|
|
References: bnc#601520
|
|
Patch-Mainline: Not yet
|
|
|
|
Signed-off-by: Thomas Renninger <trenn@suse.de>
|
|
|
|
---
|
|
drivers/acpi/processor_driver.c | 5 +++++
|
|
init/main.c | 3 ++-
|
|
2 files changed, 7 insertions(+), 1 deletion(-)
|
|
|
|
Index: linux-2.6.34-master/init/main.c
|
|
===================================================================
|
|
--- linux-2.6.34-master.orig/init/main.c
|
|
+++ linux-2.6.34-master/init/main.c
|
|
@@ -124,7 +124,8 @@ static char *ramdisk_execute_command;
|
|
|
|
#ifdef CONFIG_SMP
|
|
/* Setup configured maximum number of CPUs to activate */
|
|
-unsigned int __initdata setup_max_cpus = NR_CPUS;
|
|
+unsigned int setup_max_cpus = NR_CPUS;
|
|
+EXPORT_SYMBOL(setup_max_cpus);
|
|
|
|
/*
|
|
* Setup routine for controlling SMP activation
|
|
Index: linux-2.6.34-master/drivers/acpi/processor_driver.c
|
|
===================================================================
|
|
--- linux-2.6.34-master.orig/drivers/acpi/processor_driver.c
|
|
+++ linux-2.6.34-master/drivers/acpi/processor_driver.c
|
|
@@ -581,6 +581,11 @@ static int __cpuinit acpi_processor_add(
|
|
return 0;
|
|
}
|
|
|
|
+#ifdef CONFIG_SMP
|
|
+ if (pr->id >= setup_max_cpus && pr->id != 0)
|
|
+ return 0;
|
|
+#endif
|
|
+
|
|
BUG_ON((pr->id >= nr_cpu_ids) || (pr->id < 0));
|
|
|
|
/*
|