Add the rt linux 4.1.3-rt3 as base
[kvmfornfv.git] / kernel / include / linux / sunrpc / debug.h
diff --git a/kernel/include/linux/sunrpc/debug.h b/kernel/include/linux/sunrpc/debug.h
new file mode 100644 (file)
index 0000000..59a7889
--- /dev/null
@@ -0,0 +1,107 @@
+/*
+ * linux/include/linux/sunrpc/debug.h
+ *
+ * Debugging support for sunrpc module
+ *
+ * Copyright (C) 1996, Olaf Kirch <okir@monad.swb.de>
+ */
+#ifndef _LINUX_SUNRPC_DEBUG_H_
+#define _LINUX_SUNRPC_DEBUG_H_
+
+#include <uapi/linux/sunrpc/debug.h>
+
+/*
+ * Debugging macros etc
+ */
+#if IS_ENABLED(CONFIG_SUNRPC_DEBUG)
+extern unsigned int            rpc_debug;
+extern unsigned int            nfs_debug;
+extern unsigned int            nfsd_debug;
+extern unsigned int            nlm_debug;
+#endif
+
+#define dprintk(args...)       dfprintk(FACILITY, ## args)
+#define dprintk_rcu(args...)   dfprintk_rcu(FACILITY, ## args)
+
+#undef ifdebug
+#if IS_ENABLED(CONFIG_SUNRPC_DEBUG)
+# define ifdebug(fac)          if (unlikely(rpc_debug & RPCDBG_##fac))
+
+# define dfprintk(fac, args...)        \
+       do { \
+               ifdebug(fac) \
+                       printk(KERN_DEFAULT args); \
+       } while (0)
+
+# define dfprintk_rcu(fac, args...)    \
+       do { \
+               ifdebug(fac) { \
+                       rcu_read_lock(); \
+                       printk(KERN_DEFAULT args); \
+                       rcu_read_unlock(); \
+               } \
+       } while (0)
+
+# define RPC_IFDEBUG(x)                x
+#else
+# define ifdebug(fac)          if (0)
+# define dfprintk(fac, args...)        do {} while (0)
+# define dfprintk_rcu(fac, args...)    do {} while (0)
+# define RPC_IFDEBUG(x)
+#endif
+
+/*
+ * Sysctl interface for RPC debugging
+ */
+
+struct rpc_clnt;
+struct rpc_xprt;
+
+#if IS_ENABLED(CONFIG_SUNRPC_DEBUG)
+void           rpc_register_sysctl(void);
+void           rpc_unregister_sysctl(void);
+void           sunrpc_debugfs_init(void);
+void           sunrpc_debugfs_exit(void);
+void           rpc_clnt_debugfs_register(struct rpc_clnt *);
+void           rpc_clnt_debugfs_unregister(struct rpc_clnt *);
+void           rpc_xprt_debugfs_register(struct rpc_xprt *);
+void           rpc_xprt_debugfs_unregister(struct rpc_xprt *);
+#else
+static inline void
+sunrpc_debugfs_init(void)
+{
+       return;
+}
+
+static inline void
+sunrpc_debugfs_exit(void)
+{
+       return;
+}
+
+static inline void
+rpc_clnt_debugfs_register(struct rpc_clnt *clnt)
+{
+       return;
+}
+
+static inline void
+rpc_clnt_debugfs_unregister(struct rpc_clnt *clnt)
+{
+       return;
+}
+
+static inline void
+rpc_xprt_debugfs_register(struct rpc_xprt *xprt)
+{
+       return;
+}
+
+static inline void
+rpc_xprt_debugfs_unregister(struct rpc_xprt *xprt)
+{
+       return;
+}
+#endif
+
+#endif /* _LINUX_SUNRPC_DEBUG_H_ */