Slide 23
Slide 23 text
もうちょっと深堀り
● GPFの詳細をログに出すカーネルパッチを作成
23
--- a/arch/x86/kernel/traps.c
+++ b/arch/x86/kernel/traps.c
@@ -514,10 +514,9 @@ do_general_protection(struct pt_regs *regs, long error_code)
tsk->thread.error_code = error_code;
tsk->thread.trap_nr = X86_TRAP_GP;
- if (show_unhandled_signals && unhandled_signal(tsk, SIGSEGV) &&
- printk_ratelimit()) {
- pr_info("%s[%d] general protection ip:%lx sp:%lx error:%lx",
- tsk->comm, task_pid_nr(tsk),
+ if (show_unhandled_signals) {
+ pr_err("CPU%u: %s[%d] general protection ip:%lx sp:%lx error:%lx",
+ tsk->cpu, tsk->comm, task_pid_nr(tsk),
regs->ip, regs->sp, error_code);