[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] Re: [Xen-devel] [PATCH v5 02/10] x86emul: support MOVDIRI insn
On 25.03.2020 21:58, Andrew Cooper wrote: > On 24/03/2020 12:29, Jan Beulich wrote: >> Note that SDM revision 070 doesn't specify exception behavior for >> ModRM.mod == 0b11; assuming #UD here. > > Didn't I confirm this behaviour for you last time around? Iirc you did, but the SDM still hasn't changed. Do you have a suggestion on alternative wording. >> @@ -10075,6 +10079,14 @@ x86_emulate( >> : "0" ((uint32_t)src.val), "rm" (_regs.edx) ); >> break; >> >> + case X86EMUL_OPC(0x0f38, 0xf9): /* movdiri mem,r */ >> + vcpu_must_have(movdiri); >> + generate_exception_if(dst.type != OP_MEM, EXC_UD); >> + /* Ignore the non-temporal behavior for now. */ >> + dst.val = src.val; >> + sfence = true; > > Looking again at the SDM, I'm not entirely sure this is good enough. > > Even on top of WB/WP mappings, it needs to have WC properties, knock > aliasing lines out of the cache, and ending up as a bus transaction. > > Also, I'm not convinced the current chunking algorithm for qemu which > repeatedly subdivides down to 1, is compatible with the misaligned > behaviour described, guaranteeing a split of two. Taking care of these two will be a significant amount of (re-)work of the HVM emulation layer. I'll see if I can come up with time and ideas on how to do this. Jan
|
![]() |
Lists.xenproject.org is hosted with RackSpace, monitoring our |