设置dynamic debug
kernel source code中有很多pr_debug()/dev_dbg()/print_hex_dump_debug()等,之前问过大佬,给出了这样的调试方法:
开启某个文件中的pr_debug或dev_dbg
echo 'file $file_name +p' > /sys/kernel/debug/dynaminc_debug/control
如下图所示:
停止某个文件中的dynamic debug打印
echo 'file $file_name -p' > /sys/kernel/debug/dynaminc_debug/control
例如:上一次+p打印到1357行,然后设置-p,触发条件后还是打印在1357行
查看自己有没有设置成功
直接cat control | grep mytest,如果有,说明设置成功。
遇见的问题
触发条件后 一直没有输出
cat /proc/kmsg
发现有输出,然后再dmesg以后就有输出了,这一点很奇怪。不过好在问题解决了。