Re: [PATCH RFC v3 10/21] ACPI: Check _STA present bit before making CPUs not present

Jonathan Cameron
2023-12-15T16:18:07Z

On Wed, 13 Dec 2023 12:50:02 +0000
Russell King (Oracle) <rmk+kernel@armlinux.org.uk> wrote:

> From: James Morse <james.morse@arm.com>
>
> When called acpi_processor_post_eject() unconditionally make a CPU
> not-present and unregisters it.
>
> To add support for AML events where the CPU has become disabled, but
> remains present, the _STA method should be checked before calling
> acpi_processor_remove().
>
> Rename acpi_processor_post_eject() acpi_processor_remove_possible(), and
> check the _STA before calling.
>
> Adding the function prototype for arch_unregister_cpu() allows the
> preprocessor guards to be removed.
>
> After this change CPUs will remain registered and visible to
> user-space as offline if buggy firmware triggers an eject-request,
> but doesn't clear the corresponding _STA bits after _EJ0 has been
> called.
>
> Signed-off-by: James Morse <james.morse@arm.com>
> Tested-by: Miguel Luis <miguel.luis@oracle.com>
> Tested-by: Vishnu Pajjuri <vishnu@os.amperecomputing.com>
> Tested-by: Jianyong Wu <jianyong.wu@arm.com>
LGTM
Reviewed-by: Jonathan Cameron <Jonathan.Cameron@huawei.com>