Linux

sysrq-trigger 不接受參數“g”

  • January 24, 2022

我正在嘗試調試核心。但我無法用 觸發 kgdb echo g > /proc/sysrq-trigger,它只是列印幫助消息。

在此處輸入圖像描述

我啟用了核心調試、kgdb over serial、幀指針等。

CONFIG_DEBUG_KERNEL=y
CONFIG_FRAME_POINTER=y
CONFIG_HAVE_ARCH_KGDB=y
CONFIG_KGDB=y
CONFIG_KGDB_SERIAL_CONSOLE=y

可能缺少什麼?核心版本為2.6.32.1,在KVM中執行CentOS 5

看起來kgdboc在啟動選項中設置參數有效,不知道為什麼。

(我正在使用 libvirtd)

跟隨這篇博文(中文):

  1. 在 uboot 標頭檔中
#define CONFIG_BOOTARGS_COMMON          "earlyprintk console=ttyS0,115200 kgdboc=ttyS0,115200 rootwait nprofile_irq_duration=on "  
  1. 在定義配置中
CONFIG_MAGIC_SYSRQ=y     //make sure open it  
CONFIG_CONSOLE_POLL=y    //after CONFIG_SERIAL_CORE_CONSOLE=y  
CONFIG_DEBUG_INFO=y  
CONFIG_FTRACE=y  
CONFIG_FUNCTION_TRACER=y  
CONFIG_KGDB=y  
CONFIG_KGDB_SERIAL_CONSOLE=y  
  1. 重啟後
echo ttyS0 > /sys/module/kgdboc/parameters/kgdboc  
show -> KGDB: Registered I/O driver kgdboc  

echo g > /proc/sysrq-trigger  
show -> sysrq: SysRq : DEBUG  
KGDB: Entering KGDB

引用自:https://unix.stackexchange.com/questions/111283