On Tue, 21 Nov 2023 13:45:17 +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> > Reviewed-by: Gavin Shan <gshan@xxxxxxxxxx> > Signed-off-by: Russell King (Oracle) <rmk+kernel@xxxxxxxxxxxxxxx> Reviewed-by: Jonathan Cameron <Jonathan.Cameron@xxxxxxxxxx>