Chinaunix

标题: dynamic_dev_dbg宏求助。 [打印本页]

作者: chen_q07    时间: 2011-12-12 18:44
标题: dynamic_dev_dbg宏求助。
各位朋友,有谁对kernel中的dynamic debug有所了解么?

我先修改.config文件,将CONFIG_DYNAMIC_DEBUG和CONIFG_DEBUG_FS打开,

然后在dynamic_debug.h头文件中,将dynamic_dev_dbg宏定义中的_DPRINTK_FLAGS_DEFAULT修改成了_DPRINTK_FLAGS_DPRINT,

然后编译。

运行起来之后将debugfs挂载上mount -t debugfs none /sys/kernel/debug

并且在dynamic_debug目录下的control文件中添加了规则,

结果没有打印。。。

我自己写了个类似的宏对比之后,定位为

#define dynamic_dev_dbg(dev, fmt, ...) do {    \
static struct _ddebug descriptor    \
__used        \
__attribute__((section("__verbose", aligned()) =  \
{ KBUILD_MODNAME, __func__, __FILE__, fmt, DEBUG_HASH, \
  DEBUG_HASH2, __LINE__, _DPRINTK_FLAGS_DEFAULT }; \
if (__dynamic_dbg_enabled(descriptor))    \
  dev_printk(KERN_DEBUG, dev, fmt, ##__VA_ARGS__); \
} while (0)

中的(__dynamic_dbg_enabled(descriptor))    一直是0,不知道怎么回事?



求高手指点下。这玩意儿把我整的有点惨。

Good Luck and Have Fun.
作者: stefan_weids    时间: 2011-12-14 11:36
Documentation/dynamic-debug-howto.txt
作者: stefan_weids    时间: 2011-12-14 11:37
menuconfig -》 kernel hacking -》enable dyanamic_printk
mount -t debugfs debugfs  /sys/kernel/debug/
作者: chen_q07    时间: 2011-12-15 09:56
回复 2# stefan_weids


    最后我问题找到了,是没有将子模块的debug宏打开。




欢迎光临 Chinaunix (http://bbs.chinaunix.net/) Powered by Discuz! X3.2