linux/include/linux/sunrpc/debug.h
<<
>>
Prefs
   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
   9#ifndef _LINUX_SUNRPC_DEBUG_H_
  10#define _LINUX_SUNRPC_DEBUG_H_
  11
  12/*
  13 * RPC debug facilities
  14 */
  15#define RPCDBG_XPRT             0x0001
  16#define RPCDBG_CALL             0x0002
  17#define RPCDBG_DEBUG            0x0004
  18#define RPCDBG_NFS              0x0008
  19#define RPCDBG_AUTH             0x0010
  20#define RPCDBG_BIND             0x0020
  21#define RPCDBG_SCHED            0x0040
  22#define RPCDBG_TRANS            0x0080
  23#define RPCDBG_SVCXPRT          0x0100
  24#define RPCDBG_SVCDSP           0x0200
  25#define RPCDBG_MISC             0x0400
  26#define RPCDBG_CACHE            0x0800
  27#define RPCDBG_ALL              0x7fff
  28
  29#ifdef __KERNEL__
  30
  31/*
  32 * Enable RPC debugging/profiling.
  33 */
  34#ifdef CONFIG_SYSCTL
  35#define  RPC_DEBUG
  36#endif
  37/* #define  RPC_PROFILE */
  38
  39/*
  40 * Debugging macros etc
  41 */
  42#ifdef RPC_DEBUG
  43extern unsigned int             rpc_debug;
  44extern unsigned int             nfs_debug;
  45extern unsigned int             nfsd_debug;
  46extern unsigned int             nlm_debug;
  47#endif
  48
  49#define dprintk(args...)        dfprintk(FACILITY, ## args)
  50
  51#undef ifdebug
  52#ifdef RPC_DEBUG                        
  53# define ifdebug(fac)           if (unlikely(rpc_debug & RPCDBG_##fac))
  54# define dfprintk(fac, args...) do { ifdebug(fac) printk(args); } while(0)
  55# define RPC_IFDEBUG(x)         x
  56#else
  57# define ifdebug(fac)           if (0)
  58# define dfprintk(fac, args...) do ; while (0)
  59# define RPC_IFDEBUG(x)
  60#endif
  61
  62/*
  63 * Sysctl interface for RPC debugging
  64 */
  65#ifdef RPC_DEBUG
  66void            rpc_register_sysctl(void);
  67void            rpc_unregister_sysctl(void);
  68#endif
  69
  70#endif /* __KERNEL__ */
  71
  72/*
  73 * Declarations for the sysctl debug interface, which allows to read or
  74 * change the debug flags for rpc, nfs, nfsd, and lockd. Since the sunrpc
  75 * module currently registers its sysctl table dynamically, the sysctl path
  76 * for module FOO is <CTL_SUNRPC, CTL_FOODEBUG>.
  77 */
  78
  79enum {
  80        CTL_RPCDEBUG = 1,
  81        CTL_NFSDEBUG,
  82        CTL_NFSDDEBUG,
  83        CTL_NLMDEBUG,
  84        CTL_SLOTTABLE_UDP,
  85        CTL_SLOTTABLE_TCP,
  86        CTL_MIN_RESVPORT,
  87        CTL_MAX_RESVPORT,
  88};
  89
  90#endif /* _LINUX_SUNRPC_DEBUG_H_ */
  91
lxr.linux.no kindly hosted by Redpill Linpro AS, provider of Linux consulting and operations services since 1995.