#define pr_fmt(fmt) …
#include <linux/module.h>
static void do_prints(void);
static int param_set_do_prints(const char *instr, const struct kernel_param *kp)
{ … }
static int param_get_do_prints(char *buffer, const struct kernel_param *kp)
{ … }
static const struct kernel_param_ops param_ops_do_prints = …;
module_param_cb(…);
#define DD_SYS_WRAP(_model, _flags) …
enum cat_disjoint_bits { … };
DECLARE_DYNDBG_CLASSMAP(…);
DD_SYS_WRAP(…);
DD_SYS_WRAP(…);
enum cat_disjoint_names { … };
DECLARE_DYNDBG_CLASSMAP(…);
DD_SYS_WRAP(…);
DD_SYS_WRAP(…);
enum cat_level_num { … };
DECLARE_DYNDBG_CLASSMAP(…);
DD_SYS_WRAP(…);
DD_SYS_WRAP(…);
enum cat_level_names { … };
DECLARE_DYNDBG_CLASSMAP(…);
DD_SYS_WRAP(…);
DD_SYS_WRAP(…);
#define prdbg(SYM) …
static void do_cats(void)
{ … }
static void do_levels(void)
{ … }
static void do_prints(void)
{ … }
static int __init test_dynamic_debug_init(void)
{ … }
static void __exit test_dynamic_debug_exit(void)
{ … }
module_init(…) …;
module_exit(test_dynamic_debug_exit);
MODULE_AUTHOR(…) …;
MODULE_DESCRIPTION(…) …;
MODULE_LICENSE(…) …;