免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
最近访问板块 发新帖
查看: 3211 | 回复: 3
打印 上一主题 下一主题

dynamic_dev_dbg宏求助。 [复制链接]

论坛徽章:
0
跳转到指定楼层
1 [收藏(0)] [报告]
发表于 2011-12-12 18:44 |只看该作者 |倒序浏览
各位朋友,有谁对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.

论坛徽章:
0
2 [报告]
发表于 2011-12-14 11:36 |只看该作者
Documentation/dynamic-debug-howto.txt

论坛徽章:
0
3 [报告]
发表于 2011-12-14 11:37 |只看该作者
menuconfig -》 kernel hacking -》enable dyanamic_printk
mount -t debugfs debugfs  /sys/kernel/debug/

论坛徽章:
0
4 [报告]
发表于 2011-12-15 09:56 |只看该作者
回复 2# stefan_weids


    最后我问题找到了,是没有将子模块的debug宏打开。
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

北京盛拓优讯信息技术有限公司. 版权所有 京ICP备16024965号-6 北京市公安局海淀分局网监中心备案编号:11010802020122 niuxiaotong@pcpop.com 17352615567
未成年举报专区
中国互联网协会会员  联系我们:huangweiwei@itpub.net
感谢所有关心和支持过ChinaUnix的朋友们 转载本站内容请注明原作者名及出处

清除 Cookies - ChinaUnix - Archiver - WAP - TOP