lkml.org 
[lkml]   [2011]   [Aug]   [21]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
/
SubjectRFC: dynamic debug enhancements?
From
Date
Hey Jason.

I recently went through drivers/media and updated
lots of calls to pr_<level>.

A common pattern for debugging there and elsewhere
treewide is the use of macros like:

#define dprintk(level, fmt, ...) \
do { \
if (level > [some_modparam_var]) \
pr_debug(fmt, ##__VA_ARGS__); \
} while (0)

and

#define dprintk(mask, fmt, ...) \
do { \
if (mask & [some_modparam_var]) \
pr_debug(fmt, ##__VA_ARGS__); \
} while (0)

It might be useful to have standardized calls
like pr_debug_level and pr_debug_mask instead
of multiple hand-rolled variants treewide.

Another common thing was the use of various
__FILE__, __func__, __LINE__ outputs.

I think __FILE__ is not particularly useful and
can reasonably be replaced by KBUILD_MODNAME.

Perhaps it would be good to have options to
enable these outputs with specific controls
for dynamic_debug uses.

Maybe something like using a define similar to
pr_fmt for what options are preselected for
various ddebug outputs like:

#define DYNAMIC_DEBUG_DEFAULT_FLAGS \
(_DPRINTK_FLAGS_INCL_MODNAME | \
_DPRINTK_FLAGS_INCL_FUNCNAME | \
_DPRINTK_FLAGS_INCL_LINENO)




\
 
 \ /
  Last update: 2011-08-22 02:17    [W:0.097 / U:1.268 seconds]
©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site