Commit b99c6ebe authored by David S. Miller's avatar David S. Miller

sparc64: Fix UP bootup regression.

Commit b696fdc2 ("sparc64: Defer
cpu_data() setup until end of per-cpu data initialization.") broke
bootup for UP builds because the cpu_data() initialization only
occurs in setup_per_cpu_areas() which is never compiled in nor
called in UP builds.

Fix this up by calling the setups directly from init_64.c when
non-SMP.
Reported-by: default avatarAlexander Beregalov <a.beregalov@gmail.com>
Tested-by: default avatarAlexander Beregalov <a.beregalov@gmail.com>
Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
parent aaa7e2f7
...@@ -1796,10 +1796,16 @@ void __init paging_init(void) ...@@ -1796,10 +1796,16 @@ void __init paging_init(void)
prom_build_devicetree(); prom_build_devicetree();
of_populate_present_mask(); of_populate_present_mask();
#ifndef CONFIG_SMP
of_fill_in_cpu_data();
#endif
if (tlb_type == hypervisor) { if (tlb_type == hypervisor) {
sun4v_mdesc_init(); sun4v_mdesc_init();
mdesc_populate_present_mask(cpu_all_mask); mdesc_populate_present_mask(cpu_all_mask);
#ifndef CONFIG_SMP
mdesc_fill_in_cpu_data(cpu_all_mask);
#endif
} }
/* Once the OF device tree and MDESC have been setup, we know /* Once the OF device tree and MDESC have been setup, we know
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment