内核调试技巧
内核调试技巧
printk
打印级别
| FLAG | |
|-------------|---|
|KERN_EMERG |<0>|
|KERN_ALERT |<1>|
|KERN_CRIT |<2>|
|KERN_ERR |<3>|
|KERN_WARNING |<4>|
|KERN_NOTICE |<5>|
|KERN_INFO |<6>|
|KERN_DEBUG |<7>|
|-------------|---|
- printk打印级别比控制台级别小,则显示。
- 控制台默认值为DEFAULTCONSPLELOGLEVEL = 7,比7小的都能显示。
- 使用
echo 8 > /proc/sys/kernel/printk
调整printk级别
syslog和dmesg
- 后台进程(klogd和syslogd)组成,klogd从内核的日志缓冲区获取内核信息并转发给syslogd
- __LOG_BUF_LEN是长度,循环队列
- dmesg