[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] Re: [Xen-devel] [PATCH v5 05/14] x86/HVM: eliminate custom #MF/#XM handling
>>> On 22.03.18 at 15:12, <roger.pau@xxxxxxxxxx> wrote: > On Thu, Mar 15, 2018 at 07:06:36AM -0600, Jan Beulich wrote: >> @@ -8478,7 +8411,8 @@ x86_emulate( >> } >> >> complete_insn: /* Commit shadow register state. */ >> - put_fpu(&fic, false, state, ctxt, ops); >> + put_fpu(fpu_type, false, state, ctxt, ops); >> + fpu_type = X86EMUL_FPU_none; >> >> /* Zero the upper 32 bits of %rip if not in 64-bit mode. */ >> if ( !mode_64bit() ) >> @@ -8502,13 +8436,22 @@ x86_emulate( >> ctxt->regs->eflags &= ~X86_EFLAGS_RF; >> >> done: >> - put_fpu(&fic, fic.insn_bytes > 0 && dst.type == OP_MEM, state, ctxt, >> ops); >> + put_fpu(fpu_type, insn_bytes > 0 && dst.type == OP_MEM, state, ctxt, >> ops); >> put_stub(stub); >> return rc; >> #undef state >> >> #ifdef __XEN__ >> emulation_stub_failure: >> + generate_exception_if(stub_exn.info.fields.trapnr == EXC_MF, EXC_MF); >> + if ( stub_exn.info.fields.trapnr == EXC_XM ) >> + { >> + unsigned long cr4; >> + >> + if ( !ops->read_cr || !ops->read_cr(4, &cr4, ctxt) == X86EMUL_OKAY ) > > Is the second expression in the above line missing parentheses: > > if ( !ops->read_cr || !(ops->read_cr(4, &cr4, ctxt) == X86EMUL_OKAY) ) > > Or should this be: > > if ( !ops->read_cr || ops->read_cr(4, &cr4, ctxt) != X86EMUL_OKAY ) Oops, yes indeed, the latter. Thanks for the report. Jan _______________________________________________ Xen-devel mailing list Xen-devel@xxxxxxxxxxxxxxxxxxxx https://lists.xenproject.org/mailman/listinfo/xen-devel
|
Lists.xenproject.org is hosted with RackSpace, monitoring our |