aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/kvm/x86_emulate.c
diff options
context:
space:
mode:
authorAvi Kivity <avi@qumranet.com>2007-05-24 04:17:33 -0400
committerAvi Kivity <avi@qumranet.com>2007-07-16 05:05:42 -0400
commit687fdbfe64086020e60547bd14773da3762056c1 (patch)
tree261103dadf733873a64ff2c8af78899454b1a147 /drivers/kvm/x86_emulate.c
parentde062065a5293d8f434acb2d6ba5df87ad76bbd9 (diff)
KVM: x86 emulator: implement wbinvd
Vista seems to trigger it. Signed-off-by: Avi Kivity <avi@qumranet.com>
Diffstat (limited to 'drivers/kvm/x86_emulate.c')
-rw-r--r--drivers/kvm/x86_emulate.c4
1 files changed, 3 insertions, 1 deletions
diff --git a/drivers/kvm/x86_emulate.c b/drivers/kvm/x86_emulate.c
index 7ade09086aa5..6123c0292b22 100644
--- a/drivers/kvm/x86_emulate.c
+++ b/drivers/kvm/x86_emulate.c
@@ -152,7 +152,7 @@ static u8 opcode_table[256] = {
152static u16 twobyte_table[256] = { 152static u16 twobyte_table[256] = {
153 /* 0x00 - 0x0F */ 153 /* 0x00 - 0x0F */
154 0, SrcMem | ModRM | DstReg, 0, 0, 0, 0, ImplicitOps, 0, 154 0, SrcMem | ModRM | DstReg, 0, 0, 0, 0, ImplicitOps, 0,
155 0, 0, 0, 0, 0, ImplicitOps | ModRM, 0, 0, 155 0, ImplicitOps, 0, 0, 0, ImplicitOps | ModRM, 0, 0,
156 /* 0x10 - 0x1F */ 156 /* 0x10 - 0x1F */
157 0, 0, 0, 0, 0, 0, 0, 0, ImplicitOps | ModRM, 0, 0, 0, 0, 0, 0, 0, 157 0, 0, 0, 0, 0, 0, 0, 0, ImplicitOps | ModRM, 0, 0, 0, 0, 0, 0, 0,
158 /* 0x20 - 0x2F */ 158 /* 0x20 - 0x2F */
@@ -1304,6 +1304,8 @@ twobyte_special_insn:
1304 /* Disable writeback. */ 1304 /* Disable writeback. */
1305 dst.orig_val = dst.val; 1305 dst.orig_val = dst.val;
1306 switch (b) { 1306 switch (b) {
1307 case 0x09: /* wbinvd */
1308 break;
1307 case 0x0d: /* GrpP (prefetch) */ 1309 case 0x0d: /* GrpP (prefetch) */
1308 case 0x18: /* Grp16 (prefetch/nop) */ 1310 case 0x18: /* Grp16 (prefetch/nop) */
1309 break; 1311 break;