2005-09-09 13:04:24 -07:00
/*
* linux / fs / 9 p / debug . h - V9FS Debug Definitions
*
* Copyright ( C ) 2004 by Eric Van Hensbergen < ericvh @ gmail . com >
* Copyright ( C ) 2002 by Ron Minnich < rminnich @ lanl . gov >
*
* This program is free software ; you can redistribute it and / or modify
2006-03-25 03:07:28 -08:00
* it under the terms of the GNU General Public License version 2
* as published by the Free Software Foundation .
2005-09-09 13:04:24 -07:00
*
* This program is distributed in the hope that it will be useful ,
* but WITHOUT ANY WARRANTY ; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE . See the
* GNU General Public License for more details .
*
* You should have received a copy of the GNU General Public License
* along with this program ; if not , write to :
* Free Software Foundation
* 51 Franklin Street , Fifth Floor
* Boston , MA 02111 - 1301 USA
*
*/
# define DEBUG_ERROR (1<<0)
# define DEBUG_CURRENT (1<<1)
# define DEBUG_9P (1<<2)
# define DEBUG_VFS (1<<3)
# define DEBUG_CONV (1<<4)
# define DEBUG_MUX (1<<5)
# define DEBUG_TRANS (1<<6)
# define DEBUG_SLABS (1<<7)
2006-03-25 03:07:25 -08:00
# define DEBUG_FCALL (1<<8)
2005-09-09 13:04:24 -07:00
# define DEBUG_DUMP_PKT 0
extern int v9fs_debug_level ;
# define dprintk(level, format, arg...) \
do { \
if ( ( v9fs_debug_level & level ) = = level ) \
printk ( KERN_NOTICE " -- %s (%d): " \
format , __FUNCTION__ , current - > pid , # # arg ) ; \
} while ( 0 )
# define eprintk(level, format, arg...) \
do { \
printk ( level " v9fs: %s (%d): " \
format , __FUNCTION__ , current - > pid , # # arg ) ; \
} while ( 0 )
# if DEBUG_DUMP_PKT
static inline void dump_data ( const unsigned char * data , unsigned int datalen )
{
2006-01-08 01:05:00 -08:00
int i , n ;
char buf [ 5 * 8 ] ;
2005-09-09 13:04:24 -07:00
2006-01-08 01:05:00 -08:00
n = 0 ;
i = 0 ;
while ( i < datalen ) {
n + = snprintf ( buf + n , sizeof ( buf ) - n , " %02x " , data [ i + + ] ) ;
if ( i % 4 = = 0 )
n + = snprintf ( buf + n , sizeof ( buf ) - n , " " ) ;
if ( i % 16 = = 0 ) {
dprintk ( DEBUG_ERROR , " %s \n " , buf ) ;
n = 0 ;
}
2005-09-09 13:04:24 -07:00
}
2006-01-08 01:05:00 -08:00
dprintk ( DEBUG_ERROR , " %s \n " , buf ) ;
2005-09-09 13:04:24 -07:00
}
# else /* DEBUG_DUMP_PKT */
static inline void dump_data ( const unsigned char * data , unsigned int datalen )
{
}
# endif /* DEBUG_DUMP_PKT */