lkml.org 
[lkml]   [2013]   [Jun]   [5]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
    Patch in this message
    /
    From
    Subject[ 091/127] KVM: Emulate multibyte NOP
    Date
    3.9-stable review patch.  If anyone has any objections, please let me know.

    ------------------

    From: Paolo Bonzini <pbonzini@redhat.com>

    commit 103f98ea64a1b0a67d8a1b23070b4db3533db2b8 upstream.

    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.

    Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
    Signed-off-by: Gleb Natapov <gleb@redhat.com>
    Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>

    ---
    arch/x86/kvm/emulate.c | 4 +++-
    1 file changed, 3 insertions(+), 1 deletion(-)

    --- a/arch/x86/kvm/emulate.c
    +++ b/arch/x86/kvm/emulate.c
    @@ -3987,7 +3987,8 @@ static const struct opcode twobyte_table
    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),
    @@ -4825,6 +4826,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);



    \
     
     \ /
      Last update: 2013-06-06 02:01    [W:4.077 / U:0.040 seconds]
    ©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site