[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] Re: [Xen-devel] [PATCH v12 1/4] x86emul: New return code for unimplemented instruction
>>> On 21.09.17 at 07:12, <ppircalabu@xxxxxxxxxxxxxxx> wrote: > --- a/xen/arch/x86/x86_emulate/x86_emulate.c > +++ b/xen/arch/x86/x86_emulate/x86_emulate.c > @@ -6195,7 +6196,7 @@ x86_emulate( > /* vpsll{w,d} $imm8,{x,y}mm,{x,y}mm */ > break; > default: > - goto cannot_emulate; > + goto unimplemented_insn; I would really appreciate if you were a little more patient and waited for replies to earlier review threads before sending a new version. As said on the v11 thread, this ought to be "unrecognized". > @@ -6243,7 +6244,8 @@ x86_emulate( > case 6: /* psllq $imm8,mm */ > goto simd_0f_shift_imm; > } > - goto cannot_emulate; > + rc = X86EMUL_UNRECOGNIZED; > + goto done; I think it would read better if we had an "unrecognized_insn" label just like now we gain an "unimplemented_insn" one. Whether the _insn suffixes are really useful is another question. > --- a/xen/arch/x86/x86_emulate/x86_emulate.h > +++ b/xen/arch/x86/x86_emulate/x86_emulate.h > @@ -133,6 +133,19 @@ struct x86_emul_fpu_aux { > * Undefined behavior when used anywhere else. > */ > #define X86EMUL_DONE 4 > + /* > + * Current instruction is not implemented by the emulator. > + * This value should only be returned by the core emulator when a valid > + * opcode is found but the execution logic for that instruction is missing. > + * It should NOT be returned by any of the x86_emulate_ops callbacks. > + */ > +#define X86EMUL_UNIMPLEMENTED 5 > + /* > + * The current instruction's opcode is not valid. > + * If this error code is returned by a function, an #UD trap should be > + * raised by the final consumer of it. > + */ > +#define X86EMUL_UNRECOGNIZED X86EMUL_UNIMPLEMENTED But with this aliasing of values the comment still is somewhat off. Jan _______________________________________________ Xen-devel mailing list Xen-devel@xxxxxxxxxxxxx https://lists.xen.org/xen-devel
|
Lists.xenproject.org is hosted with RackSpace, monitoring our |