aboutsummaryrefslogtreecommitdiffstats
path: root/scripts/decodecode
diff options
context:
space:
mode:
authorIvan Delalande <[email protected]>2020-05-08 01:35:53 +0000
committerLinus Torvalds <[email protected]>2020-05-08 02:27:20 +0000
commite08df079b23e2e982df15aa340bfbaf50f297504 (patch)
tree2b5af094e8837e7d08875b8c88c4fb70d9e7e7e9 /scripts/decodecode
parentkernel/kcov.c: fix typos in kcov_remote_start documentation (diff)
downloadkernel-e08df079b23e2e982df15aa340bfbaf50f297504.tar.gz
kernel-e08df079b23e2e982df15aa340bfbaf50f297504.zip
scripts/decodecode: fix trapping instruction formatting
If the trapping instruction contains a ':', for a memory access through segment registers for example, the sed substitution will insert the '*' marker in the middle of the instruction instead of the line address: 2b: 65 48 0f c7 0f cmpxchg16b %gs:*(%rdi) <-- trapping instruction I started to think I had forgotten some quirk of the assembly syntax before noticing that it was actually coming from the script. Fix it to add the address marker at the right place for these instructions: 28: 49 8b 06 mov (%r14),%rax 2b:* 65 48 0f c7 0f cmpxchg16b %gs:(%rdi) <-- trapping instruction 30: 0f 94 c0 sete %al Fixes: 18ff44b189e2 ("scripts/decodecode: make faulting insn ptr more robust") Signed-off-by: Ivan Delalande <[email protected]> Signed-off-by: Andrew Morton <[email protected]> Reviewed-by: Borislav Petkov <[email protected]> Link: http://lkml.kernel.org/r/20200419223653.GA31248@visor Signed-off-by: Linus Torvalds <[email protected]>
Diffstat (limited to 'scripts/decodecode')
-rwxr-xr-xscripts/decodecode2
1 files changed, 1 insertions, 1 deletions
diff --git a/scripts/decodecode b/scripts/decodecode
index ba8b8d5834e6..fbdb325cdf4f 100755
--- a/scripts/decodecode
+++ b/scripts/decodecode
@@ -126,7 +126,7 @@ faultlinenum=$(( $(wc -l $T.oo | cut -d" " -f1) - \
faultline=`cat $T.dis | head -1 | cut -d":" -f2-`
faultline=`echo "$faultline" | sed -e 's/\[/\\\[/g; s/\]/\\\]/g'`
-cat $T.oo | sed -e "${faultlinenum}s/^\(.*:\)\(.*\)/\1\*\2\t\t<-- trapping instruction/"
+cat $T.oo | sed -e "${faultlinenum}s/^\([^:]*:\)\(.*\)/\1\*\2\t\t<-- trapping instruction/"
echo
cat $T.aa
cleanup