diff options
author | Avi Kivity <avi@qumranet.com> | 2007-05-24 04:17:33 -0400 |
---|---|---|
committer | Avi Kivity <avi@qumranet.com> | 2007-07-16 05:05:42 -0400 |
commit | 687fdbfe64086020e60547bd14773da3762056c1 (patch) | |
tree | 261103dadf733873a64ff2c8af78899454b1a147 /drivers/kvm/x86_emulate.c | |
parent | de062065a5293d8f434acb2d6ba5df87ad76bbd9 (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.c | 4 |
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] = { | |||
152 | static u16 twobyte_table[256] = { | 152 | static 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; |