提交 a5dc8300 编写于 作者: S Sasha Levin 提交者: Linus Torvalds

scripts/decode_stacktrace: warn when modpath is needed but is unset

When a user tries to parse a symbol located inside a module he must have
modpath set. Otherwise, decode_stacktrace won't be able to parse the
symbol correctly.

Right now the failure is silent and easily missed by the user. What's
worse is that by the time the user realizes what happened (or someone on
LKML asks him to add the modpath and re-run), he might have already got
rid of the vmlinux/modules.
Signed-off-by: NSasha Levin <sashal@kernel.org>
Signed-off-by: NLinus Torvalds <torvalds@linux-foundation.org>
上级 3be20b6f
...@@ -27,7 +27,10 @@ parse_symbol() { ...@@ -27,7 +27,10 @@ parse_symbol() {
elif [[ "${modcache[$module]+isset}" == "isset" ]]; then elif [[ "${modcache[$module]+isset}" == "isset" ]]; then
local objfile=${modcache[$module]} local objfile=${modcache[$module]}
else else
[[ $modpath == "" ]] && return if [[ $modpath == "" ]]; then
echo "WARNING! Modules path isn't set, but is needed to parse this symbol" >&2
return
fi
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
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册