UAPI: (Scripted) Disintegrate include/linux/sunrpc
[pandora-kernel.git] / include / linux / sunrpc / debug.h
1 /*
2  * linux/include/linux/sunrpc/debug.h
3  *
4  * Debugging support for sunrpc module
5  *
6  * Copyright (C) 1996, Olaf Kirch <okir@monad.swb.de>
7  */
8 #ifndef _LINUX_SUNRPC_DEBUG_H_
9 #define _LINUX_SUNRPC_DEBUG_H_
10
11 #include <uapi/linux/sunrpc/debug.h>
12
13
14 /*
15  * Enable RPC debugging/profiling.
16  */
17 #ifdef CONFIG_SUNRPC_DEBUG
18 #define  RPC_DEBUG
19 #endif
20 #ifdef CONFIG_TRACEPOINTS
21 #define RPC_TRACEPOINTS
22 #endif
23 /* #define  RPC_PROFILE */
24
25 /*
26  * Debugging macros etc
27  */
28 #ifdef RPC_DEBUG
29 extern unsigned int             rpc_debug;
30 extern unsigned int             nfs_debug;
31 extern unsigned int             nfsd_debug;
32 extern unsigned int             nlm_debug;
33 #endif
34
35 #define dprintk(args...)        dfprintk(FACILITY, ## args)
36 #define dprintk_rcu(args...)    dfprintk_rcu(FACILITY, ## args)
37
38 #undef ifdebug
39 #ifdef RPC_DEBUG                        
40 # define ifdebug(fac)           if (unlikely(rpc_debug & RPCDBG_##fac))
41
42 # define dfprintk(fac, args...) \
43         do { \
44                 ifdebug(fac) \
45                         printk(KERN_DEFAULT args); \
46         } while (0)
47
48 # define dfprintk_rcu(fac, args...)     \
49         do { \
50                 ifdebug(fac) { \
51                         rcu_read_lock(); \
52                         printk(KERN_DEFAULT args); \
53                         rcu_read_unlock(); \
54                 } \
55         } while (0)
56
57 # define RPC_IFDEBUG(x)         x
58 #else
59 # define ifdebug(fac)           if (0)
60 # define dfprintk(fac, args...) do {} while (0)
61 # define dfprintk_rcu(fac, args...)     do {} while (0)
62 # define RPC_IFDEBUG(x)
63 #endif
64
65 /*
66  * Sysctl interface for RPC debugging
67  */
68 #ifdef RPC_DEBUG
69 void            rpc_register_sysctl(void);
70 void            rpc_unregister_sysctl(void);
71 #endif
72
73 #endif /* _LINUX_SUNRPC_DEBUG_H_ */