Merge branch 'upstream' of git://git.kernel.org/pub/scm/linux/kernel/git/linville...
[linux-2.6] / fs / 9p / debug.h
1 /*
2  *  linux/fs/9p/debug.h - V9FS Debug Definitions
3  *
4  *  Copyright (C) 2004 by Eric Van Hensbergen <ericvh@gmail.com>
5  *  Copyright (C) 2002 by Ron Minnich <rminnich@lanl.gov>
6  *
7  *  This program is free software; you can redistribute it and/or modify
8  *  it under the terms of the GNU General Public License as published by
9  *  the Free Software Foundation; either version 2 of the License, or
10  *  (at your option) any later version.
11  *
12  *  This program is distributed in the hope that it will be useful,
13  *  but WITHOUT ANY WARRANTY; without even the implied warranty of
14  *  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
15  *  GNU General Public License for more details.
16  *
17  *  You should have received a copy of the GNU General Public License
18  *  along with this program; if not, write to:
19  *  Free Software Foundation
20  *  51 Franklin Street, Fifth Floor
21  *  Boston, MA  02111-1301  USA
22  *
23  */
24
25 #define DEBUG_ERROR             (1<<0)
26 #define DEBUG_CURRENT           (1<<1)
27 #define DEBUG_9P                (1<<2)
28 #define DEBUG_VFS               (1<<3)
29 #define DEBUG_CONV              (1<<4)
30 #define DEBUG_MUX               (1<<5)
31 #define DEBUG_TRANS             (1<<6)
32 #define DEBUG_SLABS             (1<<7)
33
34 #define DEBUG_DUMP_PKT          0
35
36 extern int v9fs_debug_level;
37
38 #define dprintk(level, format, arg...) \
39 do {  \
40         if((v9fs_debug_level & level)==level) \
41                 printk(KERN_NOTICE "-- %s (%d): " \
42                 format , __FUNCTION__, current->pid , ## arg); \
43 } while(0)
44
45 #define eprintk(level, format, arg...) \
46 do { \
47         printk(level "v9fs: %s (%d): " \
48                 format , __FUNCTION__, current->pid , ## arg); \
49 } while(0)
50
51 #if DEBUG_DUMP_PKT
52 static inline void dump_data(const unsigned char *data, unsigned int datalen)
53 {
54         int i, n;
55         char buf[5*8];
56
57         n = 0;
58         i = 0;
59         while (i < datalen) {
60                 n += snprintf(buf+n, sizeof(buf)-n, "%02x", data[i++]);
61                 if (i%4 == 0)
62                         n += snprintf(buf+n, sizeof(buf)-n, " ");
63
64                 if (i%16 == 0) {
65                         dprintk(DEBUG_ERROR, "%s\n", buf);
66                         n = 0;
67                 }
68         }
69
70         dprintk(DEBUG_ERROR, "%s\n", buf);
71 }
72 #else                           /* DEBUG_DUMP_PKT */
73 static inline void dump_data(const unsigned char *data, unsigned int datalen)
74 {
75
76 }
77 #endif                          /* DEBUG_DUMP_PKT */