[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] Re: [Xen-devel] [PATCH 7/7] x86emul: support SYSRET
On 25.03.2020 11:00, Andrew Cooper wrote: > On 24/03/2020 16:29, Jan Beulich wrote: >> --- a/xen/arch/x86/x86_emulate/x86_emulate.c >> +++ b/xen/arch/x86/x86_emulate/x86_emulate.c >> @@ -5975,6 +5975,60 @@ x86_emulate( >> goto done; >> break; >> >> + case X86EMUL_OPC(0x0f, 0x07): /* sysret */ >> + vcpu_must_have(syscall); >> + /* Inject #UD if syscall/sysret are disabled. */ >> + fail_if(!ops->read_msr); >> + if ( (rc = ops->read_msr(MSR_EFER, &msr_val, ctxt)) != X86EMUL_OKAY >> ) >> + goto done; >> + generate_exception_if((msr_val & EFER_SCE) == 0, EXC_UD); > > (as with the SYSCALL side), no need for the vcpu_must_have(syscall) as > well as this check. Upon re-reading I'm now confused - are you suggesting to also drop the EFER.SCE check? That's not what you said in reply to 6/7. If so, what's your thinking behind saying so? If I'm to guess, this may go along the lines of you suggesting to drop the explicit CPUID checks from SYSENTER/SYSEXIT as well, but I'm not seeing there either why you would think this way (albeit there it's also a little vague what exact changes you're thinking of at the MSR handling side). Jan
|
Lists.xenproject.org is hosted with RackSpace, monitoring our |