blob: 50de63af78558792b722db15bb62149bad01afa7 [file] [log] [blame]
From stable-bounces@linux.kernel.org Sun Dec 2 03:18:46 2007
From: Avi Kivity <avi@qumranet.com>
Date: Sun, 2 Dec 2007 13:18:40 +0200
Subject: [stable] [PATCH 03/10] KVM: x86 emulator: invd instruction
To: stable@kernel.org
Cc: kvm-devel@lists.sourceforge.net, linux-kernel@vger.kernel.org, Avi Kivity <avi@qumranet.com>
Message-ID: <1196594327589-git-send-email-avi@qumranet.com>
From: Avi Kivity <avi@qumranet.com>
patch 651a3e29b3d19418d7a8a9787906061f9be7cc5f in mainline.
Emulate the 'invd' instruction (opcode 0f 08).
Signed-off-by: Avi Kivity <avi@qumranet.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
---
drivers/kvm/x86_emulate.c | 4 +++-
1 file changed, 3 insertions(+), 1 deletion(-)
--- a/drivers/kvm/x86_emulate.c
+++ b/drivers/kvm/x86_emulate.c
@@ -156,7 +156,7 @@ static u8 opcode_table[256] = {
static u16 twobyte_table[256] = {
/* 0x00 - 0x0F */
0, SrcMem | ModRM | DstReg, 0, 0, 0, 0, ImplicitOps, 0,
- 0, ImplicitOps, 0, 0, 0, ImplicitOps | ModRM, 0, 0,
+ ImplicitOps, 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 */
@@ -1353,6 +1353,8 @@ twobyte_special_insn:
/* Disable writeback. */
no_wb = 1;
switch (b) {
+ case 0x08: /* invd */
+ break;
case 0x09: /* wbinvd */
break;
case 0x0d: /* GrpP (prefetch) */