[PATCH] Dont create a control file for BSP that cannot be removed

From: Ashok Raj
Date: Fri Mar 17 2006 - 07:28:22 EST

Hi Andrew

this patch just doesnt create an online file if the logical cpu cannot be

We originally added to support ppc64 if the kernel has support but BIOS indicated
no offline support, we just didnt create online files for them.

We used the same method in ia64 as well, if we have a cpu taking platform interrupts
but cannot be removed if those interrupts cannot be re-targeted to another cpu.

Ashok Raj
- Open Source Technology Center

Don't create "online" control file for BSP (i386/x86_64) since its
not removable.

Signed-off-by: Ashok Raj <ashok.raj@xxxxxxxxx>
arch/i386/kernel/topology.c | 9 +++++++++
1 files changed, 9 insertions(+)

Index: linux-2.6.16-rc6-mm1/arch/i386/kernel/topology.c
--- linux-2.6.16-rc6-mm1.orig/arch/i386/kernel/topology.c
+++ linux-2.6.16-rc6-mm1/arch/i386/kernel/topology.c
@@ -41,6 +41,15 @@ int arch_register_cpu(int num){
parent = &node_devices[node].node;
#endif /* CONFIG_NUMA */

+ /*
+ * CPU0 cannot be offlined due to several
+ * restrictions and assumptions in kernel. This basically
+ * doesnt add a control file, one cannot attempt to offline
+ * BSP.
+ */
+ if (!num)
+ cpu_devices[num].cpu.no_control = 1;
return register_cpu(&cpu_devices[num].cpu, num, parent);

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/