diff options
author | Roger Pau Monne <roger.pau@citrix.com> | 2018-01-16 14:48:53 +0000 |
---|---|---|
committer | Ian Jackson <Ian.Jackson@eu.citrix.com> | 2018-01-16 16:20:14 +0000 |
commit | 0a515eeb966add7c63d764cabffec3b2f560a588 (patch) | |
tree | 13b99b3a993c753b7b8c7e05f62a5ec4c90fbc97 | |
parent | 0e2d64ae8f4af4dbd49127107ae6237e7f748c04 (diff) | |
download | xen-0a515eeb966add7c63d764cabffec3b2f560a588.tar.gz |
xen/pvshim: map vcpu_info earlier for APs
Or else init_percpu_time is going to dereference a NULL pointer when
trying to access vcpu_info.
Signed-off-by: Roger Pau Monné <roger.pau@citrix.com>
Tested-by: George Dunlap <george.dunlap@citrix.com>
-rw-r--r-- | xen/arch/x86/smpboot.c | 6 |
1 files changed, 3 insertions, 3 deletions
diff --git a/xen/arch/x86/smpboot.c b/xen/arch/x86/smpboot.c index 5c7863035e..5ed82b16a8 100644 --- a/xen/arch/x86/smpboot.c +++ b/xen/arch/x86/smpboot.c @@ -346,6 +346,9 @@ void start_secondary(void *unused) else microcode_resume_cpu(cpu); + if ( xen_guest ) + hypervisor_ap_setup(); + smp_callin(); init_percpu_time(); @@ -374,9 +377,6 @@ void start_secondary(void *unused) cpumask_set_cpu(cpu, &cpu_online_map); unlock_vector_lock(); - if ( xen_guest ) - hypervisor_ap_setup(); - /* We can take interrupts now: we're officially "up". */ local_irq_enable(); mtrr_ap_init(); |