drivers: base: Move cpu_dev_init() after node_dev_init()
authorJames Morse <james.morse@arm.com>
Tue, 21 Nov 2023 13:44:41 +0000 (13:44 +0000)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Wed, 6 Dec 2023 03:41:49 +0000 (12:41 +0900)
NUMA systems require the node descriptions to be ready before CPUs are
registered. This is so that the node symlinks can be created in sysfs.

Currently no NUMA platform uses GENERIC_CPU_DEVICES, meaning that CPUs
are registered by arch code, instead of cpu_dev_init().

Move cpu_dev_init() after node_dev_init() so that NUMA architectures
can use GENERIC_CPU_DEVICES.

Signed-off-by: James Morse <james.morse@arm.com>
Signed-off-by: "Russell King (Oracle)" <rmk+kernel@armlinux.org.uk>
Reviewed-by: Gavin Shan <gshan@redhat.com>
Reviewed-by: Jonathan Cameron <Jonathan.Cameron@huawei.com>
Reviewed-by: Thomas Gleixner <tglx@linutronix.de>
Link: https://lore.kernel.org/r/E1r5R3R-00CszO-C0@rmk-PC.armlinux.org.uk
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
drivers/base/init.c

index 397eb9880cecb8ed39914880bf64e879a8c94b32..c4954835128cfedaef237fd356ce371115673b5d 100644 (file)
@@ -35,8 +35,8 @@ void __init driver_init(void)
        of_core_init();
        platform_bus_init();
        auxiliary_bus_init();
-       cpu_dev_init();
        memory_dev_init();
        node_dev_init();
+       cpu_dev_init();
        container_dev_init();
 }