diff --git a/hypervisor/arch/x86/guest/instr_emul.c b/hypervisor/arch/x86/guest/instr_emul.c index 78d9954f4..2776cc586 100644 --- a/hypervisor/arch/x86/guest/instr_emul.c +++ b/hypervisor/arch/x86/guest/instr_emul.c @@ -162,11 +162,11 @@ static const struct instr_emul_vie_op one_byte_opcodes[256] = { }, [0xAA] = { .op_type = VIE_OP_TYPE_STOS, - .op_flags = VIE_OP_F_NO_MODRM | VIE_OP_F_BYTE_OP, + .op_flags = VIE_OP_F_NO_MODRM | VIE_OP_F_BYTE_OP | VIE_OP_F_CHECK_GVA_DI, }, [0xAB] = { .op_type = VIE_OP_TYPE_STOS, - .op_flags = VIE_OP_F_NO_MODRM + .op_flags = VIE_OP_F_NO_MODRM | VIE_OP_F_CHECK_GVA_DI, }, [0xC6] = { /* XXX Group 11 extended opcode - not just MOV */