lkml.org 
[lkml]   [2005]   [Sep]   [1]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
/
From
SubjectRe: [patch 1/1] Hot plug CPU to support physical add of new processors (i386)
Date
Hallo Natalie,

On Wednesday 31 August 2005 14:13, Natalie.Protasevich@unisys.com wrote:
> Current IA32 CPU hotplug code doesn't allow bringing up processors that
> were not present in the boot configuration. To make existing hot plug
> facility more practical for physical hot plug, possible processors should
> be encountered during boot for potentual hot add/replace/remove. On ES7000,
> ACPI marks all the sockets that are empty or not assigned to the
> partitionas as "disabled".

Good idea. In fact I always hated the behaviour of the existing
hotplug code that assumes all possible CPUs can be hotplugged.
It would be much nicer to be told be the firmware what CPUs
are hotpluggable. It would be great if all ia32/x86-64 hotplug capable
BIOS behaved like your.


> struct warm_boot_cpu_info info;
> struct work_struct task;
> int apicid, ret;
> + extern u8 bios_cpu_apicid[NR_CPUS];

This should be in some header.

>
> lock_cpu_hotplug();
> - apicid = x86_cpu_to_apicid[cpu];
> + apicid = bios_cpu_apicid[cpu];

Why this change? It seems unrelated.

> if (apicid == BAD_APICID) {
> ret = -ENODEV;
> goto exit;
> diff -puN arch/i386/mach-default/topology.c~hotcpu-i386
> arch/i386/mach-default/topology.c ---
> linux-2.6.13-rc6-mm2/arch/i386/mach-default/topology.c~hotcpu-i386 2005-08-
>31 04:17:20.957019600 -0700 +++
> linux-2.6.13-rc6-mm2-root/arch/i386/mach-default/topology.c 2005-08-31
> 04:22:13.020619184 -0700 @@ -76,7 +76,7 @@ static int __init
> topology_init(void)
> for_each_online_node(i)
> arch_register_node(i);
>
> - for_each_present_cpu(i)
> + for_each_cpu(i)

This looks wrong. The CPUs should be in the present mask
if it's present. Followup code similar.

BTW shouldn't there be some attribute in sysfs that says
"CPU disabled"?

-Andi
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/

\
 
 \ /
  Last update: 2005-09-01 10:48    [W:0.082 / U:0.372 seconds]
©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site