Re: [PATCH RFC 18/22] LoongArch: Switch over to GENERIC_CPU_DEVICES

From: Jonathan Cameron
Date: Tue Nov 28 2023 - 10:19:44 EST


On Tue, 07 Nov 2023 10:30:51 +0000
Russell King <rmk+kernel@xxxxxxxxxxxxxxx> wrote:

> From: James Morse <james.morse@xxxxxxx>
>
> Now that GENERIC_CPU_DEVICES calls arch_register_cpu(), which can be
> overridden by the arch code, switch over to this to allow common code
> to choose when the register_cpu() call is made.
>
> This allows topology_init() to be removed.
>
> This is an intermediate step to the logic being moved to drivers/acpi,
> where GENERIC_CPU_DEVICES will do the work when booting with acpi=off.
>
> This is a subtle change. Originally:
> - on boot, topology_init() would have marked present CPUs that
> io_master() is true for as hotplug-incapable.
> - if a CPU is hotplugged that is an io_master(), it can later be
> hot-unplugged.
>
> The new behaviour is that any CPU that io_master() is true for will
> now always be marked as hotplug-incapable, thus even if it was
> hotplugged, it can no longer be hot-unplugged.
>
> This patch also has the effect of moving the registration of CPUs from
> subsys to driver core initialisation, prior to any initcalls running.
>
> Signed-off-by: James Morse <james.morse@xxxxxxx>
> Signed-off-by: Russell King (Oracle) <rmk+kernel@xxxxxxxxxxxxxxx>
Reviewed-by: Jonathan Cameron <Jonathan.Cameron@xxxxxxxxxx>