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.org Signed-off-by: Evan Green <evgreen@chromium.org> Reviewed-by: Douglas Anderson <dianders@chromium.org> Acked-by: Konstantin 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: Andrew Morton <akpm@linux-foundation.org> Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
This commit is contained in:
Родитель
85f946ffd3
Коммит
ca90bbd410
|
@ -28,7 +28,7 @@ parse_symbol() {
|
|||
local objfile=${modcache[$module]}
|
||||
else
|
||||
[[ $modpath == "" ]] && return
|
||||
local objfile=$(find "$modpath" -name "$module.ko*" -print -quit)
|
||||
local objfile=$(find "$modpath" -name "${module//_/[-_]}.ko*" -print -quit)
|
||||
[[ $objfile == "" ]] && return
|
||||
modcache[$module]=$objfile
|
||||
fi
|
||||
|
|
Загрузка…
Ссылка в новой задаче