PV vcpu initialise has CR4 seeded from mmu_cr4_features. Adjust the order of
basic CR4 setup and creation of the idle domain, such that idle_vcpu[0] is not
wildly different from the other idle vcpus.
Signed-off-by: Andrew Cooper <andrew.cooper3@citrix.com>
timer_init();
- init_idle_domain();
-
- this_cpu(stubs.addr) = alloc_stub_page(smp_processor_id(),
- &this_cpu(stubs).mfn);
- BUG_ON(!this_cpu(stubs.addr));
-
- trap_init();
-
- rcu_init();
-
- early_time_init();
-
- arch_init_memory();
-
identify_cpu(&boot_cpu_data);
if ( cpu_has_fxsr )
if ( cpu_has_fsgsbase )
set_in_cr4(X86_CR4_FSGSBASE);
+ init_idle_domain();
+
+ this_cpu(stubs.addr) = alloc_stub_page(smp_processor_id(),
+ &this_cpu(stubs).mfn);
+ BUG_ON(!this_cpu(stubs.addr));
+
+ trap_init();
+
+ rcu_init();
+
+ early_time_init();
+
+ arch_init_memory();
+
alternative_instructions();
local_irq_enable();