1 #ifndef _FS_CEPH_DEBUG_H 2 #define _FS_CEPH_DEBUG_H 3 4 #define pr_fmt(fmt) KBUILD_MODNAME ": " fmt 5 6 #ifdef CONFIG_CEPH_LIB_PRETTYDEBUG 7 8 /* 9 * wrap pr_debug to include a filename:lineno prefix on each line. 10 * this incurs some overhead (kernel size and execution time) due to 11 * the extra function call at each call site. 12 */ 13 14 # if defined(DEBUG) || defined(CONFIG_DYNAMIC_DEBUG) 15 extern const char *ceph_file_part(const char *s, int len); 16 # define dout(fmt, ...) \ 17 pr_debug("%.*s %12.12s:%-4d : " fmt, \ 18 8 - (int)sizeof(KBUILD_MODNAME), " ", \ 19 ceph_file_part(__FILE__, sizeof(__FILE__)), \ 20 __LINE__, ##__VA_ARGS__) 21 # else 22 /* faux printk call just to see any compiler warnings. */ 23 # define dout(fmt, ...) do { \ 24 if (0) \ 25 printk(KERN_DEBUG fmt, ##__VA_ARGS__); \ 26 } while (0) 27 # endif 28 29 #else 30 31 /* 32 * or, just wrap pr_debug 33 */ 34 # define dout(fmt, ...) pr_debug(" " fmt, ##__VA_ARGS__) 35 36 #endif 37 38 #endif 39