这两周一直在crash
邮件列表里讨论如何在SuSE Xen
上使用crash
调试Dom0 kernel
。邮件来来回回讨论很多(参见这里),最后还发现了一个bug。细节不说了,把最后的结果总结一下:
(1)由于SuSE kerenl
默认编译打开CONFIG_STRICT_DEVMEM
编译开关,所以crash
工具无法完全访问/dev/mem
,可以使用/proc/kcore
作为代替;
(2)SuSE
带有crash.ko
驱动(位于:“/lib/modules/uname -r
/updates/crash.ko”),但默认没有安装,可以自己手动安装(使用insmod
命令),然后就可以使用了:
# crash
crash 7.1.3
Copyright (C) 2002-2014 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.
crash: /boot/xen-4.5.gz: original filename unknown
Use "-f /boot/xen-4.5.gz" on command line to prevent this message.
WARNING: machine type mismatch:
crash utility: X86_64
/var/tmp/xen-4.5.gz_ud3IRy: X86
crash: /boot/symtypes-3.12.49-6-default.gz: original filename unknown
Use "-f /boot/symtypes-3.12.49-6-default.gz" on command line to
prevent this message.
crash: /boot/symvers-3.12.49-6-default.gz: original filename unknown
Use "-f /boot/symvers-3.12.49-6-default.gz" on command line to
prevent this message.
GNU gdb (GDB) 7.6
Copyright (C) 2013 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"...
KERNEL: /boot/vmlinux-3.12.49-6-xen.gz
DEBUGINFO: /usr/lib/debug/boot/vmlinux-3.12.49-6-xen.debug
DUMPFILE: /dev/crash
CPUS: 128
DATE: Fri Nov 20 06:55:06 2015
UPTIME: 18:51:36
LOAD AVERAGE: 1.76, 1.48, 1.21
TASKS: 1230
NODENAME: dl980-5
RELEASE: 3.12.49-6-xen
VERSION: #1 SMP Mon Oct 26 16:05:37 UTC 2015 (11560c3)
MACHINE: x86_64 (1995 Mhz)
MEMORY: 125.9 GB
PID: 6618
COMMAND: "crash"
TASK: ffff881ea93b2140 [THREAD_INFO: ffff881e869f2000]
CPU: 112
STATE: TASK_RUNNING (ACTIVE)