On Mon, Nov 21, 2016 at 2:29 PM, Kirill A. Shutemov <[email protected]> wrote: > I use decode_stacktrace.sh as > > $ ./scripts/decode_stacktrace.sh vmlinux . . > > It means basepath is equal to "." and decode_stacktrace stips dot from > the filepath instead of actual basepath. Not very helpful.
This doesn't work if basepath is some non-existenting directory. In my case this usually path in pbulder container. You could try to replace only "." to "$PWD/" > > Let's fix this. > > Canonicalize modepath too while I'm there. This is redundant. =) > > Signed-off-by: Kirill A. Shutemov <[email protected]> > Cc: Sasha Levin <[email protected]> > Cc: Konstantin Khlebnikov <[email protected]> > --- > scripts/decode_stacktrace.sh | 6 +++--- > 1 file changed, 3 insertions(+), 3 deletions(-) > > diff --git a/scripts/decode_stacktrace.sh b/scripts/decode_stacktrace.sh > index c332684e1b5a..27e3cb7a14e8 100755 > --- a/scripts/decode_stacktrace.sh > +++ b/scripts/decode_stacktrace.sh > @@ -9,8 +9,8 @@ if [[ $# < 2 ]]; then > fi > > vmlinux=$1 > -basepath=$2 > -modpath=$3 > +basepath=$(readlink -ev "$2") > +modpath=$(readlink -ev "$3") > declare -A cache > declare -A modcache > > @@ -77,7 +77,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'/' '} > -- > 2.10.2 >

