diff options
| author | Andi Kleen <ak@suse.de> | 2006-01-11 16:42:39 -0500 |
|---|---|---|
| committer | Linus Torvalds <torvalds@g5.osdl.org> | 2006-01-11 22:01:11 -0500 |
| commit | 7eb903f4a5c35c8310f0aa7b0e94aae0b826d837 (patch) | |
| tree | 39489c4edd583ae398d7987019a4ba7315bdfcee | |
| parent | f62a91f6911479642c0018290d4248ace4287648 (diff) | |
[PATCH] x86_64: Add documentation for CPU hotplug ACPI extension
Cc: len.brown@intel.com, ashok.ray@intel.com
Signed-off-by: Andi Kleen <ak@suse.de>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
| -rw-r--r-- | Documentation/x86_64/cpu-hotplug-spec | 21 |
1 files changed, 21 insertions, 0 deletions
diff --git a/Documentation/x86_64/cpu-hotplug-spec b/Documentation/x86_64/cpu-hotplug-spec new file mode 100644 index 0000000000..5c0fa345e5 --- /dev/null +++ b/Documentation/x86_64/cpu-hotplug-spec | |||
| @@ -0,0 +1,21 @@ | |||
| 1 | Firmware support for CPU hotplug under Linux/x86-64 | ||
| 2 | --------------------------------------------------- | ||
| 3 | |||
| 4 | Linux/x86-64 supports CPU hotplug now. For various reasons Linux wants to | ||
| 5 | know in advance boot time the maximum number of CPUs that could be plugged | ||
| 6 | into the system. ACPI 3.0 currently has no official way to supply | ||
| 7 | this information from the firmware to the operating system. | ||
| 8 | |||
| 9 | In ACPI each CPU needs an LAPIC object in the MADT table (5.2.11.5 in the | ||
| 10 | ACPI 3.0 specification). ACPI already has the concept of disabled LAPIC | ||
| 11 | objects by setting the Enabled bit in the LAPIC object to zero. | ||
| 12 | |||
| 13 | For CPU hotplug Linux/x86-64 expects now that any possible future hotpluggable | ||
| 14 | CPU is already available in the MADT. If the CPU is not available yet | ||
| 15 | it should have its LAPIC Enabled bit set to 0. Linux will use the number | ||
| 16 | of disabled LAPICs to compute the maximum number of future CPUs. | ||
| 17 | |||
| 18 | In the worst case the user can overwrite this choice using a command line | ||
| 19 | option (additional_cpus=...), but it is recommended to supply the correct | ||
| 20 | number (or a reasonable approximation of it, with erring towards more not less) | ||
| 21 | in the MADT to avoid manual configuration. | ||
