如果没有额外的工具,Netlink(如内核内部协议)似乎很难调试——我实际上无法使用它,因为我在一个非常有限的嵌入式系统上。
如果我从源代码重新编译,是否有 netlink 的内核调试选项?例如,确认消息已被接收并理解的日志
我已将调试详细程度设置为 15,但找不到专门与 netlink 相关的选项
答案1
我已经诉诸将自己的打印日志记录添加到内核中以获得 netlink 的可见性 - 我看不到任何可为此配置的官方解决方案。
rtnetlink_rcv_msg
inlinux/net/core/rtnetlink.c
是一个很好的起点,您可以添加printk
调用而无需任何额外的工作,例如:
printk(KERN_INFO "netlink msg recv msgtype %d\n", type);