可能就是历史原因,如果看老的代码,很多C开源代码里的都是这种,有一个全局的宏来控制日志级别。需要通过重新编译才能启用低级别调试信息打印。如果可以改成动态修改,比如使用proc文件系统来做动态调整。功能上会更完备。当然需要额外的代码实现这个功能,但是又可以供参考的实例。
#define DEBUG
#define NEIGH_DEBUG 1
#define neigh_dbg(level, fmt, ...) \
do {
\
if (level <= NEIGH_DEBUG) \
pr_debug(fmt, ##__VA_ARGS__); \
} while (0)