zoukankan      html  css  js  c++  java
  • 打开固定文件的pr_debug

    驱动中pr_debug定义在kernel/include/linux/printk.h

     

    /* If you are writing a driver, please usedev_dbg instead */

    #if defined(CONFIG_DYNAMIC_DEBUG)

    /* dynamic_pr_debug() uses pr_fmt()internally so we don't need it here */

    #define pr_debug(fmt, ...)

             dynamic_pr_debug(fmt,##__VA_ARGS__)

    #elif defined(DEBUG)

    #define pr_debug(fmt, ...)

             printk(KERN_DEBUGpr_fmt(fmt), ##__VA_ARGS__)

    #else

    #define pr_debug(fmt, ...)

             no_printk(KERN_DEBUGpr_fmt(fmt), ##__VA_ARGS__)

    #endif

     

     

    makefile文件里添加ccflag+y =--DDEBUG

    或者专门宏控制

    ccflag+$(CONFIG_AUDIO_CODEC) =--DDEBUG

     

    能够打开所有log,可是对于android多个文件来说log太多导致系统分析不方便,为了便于打开须要模块的log,我在须要打开log的文件里对define进行又一次定义.

    #ifdef pr_debug
    #undef pr_debug
    #define pr_debug(fmt, ...) 
    	printk(KERN_DEBUG pr_fmt(fmt), ##__VA_ARGS__)
    #else
    #define pr_debug(fmt, ...) 
    	printk(KERN_DEBUG pr_fmt(fmt), ##__VA_ARGS__)
    #endif
    


     

    这样就方便调试源码中相应的log,避免逐个打开的工作量.

  • 相关阅读:
    MySQl数据约束练习
    MySQL查询实例
    网络通信协议简介(TCP与UDP)
    数据类型转换
    C++编译过的C代码为什么要用extern C
    hashtable
    以RB-tree为底层机制的几个关联式容器
    红黑树(RB-Tree)
    slist
    deque
  • 原文地址:https://www.cnblogs.com/bhlsheji/p/5245259.html
Copyright © 2011-2022 走看看