[lldb-dev] Symbolicate user processes when kernel debugging

John Otter via lldb-dev lldb-dev at lists.llvm.org
Thu Jun 16 01:38:34 PDT 2016


I'm using lldb to debug the OS X kernel, and it works great.
I would like to have more flexibility in analysing user programs while
debugging the kernel itself,
and specifically symbolicate the code of the user programs.

For example I often use the command showthreaduserstack defined here
http://opensource.apple.com//source/xnu/xnu-2422.1.72/tools/lldbmacros/userspace.py
to take
a look at the user stack of a process running in kernel mode that just
scripts the process of
obtaining the thread saved state, but the output unfortunately isn't
symbolicated.

Is there a way to add symbols for a user process (programs and shared libs?)
I looked into the target modules add command, but when I try to add a
copy of the executable
it just says that the file I pick doesn't exist (even though it clearly exist).
Also I'm not entirely sure how that would work since the user space
addressing space changes
for every process, even if I manually set the loading address.
Would that work only for that specific process and execution?

Regards,
John


More information about the lldb-dev mailing list