From patchwork Thu May 30 11:22:39 2013 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Paolo Bonzini X-Patchwork-Id: 2636001 Return-Path: X-Original-To: patchwork-kvm@patchwork.kernel.org Delivered-To: patchwork-process-083081@patchwork2.kernel.org Received: from vger.kernel.org (vger.kernel.org [209.132.180.67]) by patchwork2.kernel.org (Postfix) with ESMTP id 13DBDDF2A1 for ; Thu, 30 May 2013 11:23:05 +0000 (UTC) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S968203Ab3E3LWu (ORCPT ); Thu, 30 May 2013 07:22:50 -0400 Received: from mail-ea0-f173.google.com ([209.85.215.173]:42273 "EHLO mail-ea0-f173.google.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S968083Ab3E3LWs (ORCPT ); Thu, 30 May 2013 07:22:48 -0400 Received: by mail-ea0-f173.google.com with SMTP id n15so160706ead.18 for ; Thu, 30 May 2013 04:22:47 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20120113; h=sender:from:to:cc:subject:date:message-id:x-mailer; bh=6wFrpezQaO+aJm5x/Olva2KE6A+9cc5nN4qW94EXdD4=; b=ocxil3Nfg3iuxutc2b+L/hrURPjXf9ZfM5DH1WihtPoB4pP1JxSxe6RKDRZh8Ggf7w ii3JghOTgrv5Cb67cLoiZUFf2cpGEaE729VtOWDSAerVF/UPFabItNmFVCA6sJ7BceCQ VUDmwr6iSC1ve2iNvOBWQ4uPmcsW1wq//iqNeN9WJuvV/eOnqGfP5FckGew9eT09EtUK KfBLpcnsEkB4GXbV8L2pc+sD6+/xkglbTpHksFo3a0O3fytJ/RBH7q3lLYBDCzAU53fM TxhIz8gkyezkkDF08av7i1dfWigWL7XvDvb+aZZ6pBgGU1au9/P/OJOPnSQK/EK7b0oM 1hXA== X-Received: by 10.14.88.130 with SMTP id a2mr9495881eef.53.1369912967007; Thu, 30 May 2013 04:22:47 -0700 (PDT) Received: from playground.lan (net-37-116-217-184.cust.dsl.vodafone.it. [37.116.217.184]) by mx.google.com with ESMTPSA id e1sm25312323eem.10.2013.05.30.04.22.44 for (version=TLSv1.2 cipher=RC4-SHA bits=128/128); Thu, 30 May 2013 04:22:46 -0700 (PDT) From: Paolo Bonzini To: linux-kernel@vger.kernel.org Cc: kvm@vger.kernel.org, gnatapov@redhat.com, Subject: [PATCH] KVM: Emulate multibyte NOP Date: Thu, 30 May 2013 13:22:39 +0200 Message-Id: <1369912959-18715-1-git-send-email-pbonzini@redhat.com> X-Mailer: git-send-email 1.8.1.4 Sender: kvm-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: kvm@vger.kernel.org This is encountered when booting RHEL5.9 64-bit. There is another bug after this one that is not a simple emulation failure, but this one lets the boot proceed a bit. Cc: # 3.9 Signed-off-by: Paolo Bonzini --- arch/x86/kvm/emulate.c | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/arch/x86/kvm/emulate.c b/arch/x86/kvm/emulate.c index 48e6abd..aa68106 100644 --- a/arch/x86/kvm/emulate.c +++ b/arch/x86/kvm/emulate.c @@ -3987,7 +3987,8 @@ static const struct opcode twobyte_table[256] = { DI(ImplicitOps | Priv, invd), DI(ImplicitOps | Priv, wbinvd), N, N, N, D(ImplicitOps | ModRM), N, N, /* 0x10 - 0x1F */ - N, N, N, N, N, N, N, N, D(ImplicitOps | ModRM), N, N, N, N, N, N, N, + N, N, N, N, N, N, N, N, + D(ImplicitOps | ModRM), N, N, N, N, N, N, D(ImplicitOps | ModRM), /* 0x20 - 0x2F */ DIP(ModRM | DstMem | Priv | Op3264, cr_read, check_cr_read), DIP(ModRM | DstMem | Priv | Op3264, dr_read, check_dr_read), @@ -4822,6 +4823,7 @@ twobyte_insn: case 0x08: /* invd */ case 0x0d: /* GrpP (prefetch) */ case 0x18: /* Grp16 (prefetch/nop) */ + case 0x1f: /* nop */ break; case 0x20: /* mov cr, reg */ ctxt->dst.val = ops->get_cr(ctxt, ctxt->modrm_reg);