Messages in this thread | | | Date | Tue, 30 Apr 2024 14:31:22 +1000 | Subject | Re: [PATCH v8 13/16] arm64: arch_register_cpu() variant to check if an ACPI handle is now available. | From | Gavin Shan <> |
| |
On 4/26/24 23:51, Jonathan Cameron wrote: > The ARM64 architecture does not support physical CPU HP today. > To avoid any possibility of a bug against such an architecture if defined > in future, check for the physical CPU HP case (not present) and > return an error on any such attempt. > > On ARM64 virtual CPU Hotplug relies on the status value that can be > queried via the AML method _STA for the CPU object. > > There are two conditions in which the CPU can be registered. > 1) ACPI disabled. > 2) ACPI enabled and the acpi_handle is available. > _STA evaluates to the CPU is both enabled and present. > (Note that in absence of the _STA method they are always in this > state). > > If neither of these conditions is met the CPU is not 'yet' ready > to be used and -EPROBE_DEFER is returned. > > Success occurs in the early attempt to register the CPUs if we > are booting with DT (no concept yet of vCPU HP) if not it succeeds > for already enabled CPUs when the ACPI Processor driver attaches to > them. Finally it may succeed via the CPU Hotplug code indicating that > the CPU is now enabled. > > For ACPI if CONFIG_ACPI_PROCESSOR the only path to get to > arch_register_cpu() with that handle set is via > acpi_processor_hot_add_init() which is only called from an ACPI bus > scan in which _STA has already been queried there is no need to > repeat it here. Add a comment to remind us of this in the future. > > Suggested-by: Rafael J. Wysocki <rafael@kernel.org> > Tested-by: Miguel Luis <miguel.luis@oracle.com> > Signed-off-by: Jonathan Cameron <Jonathan.Cameron@huawei.com> > --- > V8: No change. (tags collected only) > --- > arch/arm64/kernel/smp.c | 53 +++++++++++++++++++++++++++++++++++++++++ > 1 file changed, 53 insertions(+) >
Reviewed-by: Gavin Shan <gshan@redhat.com>
| |