cpu-hotplug-spec.rst 1.2 KB

123456789101112131415161718192021222324
  1. .. SPDX-License-Identifier: GPL-2.0
  2. ===================================================
  3. Firmware support for CPU hotplug under Linux/x86-64
  4. ===================================================
  5. Linux/x86-64 supports CPU hotplug now. For various reasons Linux wants to
  6. know in advance of boot time the maximum number of CPUs that could be plugged
  7. into the system. ACPI 3.0 currently has no official way to supply
  8. this information from the firmware to the operating system.
  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. For CPU hotplug Linux/x86-64 expects now that any possible future hotpluggable
  13. CPU is already available in the MADT. If the CPU is not available yet
  14. it should have its LAPIC Enabled bit set to 0. Linux will use the number
  15. of disabled LAPICs to compute the maximum number of future CPUs.
  16. In the worst case the user can overwrite this choice using a command line
  17. option (additional_cpus=...), but it is recommended to supply the correct
  18. number (or a reasonable approximation of it, with erring towards more not less)
  19. in the MADT to avoid manual configuration.