KVM: x86 emulator: implement wbinvd
authorAvi Kivity <avi@qumranet.com>
Thu, 24 May 2007 08:17:33 +0000 (11:17 +0300)
committerAvi Kivity <avi@qumranet.com>
Mon, 16 Jul 2007 09:05:42 +0000 (12:05 +0300)
Vista seems to trigger it.

Signed-off-by: Avi Kivity <avi@qumranet.com>
drivers/kvm/x86_emulate.c

index 7ade09086aa51f02376da1acc0985cf1c17b449c..6123c0292b22f286dcc3e671862084cbc916b574 100644 (file)
@@ -152,7 +152,7 @@ static u8 opcode_table[256] = {
 static u16 twobyte_table[256] = {
        /* 0x00 - 0x0F */
        0, SrcMem | ModRM | DstReg, 0, 0, 0, 0, ImplicitOps, 0,
-       0, 0, 0, 0, 0, ImplicitOps | ModRM, 0, 0,
+       0, ImplicitOps, 0, 0, 0, ImplicitOps | ModRM, 0, 0,
        /* 0x10 - 0x1F */
        0, 0, 0, 0, 0, 0, 0, 0, ImplicitOps | ModRM, 0, 0, 0, 0, 0, 0, 0,
        /* 0x20 - 0x2F */
@@ -1304,6 +1304,8 @@ twobyte_special_insn:
        /* Disable writeback. */
        dst.orig_val = dst.val;
        switch (b) {
+       case 0x09:              /* wbinvd */
+               break;
        case 0x0d:              /* GrpP (prefetch) */
        case 0x18:              /* Grp16 (prefetch/nop) */
                break;