----- Original Message -----
Hi,
Can we use crash to analyze a LKCD dump generated on an SLES 9 SP4
system? If crash can analyze such dump, what is the command syntax?
Thanks.
Eugene
The best answer is probably...
The normal syntax is simply:
$ crash vmlinux dumpfile
But if I'm not mistaken, at least back in the SLES 9 timeframe,
Suse did not build the vmlinux file with full debuginfo data,
and they may have had to rebuild the same kernel version with -g
to get a vmlinux file. And because the rebuilt kernel may get
compiled with slightly different symbol values, you'd have to
add the System.map file of the crashing kernel to the command line:
$ crash vmlinux dumpfile System.map
I only have one sample SLES kernel and dumpfile, and it pretty much
works OK, even without the System.map:
crash vmlinux dump.1
crash 6.1.4
Copyright (C) 2002-2013 Red Hat, Inc.
Copyright (C) 2004, 2005, 2006, 2010 IBM Corporation
Copyright (C) 1999-2006 Hewlett-Packard Co
Copyright (C) 2005, 2006, 2011, 2012 Fujitsu Limited
Copyright (C) 2006, 2007 VA Linux Systems Japan K.K.
Copyright (C) 2005, 2011 NEC Corporation
Copyright (C) 1999, 2002, 2007 Silicon Graphics, Inc.
Copyright (C) 1999, 2000, 2001, 2002 Mission Critical Linux, Inc.
This program is free software, covered by the GNU General Public License,
and you are welcome to change it and/or distribute copies of it under
certain conditions. Enter "help copying" to see the conditions.
This program has absolutely no warranty. Enter "help warranty" for details.
GNU gdb (GDB) 7.3.1
Copyright (C) 2011 Free Software Foundation, Inc.
License GPLv3+: GNU GPL version 3 or later <
http://gnu.org/licenses/gpl.html>
This is free software: you are free to change and redistribute it.
There is NO WARRANTY, to the extent permitted by law. Type "show copying"
and "show warranty" for details.
This GDB was configured as "x86_64-unknown-linux-gnu"...
WARNING: could not find MAGIC_START!
please wait... (gathering task table data)-
crash: cannot read from task: 1002ffff290
crash: seek error: kernel virtual address: 1002ffff000 type:
"fill_task_struct"
KERNEL: vmlinux
DUMPFILE: dump.1
CPUS: 4
DATE: Mon May 7 06:20:59 2012
UPTIME: 213503982284 days, 21:43:36
LOAD AVERAGE: 0.01, 0.05, 0.06
TASKS: 69
NODENAME: linux
RELEASE: 2.6.5-7.308-smp
VERSION: #2 SMP Fri Apr 27 09:33:08 PDT 2012
MACHINE: x86_64 (1999 Mhz)
MEMORY: 768 MB
PANIC: "manual"
PID: 15004
COMMAND: "lkcd_config"
TASK: 1002f4180f0 [THREAD_INFO: 1001306e000]
CPU: 2
STATE: TASK_RUNNING (PANIC)
crash>
So it is possible -- but you will need to find a vmlinux file
and probably the System.map file to get it up and running.
Dave