mirror of
https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
synced 2026-05-10 07:59:42 -04:00
KVM: x86: emulate reserved nops from 0f/18 to 0f/1f
Instructions starting with 0f18 up to 0f1f are reserved nops, except those that were assigned to MPX. These include the endbr markers used by CET. List them correctly in the opcode table. Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
This commit is contained in:
@@ -4800,8 +4800,12 @@ static const struct opcode twobyte_table[256] = {
|
||||
GP(ModRM | DstReg | SrcMem | Mov | Sse, &pfx_0f_10_0f_11),
|
||||
GP(ModRM | DstMem | SrcReg | Mov | Sse, &pfx_0f_10_0f_11),
|
||||
N, N, N, N, N, N,
|
||||
D(ImplicitOps | ModRM | SrcMem | NoAccess),
|
||||
N, N, N, N, N, N, D(ImplicitOps | ModRM | SrcMem | NoAccess),
|
||||
D(ImplicitOps | ModRM | SrcMem | NoAccess), /* 4 * prefetch + 4 * reserved NOP */
|
||||
D(ImplicitOps | ModRM | SrcMem | NoAccess), N, N,
|
||||
D(ImplicitOps | ModRM | SrcMem | NoAccess), /* 8 * reserved NOP */
|
||||
D(ImplicitOps | ModRM | SrcMem | NoAccess), /* 8 * reserved NOP */
|
||||
D(ImplicitOps | ModRM | SrcMem | NoAccess), /* 8 * reserved NOP */
|
||||
D(ImplicitOps | ModRM | SrcMem | NoAccess), /* NOP + 7 * reserved NOP */
|
||||
/* 0x20 - 0x2F */
|
||||
DIP(ModRM | DstMem | Priv | Op3264 | NoMod, cr_read, check_cr_read),
|
||||
DIP(ModRM | DstMem | Priv | Op3264 | NoMod, dr_read, check_dr_read),
|
||||
|
||||
Reference in New Issue
Block a user