Commit ca90bbd4 authored by Evan Green's avatar Evan Green Committed by Linus Torvalds

scripts/decode_stacktrace: Accept dash/underscore in modules

The manpage for modprobe mentions that dashes and underscores are
treated interchangeably in module names.  The stack trace dumps seem to
print module names with underscores.  Use bash to replace _ with the
pattern [-_] so that file names with dashes or underscores can be found.

For example, this line:
[   27.919759]  hda_widget_sysfs_init+0x2b8/0x3a5 [snd_hda_core]

should find a module named snd-hda-core.ko.

Link: http://lkml.kernel.org/r/20190531205926.42474-1-evgreen@chromium.orgSigned-off-by: default avatarEvan Green <evgreen@chromium.org>
Reviewed-by: default avatarDouglas Anderson <dianders@chromium.org>
Acked-by: default avatarKonstantin Khlebnikov <khlebnikov@yandex-team.ru>
Cc: Stephen Rothwell <sfr@canb.auug.org.au>
Cc: Douglas Anderson <dianders@chromium.org>
Cc: Evan Green <evgreen@chromium.org>
Cc: Nicolas Boichat <drinkcat@chromium.org>
Cc: Marc Zyngier <marc.zyngier@arm.com>
Cc: Manuel Traut <manut@linutronix.de>
Signed-off-by: default avatarAndrew Morton <akpm@linux-foundation.org>
Signed-off-by: default avatarLinus Torvalds <torvalds@linux-foundation.org>
parent 85f946ff
...@@ -28,7 +28,7 @@ parse_symbol() { ...@@ -28,7 +28,7 @@ parse_symbol() {
local objfile=${modcache[$module]} local objfile=${modcache[$module]}
else else
[[ $modpath == "" ]] && return [[ $modpath == "" ]] && return
local objfile=$(find "$modpath" -name "$module.ko*" -print -quit) local objfile=$(find "$modpath" -name "${module//_/[-_]}.ko*" -print -quit)
[[ $objfile == "" ]] && return [[ $objfile == "" ]] && return
modcache[$module]=$objfile modcache[$module]=$objfile
fi fi
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment