[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] [Xen-devel] [PATCH v1 1/2] system_state: introduce SYS_STATE_smp_booted
The new state means that all secondary CPUs are up. On x86 this also means that a microcode was (potentially) updated on all CPUs. On ARM side of things, additionally set system_state to SYS_STATE_smp_boot just before bringing up secondary CPUs. Signed-off-by: Sergey Dyasli <sergey.dyasli@xxxxxxxxxx> --- xen/arch/arm/setup.c | 4 ++++ xen/arch/x86/setup.c | 2 ++ xen/include/xen/kernel.h | 1 + 3 files changed, 7 insertions(+) diff --git a/xen/arch/arm/setup.c b/xen/arch/arm/setup.c index e83221ab79..21baee534e 100644 --- a/xen/arch/arm/setup.c +++ b/xen/arch/arm/setup.c @@ -915,6 +915,8 @@ void __init start_xen(unsigned long boot_phys_offset, console_init_postirq(); + system_state = SYS_STATE_smp_boot; + do_presmp_initcalls(); for_each_present_cpu ( i ) @@ -930,6 +932,8 @@ void __init start_xen(unsigned long boot_phys_offset, printk("Brought up %ld CPUs\n", (long)num_online_cpus()); /* TODO: smp_cpus_done(); */ + system_state = SYS_STATE_smp_booted; + setup_virt_paging(); iommu_setup(); diff --git a/xen/arch/x86/setup.c b/xen/arch/x86/setup.c index 9cbff22fb3..189481608d 100644 --- a/xen/arch/x86/setup.c +++ b/xen/arch/x86/setup.c @@ -1683,6 +1683,8 @@ void __init noreturn __start_xen(unsigned long mbi_p) } } + system_state = SYS_STATE_smp_booted; + printk("Brought up %ld CPUs\n", (long)num_online_cpus()); if ( num_parked ) printk(XENLOG_INFO "Parked %u CPUs\n", num_parked); diff --git a/xen/include/xen/kernel.h b/xen/include/xen/kernel.h index 548b64da9f..bbf255943f 100644 --- a/xen/include/xen/kernel.h +++ b/xen/include/xen/kernel.h @@ -93,6 +93,7 @@ extern enum system_state { SYS_STATE_early_boot, SYS_STATE_boot, SYS_STATE_smp_boot, + SYS_STATE_smp_booted, SYS_STATE_active, SYS_STATE_suspend, SYS_STATE_resume -- 2.17.1 _______________________________________________ Xen-devel mailing list Xen-devel@xxxxxxxxxxxxxxxxxxxx https://lists.xenproject.org/mailman/listinfo/xen-devel
|
Lists.xenproject.org is hosted with RackSpace, monitoring our |