雑記

SEもどきのメモ帳

openSuSEでカーネルダンプ解析・・・の準備(とりあえずダンプを読んでみる)

konbu-conception.hatenablog.com

 

konbu-conception.hatenablog.com

 

デバッグカーネルとダンプを用意したので、ひとまずダンプ時のスタックを見てみましょう。

 

crash <System.map ファイル> <デバッグカーネル> <ダンプファイル>

 - System.mapファイル → ダンプがあるディレクトリにあります

 - デバッグカーネル → この前makeしたディレクトリにあります

 - ダンプファイル → ダンプがあるディレクトリにあります

 

linux-node:/var/crash/2015-10-28-22:47 # ls -l
total 65040
-rw-r--r-- 1 root root 189 Oct 28 22:47 README.txt
-rw-r--r-- 1 root root 3003177 Oct 28 22:47 System.map-3.16.7-24-desktop
-rw------- 1 root root 119974 Oct 28 22:47 dmesg.txt
-rw------- 1 root root 56793778 Oct 28 22:47 vmcore
-rw-r--r-- 1 root root 6668759 Oct 28 22:47 vmlinux-3.16.7-24-desktop.gz
linux-node:/var/crash/2015-10-28-22:47 #

linux-node:/var/crash/2015-10-28-22:47 # crash ./System.map-3.16.7-24-desktop /usr/src/linux/vmlinux ./vmcore

crash 7.0.8
Copyright (C) 2002-2014 Red Hat, Inc.

This GDB was configured as "x86_64-unknown-linux-gnu"...

SYSTEM MAP: ./System.map-3.16.7-24-desktop
DEBUG KERNEL: /usr/src/linux/vmlinux (3.16.7-24-desktop)
DUMPFILE: ./vmcore [PARTIAL DUMP]
CPUS: 8
DATE: Wed Oct 28 22:47:25 2015
UPTIME: 00:01:31
LOAD AVERAGE: 1.01, 0.41, 0.15
TASKS: 697
NODENAME: linux-node
RELEASE: 3.16.7-24-desktop
VERSION: #1 SMP PREEMPT Mon Aug 3 14:37:06 UTC 2015 (ec183cc)
MACHINE: x86_64 (2808 Mhz)
MEMORY: 8 GB
PANIC: "Oops: 0002 [#1] PREEMPT SMP " (check log for details)
PID: 7793
COMMAND: "bash"
TASK: ffff880211bd0250 [THREAD_INFO: ffff8800a8c10000]
CPU: 5
STATE: TASK_RUNNING (PANIC)


crash>

 

読めました。

crashのコマンドはほとんどgdbと同じような気がするので、btって打つと

 

crash> bt
PID: 7793 TASK: ffff880211bd0250 CPU: 5 COMMAND: "bash"
#0 [ffff8800a8c13bb8] machine_kexec at ffffffff8103e30c
#1 [ffff8800a8c13bf8] crash_kexec at ffffffff810e070a
#2 [ffff8800a8c13cb8] oops_end at ffffffff81006598
#3 [ffff8800a8c13cd8] no_context at ffffffff8161643b
#4 [ffff8800a8c13d18] __do_page_fault at ffffffff81049fa4
#5 [ffff8800a8c13e10] page_fault at ffffffff81625478
[exception RIP: sysrq_handle_crash+18]
RIP: ffffffff813e8572 RSP: ffff8800a8c13ec0 RFLAGS: 00010282
RAX: 000000000000000f RBX: ffffffff81ea32a0 RCX: 0000000000000000
RDX: ffff88023e6ae5e0 RSI: ffff88023e6aca38 RDI: 0000000000000063
RBP: 0000000000000063 R8: 00000000000006c8 R9: ffffffff820f3530
R10: 00000000000006c8 R11: 0000000000000003 R12: 0000000000000000
R13: 0000000000000004 R14: 0000000000000000 R15: 0000000000000000
ORIG_RAX: ffffffffffffffff CS: 0010 SS: 0018
#6 [ffff8800a8c13ec0] __handle_sysrq at ffffffff813e8ca4
#7 [ffff8800a8c13ee8] write_sysrq_trigger at ffffffff813e914b
#8 [ffff8800a8c13ef8] proc_reg_write at ffffffff81219429
#9 [ffff8800a8c13f10] vfs_write at ffffffff811b8852
#10 [ffff8800a8c13f48] sys_write at ffffffff811b9392
#11 [ffff8800a8c13f80] system_call_fastpath at ffffffff8162354d
RIP: 00007f61ac0824e0 RSP: 00007ffffc39dc68 RFLAGS: 00010202
RAX: 0000000000000001 RBX: ffffffff8162354d RCX: 0000000000000063
RDX: 0000000000000002 RSI: 00007f61acbef000 RDI: 0000000000000001
RBP: 0000000000000002 R8: 000000000000000a R9: 00007f61acbd0700
R10: 00000000ffffffff R11: 0000000000000246 R12: 00007f61ac34c2a0
R13: 00007f61acbef000 R14: 0000000000000002 R15: 0000000000000000
ORIG_RAX: 0000000000000001 CS: 0033 SS: 002b
crash>

 

スタックが出せました。