aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/kvm
diff options
context:
space:
mode:
authorAvi Kivity <avi@qumranet.com>2007-07-22 08:51:58 -0400
committerAvi Kivity <avi@qumranet.com>2007-10-13 04:18:19 -0400
commit394b6e5944865a558fe25f0c5903b34c434038ee (patch)
tree506650eb8e2b4c4e1f553bcc0cc568a65f99c357 /drivers/kvm
parente3243452f4f35ed5f79d575100521bf257504b81 (diff)
KVM: x86 emulator: fix faulty check for two-byte opcode
Right now, the bug is harmless as we never emulate one-byte 0xb6 or 0xb7. But things may change. Noted by the mysterious Gabriel C. Signed-off-by: Avi Kivity <avi@qumranet.com>
Diffstat (limited to 'drivers/kvm')
-rw-r--r--drivers/kvm/x86_emulate.c2
1 files changed, 1 insertions, 1 deletions
diff --git a/drivers/kvm/x86_emulate.c b/drivers/kvm/x86_emulate.c
index 82b4ea62c982..ef7518a2d7ac 100644
--- a/drivers/kvm/x86_emulate.c
+++ b/drivers/kvm/x86_emulate.c
@@ -819,7 +819,7 @@ done_prefixes:
819 case DstReg: 819 case DstReg:
820 dst.type = OP_REG; 820 dst.type = OP_REG;
821 if ((d & ByteOp) 821 if ((d & ByteOp)
822 && !(twobyte_table && (b == 0xb6 || b == 0xb7))) { 822 && !(twobyte && (b == 0xb6 || b == 0xb7))) {
823 dst.ptr = decode_register(modrm_reg, _regs, 823 dst.ptr = decode_register(modrm_reg, _regs,
824 (rex_prefix == 0)); 824 (rex_prefix == 0));
825 dst.val = *(u8 *) dst.ptr; 825 dst.val = *(u8 *) dst.ptr;