On Mon, Jul 23, 2007 at 06:09:37PM +0200, Michael Holzheu wrote:
crash-utility-bounces(a)redhat.com wrote on 07/20/2007 09:42:31 PM:
[snip]
> - Implemented support for the use of "kerntypes" debuginfo files that
> are created by the LKCD "dwarfextract" utility, as an alternative to
> the use of the vmlinux file. This requires the use of the matching
> System.map file, as in this example:
>
> # crash kerntypes System.map [vmcore]
>
> This capability was written by Cliff Wickman of SGI, and he has
> generously offered to maintain its functionality. (cpw(a)sgi.com)
>
Hi Dave and Cliff,
Which format does the dwarfextract utility produce? Is it still
ELF format just containing the dwarf sections?
Is it possible to use the "traditional" lkcd kerntypes file, a
simple C-file containing a bunch of kernel includes, which is
compiled with -g?
Michael
The kerntypes produced by dwarfextract is just like the "traditional"
lkcd kerntypes file, except that tool can pull types from many compiled
objects and combine them into one.
The difference between a kerntypes and a -g vmlinux is that the former
has only structure type information, nothing about kernel symbols themselves.
That is why the gdb "p" command fails if using kerntypes.
And also why Bernhard saw the failure in finding a node's pglist_data
structure.
In the 2.6.22 kernel there is no linked list thru the pglist_data's. We
have to index into the node_data array.
But crash uses gdb to test that node_data is an array, so that
fails with kerntypes.
I need to check all the places where get_symbol_type() is called and
use an alternate method if using kerntypes.
-Cliff
--
Cliff Wickman
Silicon Graphics, Inc.
cpw(a)sgi.com
(651) 683-3824