cifs_debug.h 2.1 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778
  1. /*
  2. *
  3. * Copyright (c) International Business Machines Corp., 2000,2002
  4. * Modified by Steve French (sfrench@us.ibm.com)
  5. *
  6. * This program is free software; you can redistribute it and/or modify
  7. * it under the terms of the GNU General Public License as published by
  8. * the Free Software Foundation; either version 2 of the License, or
  9. * (at your option) any later version.
  10. *
  11. * This program is distributed in the hope that it will be useful,
  12. * but WITHOUT ANY WARRANTY; without even the implied warranty of
  13. * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See
  14. * the GNU General Public License for more details.
  15. *
  16. * You should have received a copy of the GNU General Public License
  17. * along with this program; if not, write to the Free Software
  18. * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
  19. *
  20. */
  21. #ifndef _H_CIFS_DEBUG
  22. #define _H_CIFS_DEBUG
  23. void cifs_dump_mem(char *label, void *data, int length);
  24. void cifs_dump_detail(void *);
  25. void cifs_dump_mids(struct TCP_Server_Info *);
  26. extern int traceSMB; /* flag which enables the function below */
  27. void dump_smb(void *, int);
  28. #define CIFS_INFO 0x01
  29. #define CIFS_RC 0x02
  30. #define CIFS_TIMER 0x04
  31. #define VFS 1
  32. #define FYI 2
  33. extern int cifsFYI;
  34. #ifdef CONFIG_CIFS_DEBUG2
  35. #define NOISY 4
  36. #else
  37. #define NOISY 0
  38. #endif
  39. /*
  40. * debug ON
  41. * --------
  42. */
  43. #ifdef CONFIG_CIFS_DEBUG
  44. __printf(1, 2) void cifs_vfs_err(const char *fmt, ...);
  45. /* information message: e.g., configuration, major event */
  46. #define cifs_dbg(type, fmt, ...) \
  47. do { \
  48. if (type == FYI) { \
  49. if (cifsFYI & CIFS_INFO) { \
  50. printk(KERN_DEBUG "%s: " fmt, \
  51. __FILE__, ##__VA_ARGS__); \
  52. } \
  53. } else if (type == VFS) { \
  54. cifs_vfs_err(fmt, ##__VA_ARGS__); \
  55. } else if (type == NOISY && type != 0) { \
  56. printk(KERN_DEBUG fmt, ##__VA_ARGS__); \
  57. } \
  58. } while (0)
  59. /*
  60. * debug OFF
  61. * ---------
  62. */
  63. #else /* _CIFS_DEBUG */
  64. #define cifs_dbg(type, fmt, ...) \
  65. do { \
  66. if (0) \
  67. printk(KERN_DEBUG fmt, ##__VA_ARGS__); \
  68. } while (0)
  69. #endif
  70. #endif /* _H_CIFS_DEBUG */