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) 15extern 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