]> git.ipfire.org Git - thirdparty/kernel/stable.git/commitdiff
scripts/decode_stacktrace: only strip base path when a prefix of the path
authorMarc Zyngier <marc.zyngier@arm.com>
Fri, 28 Dec 2018 08:31:25 +0000 (00:31 -0800)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Wed, 20 Feb 2019 09:09:03 +0000 (10:09 +0100)
[ Upstream commit 67a28de47faa83585dd644bd4c31e5a1d9346c50 ]

Running something like:

decodecode vmlinux .

leads to interested results where not only the leading "." gets stripped
from the displayed paths, but also anywhere in the string, displaying
something like:

kvm_vcpu_check_block (arch/arm64/kvm/virt/kvm/kvm_mainc:2141)

which doesn't help further processing.

Fix it by only stripping the base path if it is a prefix of the path.

Link: http://lkml.kernel.org/r/20181210174659.31054-3-marc.zyngier@arm.com
Signed-off-by: Marc Zyngier <marc.zyngier@arm.com>
Cc: Will Deacon <will.deacon@arm.com>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
Signed-off-by: Sasha Levin <sashal@kernel.org>
scripts/decode_stacktrace.sh

index 515c4c00e957cae89febefc38533415490ae88c8..aa4b57abd1b5456e0a432a73a52c23ef63bd224e 100755 (executable)
@@ -61,7 +61,7 @@ parse_symbol() {
        fi
 
        # Strip out the base of the path
-       code=${code//$basepath/""}
+       code=${code//^$basepath/""}
 
        # In the case of inlines, move everything to same line
        code=${code//$'\n'/' '}