[Crash-utility] Identifying structures related to memory , semaphores using crash utility

Dave Anderson anderson at redhat.com
Mon Dec 11 15:21:49 UTC 2006


ram ba wrote:

> Hi all,I was running crash to analyse a vmcore generated by a  2.6.16.21-0.8.uis.1-smp kernel ( on x86_64
> architecture). During this I came to know that we get a list of all kernel symbols with the help of "sym -l" command.
> With the help of "whatis" command we can know the symbol definition.But applying "whatis" command to each symbol and
> checking its definition appears to be tedious. Is there any other way to identify as to which symbols represent
> structures?        Also I wanted to isolate the structures related to memory, semaphores, tasks. Since I am new to
> crash utility, I couldn't get much information. Could you please provide some suggestions as to how to go about
> it.Thanks,Ramya
> -----------------------------------------------------------------------------------------------------------------------
> Need a quick answer? Get one in minutes from people who know. Ask your question on Yahoo! Answers.

Ask "Yahoo! Answers"?    ;-)

Anyway, it's not clear to me what you're asking for?

If a symbol-name is an instance of a data structure, or an array of data
structures, you can simply enter:

  crash> p symbol-name

If the symbol refers to an array of structures, you can pick
an individual structure by its index:

  crash> p symbol-name[index]

Or if the symbol is a pointer to a data strucutre, you display
what it points to with:

  crash> p *symbol-name

The above simply take advantage of the embedded gdb module
pre-determining what the data type of a symbol is, and then printing it.

When you ask that you want to "isolate the structures related to
memory, semaphores, tasks", again, I don't understand what you
are asking for.

I'm probably missing your point, but, in any case, there's certainly no
existing command that walks the symbol list and tells you what kind of
data structure each one is -- if that's what you're expecting.

Depending upon what you want, you could probably (1) cobble together
an input script that you can in turn feed to crash, or (2) write an "extend"
module that gathers the data that you specifically need.

Dave


-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://listman.redhat.com/archives/crash-utility/attachments/20061211/d14aa1c4/attachment.htm>


More information about the Crash-utility mailing list