On 20.04.2020 16:59, Andrew Cooper wrote: > @@ -46,24 +36,13 @@ void restore_rest_processor_state(void) > /* Restore full CR4 (inc MCE) now that the IDT is in place. */ > write_cr4(mmu_cr4_features); > > - /* Recover syscall MSRs */ > - wrmsrl(MSR_LSTAR, saved_lstar); > - wrmsrl(MSR_CSTAR, saved_cstar); > - wrmsrl(MSR_STAR, XEN_MSR_STAR); > - wrmsrl(MSR_SYSCALL_MASK, XEN_SYSCALL_MASK); > + /* (re)initialise SYSCALL/SYSENTER state, amongst other things. */ > + percpu_traps_init();
Without tweaks to subarch_percpu_traps_init() this assumes that, now and going forward, map_domain_page() will work reliably at this early point of resume. I'm not opposed, i.e. Acked-by: Jan Beulich <jbeul...@suse.com> but it would feel less fragile if the redundant re-writing of the stubs would be skipped in the BSP resume case (I didn't check whether it's also redundant for APs, but I suspect it's not, as the stub pages may get allocated anew). Jan