FAQ Search Today's Posts Mark Forums Read
» Video Reviews

» Linux Archive

Linux-archive is a website aiming to archive linux email lists and to make them easily accessible for linux users/developers.


» Sponsor

» Partners

» Sponsor

Go Back   Linux Archive > Redhat > Crash Utility

 
 
LinkBack Thread Tools
 
Old 01-21-2009, 02:56 PM
Dave Anderson
 
Default Trying to read an 80GB PPC64 crash dump with little luck

----- "James Washer" <washer@trlp.com> wrote:

> Trying to investigate a SLES10SP1 crash dump
>
> Using crash 4.0-7.6
>
> Using -d9, I get the following just before crash gives up.
>
> Any ideas?
>
> thanks
> - jim
>
>
> There is absolutely no warranty for GDB. Type "show warranty" for
> details.
> This GDB was configured as "powerpc64-unknown-linux-gnu"...
> GETBUF(248 -> 0)
> GETBUF(1500 -> 1)
>
> FREEBUF(1)
>
> FREEBUF(0)
> <readmem: c00000000039db08, KVADDR, "kernel_config_data", 32768,(ROE) 11721c00>
> crash: read error: kernel virtual address: c00000000039db08 type: "kernel_config_data"
> WARNING: cannot read kernel_config_data
> GETBUF(248 -> 0)
> FREEBUF(0)
> GETBUF(16 -> 0)
> <readmem: c0000000006470b8, KVADDR, "cpu_possible_map", 16, (ROE), 1071e968>
> crash: read error: kernel virtual address: c0000000006470b8 type: "cpu_possible_map"
> WARNING: cannot read cpu_possible_map
> <readmem: c000000000653130, KVADDR, "cpu_present_map", 16, (ROE), 1071e968>
> crash: read error: kernel virtual address: c000000000653130 type: "cpu_present_map"
> WARNING: cannot read cpu_present_map
> <readmem: c0000000006470c8, KVADDR, "cpu_online_map", 16, (ROE), 1071e968>
> crash: read error: kernel virtual address: c0000000006470c8 type: "cpu_online_map"
> WARNING: cannot read cpu_online_map
> FREEBUF(0)
> <readmem: c0000000006d9f00, KVADDR, "xtime", 16, (FOE), 106f4218>
> crash: read error: kernel virtual address: c0000000006d9f00 type: "xtime"
> op720lpar5:/washer #

Hi Jim,

Without the prior debug output I can't tell whether the
the dumpfile an ELF kdump or a compressed kdump. But in
either case, every read from the dumpfile is failing.

When readmem() is called, it translates those virtual address
values into their physical address, and the physical address is
passed onto either read_kdump() or read_diskdump(). A READ_ERROR
is being returned from whichever of those two functions were called.

(1) read_kdump() passes the request to read_netdump(), which
is where the READ_ERROR is generated.

(2) read_diskdump() -- used for compressed kdump vmcores --
calls diskdump.c's cache_page(), which is where the READ_ERROR
is generated.

In the case of read_kdump()'s call to read_netdump(), a READ_ERROR
is generated for two possible reasons:

1. if the physical address does not fit into any of the
PT_LOAD segments declared in the ELF header.
2. if the physical address does fit into a PT_LOAD segment,
but the actual read() system call fails.

In the case of read_diskdump()'s call to cache_page(), a READ_ERROR
is generated for four possible reasons:

1. if the read() system call of the page descriptor fails.
2. if the page descriptor's advertised size is greater than the
header's block_size.
3. if the read() system call of the compressed page fails.
4. if the uncompress() of the page data fails. (but there's
an error message associated with that, so that's not the
problem in your case)

So the first thing to determine is where the READ_ERROR is
generated.

Dave

--
Crash-utility mailing list
Crash-utility@redhat.com
https://www.redhat.com/mailman/listinfo/crash-utility
 

Thread Tools




All times are GMT. The time now is 01:39 PM.

VBulletin, Copyright ©2000 - 2014, Jelsoft Enterprises Ltd.
Content Relevant URLs by vBSEO ©2007, Crawlability, Inc.
Copyright 2007 - 2008, www.linux-archive.org