假如我们要打印acpuclock-krait.c中的
dev_dbg(drv.dev, "ACPU%d speed change complete\n", cpu);
在adb shell中输入:
mount –t debugfs none /sys/kernel/debug
cd /sys/kernel/debug
echo -n 'file acpuclock-krait.c +p' > dynamic_debug/control
上面是大家熟悉的debugfs;下面是打印出的log:
dynamic debug log输出机制
0. 注意该机制只对 dev_dbg -> dynamic_dev_dbg 定义的debug log输出加以控制
1. 如何使用:(kernel/Documentation/dynamic-debug-howto.txt)
mkdir /data/debugfs
mount -t debugfs none /data/debugfs
echo -n 'file ab8500_fg.c +p' > /data/debugfs/dynamic_debug/control //增加该文件dynamic debug的输出
echo -n 'file ab8500_fg.c -p' > /data/debugfs/dynamic_debug/control //去掉该文件dynamic debug的输出
2. 如果想使用debugfs 必须,在kernel的config文件(kernel/arch/arm/configs/semc_lotus_deconfig)中有CONFIG_DEBUG_FS=y
3. 如果需要使用Dynamic debug机制,需要在kernel的config文件(kernel/arch/arm/configs/semc_lotus_deconfig)中有CONFIG_DYNAMIC_DEBUG=y
参考:
http://blog.csdn.net/pillarbuaa/article/details/7634546
http://www.07net01.com/program/322825.html