我是靠谱客的博主 典雅大象,最近开发中收集的这篇文章主要介绍linux可以运行dev吗,打开 Linux的dev_dbg,觉得挺不错的,现在分享给大家,希望可以做个参考。

概述

内核中的大部分驱动都使用了dev_dbg接口打印调试信息,这些信息非常有用帮助你去调试理解代码,默认是不会输出到控制台的。基于Linux version 4.14.78

有两种方法让dev_dbg 输出:

/kernel/include/linux/device.h

#if defined(CONFIG_DYNAMIC_DEBUG)

#define dev_dbg(dev, format, ...)

do {

dynamic_dev_dbg(dev, format, ##__VA_ARGS__);

} while (0)

#elif defined(DEBUG)

#define dev_dbg(dev, format, arg...)

dev_printk(KERN_DEBUG, dev, format, ##arg)

#else

#define dev_dbg(dev, format, arg...)

({

if (0)

dev_printk(KERN_DEBUG, dev, format, ##arg);

})

#endif

1.定义DEBUG宏:

在需要打印dev_dbg调试信息的驱动文件开头定义DEBUG宏, 注意必须是在 或者前面定义.

47df77ef70b3

image.png

2.打开动态调试功能:

CONFIG_DEBUG_FS=y

CONFIG_DYNAMIC_DEBUG=y

动态调试方法:

mount -t debugfs none /sys/kernel/debug 路径也可以自己选择,这里用系统默认路径

echo -n 'file xxx.c +p' > /data/debugfs/dynamic_debug/control 增加xxx.c文件dynamic debug的输出

echo -n 'file xxx.c -p' > /data/debugfs/dynamic_debug/control 去掉xxx.c文件dynamic debug的输出

3.调整显示级别:

CONFIG_CONSOLE_LOGLEVEL_DEFAULT=10

查看:

cat /proc/sys/kernel/printk

10 4 1 10

最后

以上就是典雅大象为你收集整理的linux可以运行dev吗,打开 Linux的dev_dbg的全部内容,希望文章能够帮你解决linux可以运行dev吗,打开 Linux的dev_dbg所遇到的程序开发问题。

如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。

本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
点赞(46)

评论列表共有 0 条评论

立即
投稿
返回
顶部