diff options
author | Ulrich Drepper <drepper@gmail.com> | 2012-01-15 19:40:24 -0500 |
---|---|---|
committer | Ingo Molnar <mingo@elte.hu> | 2012-01-16 08:20:36 +0100 |
commit | 8d973b624ece3b85cfae9474935795d034f72faf (patch) | |
tree | 4145b62562683a5d69a5ab7ea70a287dda9ba1ba /arch | |
parent | 2e64694de21a812d637dcbea4471ad1f7897b049 (diff) | |
download | linux-3.10-8d973b624ece3b85cfae9474935795d034f72faf.tar.gz linux-3.10-8d973b624ece3b85cfae9474935795d034f72faf.tar.bz2 linux-3.10-8d973b624ece3b85cfae9474935795d034f72faf.zip |
x86/kprobes: Fix typo transferred from Intel manual
The arch/x86/lib/x86-opcode-map.txt file [used by the
kprobes instruction decoder] contains the line:
af: SCAS/W/D/Q rAX,Xv
This is what the Intel manuals show, but it's not correct.
The 'X' stands for:
Memory addressed by the DS:rSI register pair (for example, MOVS, CMPS, OUTS, or LODS).
On the other hand 'Y' means (also see the ae byte entry for
SCASB):
Memory addressed by the ES:rDI register pair (for example, MOVS, CMPS, INS, STOS, or SCAS).
Signed-off-by: Ulrich Drepper <drepper@gmail.com>
Acked-by: Masami Hiramatsu <masami.hiramatsu.pt@hitachi.com>
Cc: yrl.pp-manager.tt@hitachi.com
Link: http://lkml.kernel.org/r/CAOPLpQfytPyDEBF1Hbkpo7ovUerEsstVGxBr%3DEpDL-BKEMaqLA@mail.gmail.com
Signed-off-by: Ingo Molnar <mingo@elte.hu>
Diffstat (limited to 'arch')
-rw-r--r-- | arch/x86/lib/x86-opcode-map.txt | 4 |
1 files changed, 3 insertions, 1 deletions
diff --git a/arch/x86/lib/x86-opcode-map.txt b/arch/x86/lib/x86-opcode-map.txt index a793da5e560..8641bbb8e00 100644 --- a/arch/x86/lib/x86-opcode-map.txt +++ b/arch/x86/lib/x86-opcode-map.txt @@ -210,7 +210,9 @@ ab: STOS/W/D/Q Yv,rAX ac: LODS/B AL,Xb ad: LODS/W/D/Q rAX,Xv ae: SCAS/B AL,Yb -af: SCAS/W/D/Q rAX,Xv +# Note: The May 2011 Intel manual shows Xv for the second parameter of the +# next instruction but Yv is correct +af: SCAS/W/D/Q rAX,Yv # 0xb0 - 0xbf b0: MOV AL/R8L,Ib b1: MOV CL/R9L,Ib |