aboutsummaryrefslogtreecommitdiffstats
path: root/lib/dynamic_debug.c
diff options
context:
space:
mode:
authorDenys Vlasenko <[email protected]>2015-02-12 19:18:51 +0000
committerIngo Molnar <[email protected]>2015-02-18 19:55:51 +0000
commit67fc809217dc7fd793211585b2a8d7b61715d06b (patch)
tree707a5ec5175e2e8c83cd04633b2323a7b9ad089d /lib/dynamic_debug.c
parentuprobes/x86: Add comment with insn opcodes, mnemonics and why we dont support... (diff)
downloadkernel-67fc809217dc7fd793211585b2a8d7b61715d06b.tar.gz
kernel-67fc809217dc7fd793211585b2a8d7b61715d06b.zip
uprobes/x86: Fix 1-byte opcode tables
This change fixes 1-byte opcode tables so that only insns for which we have real reasons to disallow probing are marked with unset bits. To that end: Set bits for all prefix bytes. Their setting is ignored anyway - we check the bitmap against OPCODE1(insn), not against first byte. Keeping them set to 0 only confuses code reader with "why we don't support that opcode" question. Thus: enable bytes c4,c5 in 64-bit mode (VEX prefixes). Byte 62 (EVEX prefix) is not yet enabled since insn decoder does not support that yet. For 32-bit mode, enable probing of opcodes 63 (arpl) and d6 (salc). They don't require any special handling. For 64-bit mode, disable 9a and ea - these undefined opcodes were mistakenly left enabled. Signed-off-by: Denys Vlasenko <[email protected]> Cc: Andy Lutomirski <[email protected]> Cc: Jim Keniston <[email protected]> Cc: Masami Hiramatsu <[email protected]> Cc: Oleg Nesterov <[email protected]> Cc: Srikar Dronamraju <[email protected]> Link: http://lkml.kernel.org/r/[email protected] Signed-off-by: Ingo Molnar <[email protected]>
Diffstat (limited to 'lib/dynamic_debug.c')
0 files changed, 0 insertions, 0 deletions