1/* SPDX-License-Identifier: GPL-2.0 */
2#ifndef _FS_CEPH_DEBUG_H
3#define _FS_CEPH_DEBUG_H
4
5#define pr_fmt(fmt) KBUILD_MODNAME ": " fmt
6
7#include <linux/string.h>
8
9#ifdef CONFIG_CEPH_LIB_PRETTYDEBUG
10
11/*
12 * wrap pr_debug to include a filename:lineno prefix on each line.
13 * this incurs some overhead (kernel size and execution time) due to
14 * the extra function call at each call site.
15 */
16
17# if defined(DEBUG) || defined(CONFIG_DYNAMIC_DEBUG)
18# define dout(fmt, ...) \
19 pr_debug("%.*s %12.12s:%-4d : " fmt, \
20 8 - (int)sizeof(KBUILD_MODNAME), " ", \
21 kbasename(__FILE__), __LINE__, ##__VA_ARGS__)
22# define doutc(client, fmt, ...) \
23 pr_debug("%.*s %12.12s:%-4d : [%pU %llu] " fmt, \
24 8 - (int)sizeof(KBUILD_MODNAME), " ", \
25 kbasename(__FILE__), __LINE__, \
26 &client->fsid, client->monc.auth->global_id, \
27 ##__VA_ARGS__)
28# else
29/* faux printk call just to see any compiler warnings. */
30# define dout(fmt, ...) do { \
31 if (0) \
32 printk(KERN_DEBUG fmt, ##__VA_ARGS__); \
33 } while (0)
34# define doutc(client, fmt, ...) do { \
35 if (0) \
36 printk(KERN_DEBUG "[%pU %llu] " fmt, \
37 &client->fsid, \
38 client->monc.auth->global_id, \
39 ##__VA_ARGS__); \
40 } while (0)
41# endif
42
43#else
44
45/*
46 * or, just wrap pr_debug
47 */
48# define dout(fmt, ...) pr_debug(" " fmt, ##__VA_ARGS__)
49# define doutc(client, fmt, ...) \
50 pr_debug(" [%pU %llu] %s: " fmt, &client->fsid, \
51 client->monc.auth->global_id, __func__, ##__VA_ARGS__)
52
53#endif
54
55#define pr_notice_client(client, fmt, ...) \
56 pr_notice("[%pU %llu]: " fmt, &client->fsid, \
57 client->monc.auth->global_id, ##__VA_ARGS__)
58#define pr_info_client(client, fmt, ...) \
59 pr_info("[%pU %llu]: " fmt, &client->fsid, \
60 client->monc.auth->global_id, ##__VA_ARGS__)
61#define pr_warn_client(client, fmt, ...) \
62 pr_warn("[%pU %llu]: " fmt, &client->fsid, \
63 client->monc.auth->global_id, ##__VA_ARGS__)
64#define pr_warn_once_client(client, fmt, ...) \
65 pr_warn_once("[%pU %llu]: " fmt, &client->fsid, \
66 client->monc.auth->global_id, ##__VA_ARGS__)
67#define pr_err_client(client, fmt, ...) \
68 pr_err("[%pU %llu]: " fmt, &client->fsid, \
69 client->monc.auth->global_id, ##__VA_ARGS__)
70#define pr_warn_ratelimited_client(client, fmt, ...) \
71 pr_warn_ratelimited("[%pU %llu]: " fmt, &client->fsid, \
72 client->monc.auth->global_id, ##__VA_ARGS__)
73#define pr_err_ratelimited_client(client, fmt, ...) \
74 pr_err_ratelimited("[%pU %llu]: " fmt, &client->fsid, \
75 client->monc.auth->global_id, ##__VA_ARGS__)
76
77#endif
78

source code of linux/include/linux/ceph/ceph_debug.h