xref: /openbmc/linux/fs/ntfs/debug.h (revision a1d312de)
1 /* SPDX-License-Identifier: GPL-2.0-or-later */
2 /*
3  * debug.h - NTFS kernel debug support. Part of the Linux-NTFS project.
4  *
5  * Copyright (c) 2001-2004 Anton Altaparmakov
6  */
7 
8 #ifndef _LINUX_NTFS_DEBUG_H
9 #define _LINUX_NTFS_DEBUG_H
10 
11 #include <linux/fs.h>
12 
13 #include "runlist.h"
14 
15 #ifdef DEBUG
16 
17 extern int debug_msgs;
18 
19 extern __printf(4, 5)
20 void __ntfs_debug(const char *file, int line, const char *function,
21 		  const char *format, ...);
22 /**
23  * ntfs_debug - write a debug level message to syslog
24  * @f:		a printf format string containing the message
25  * @...:	the variables to substitute into @f
26  *
27  * ntfs_debug() writes a DEBUG level message to the syslog but only if the
28  * driver was compiled with -DDEBUG. Otherwise, the call turns into a NOP.
29  */
30 #define ntfs_debug(f, a...)						\
31 	__ntfs_debug(__FILE__, __LINE__, __func__, f, ##a)
32 
33 extern void ntfs_debug_dump_runlist(const runlist_element *rl);
34 
35 #else	/* !DEBUG */
36 
37 #define ntfs_debug(fmt, ...)						\
38 do {									\
39 	if (0)								\
40 		no_printk(fmt, ##__VA_ARGS__);				\
41 } while (0)
42 
43 #define ntfs_debug_dump_runlist(rl)	do {} while (0)
44 
45 #endif	/* !DEBUG */
46 
47 extern  __printf(3, 4)
48 void __ntfs_warning(const char *function, const struct super_block *sb,
49 		    const char *fmt, ...);
50 #define ntfs_warning(sb, f, a...)	__ntfs_warning(__func__, sb, f, ##a)
51 
52 extern  __printf(3, 4)
53 void __ntfs_error(const char *function, const struct super_block *sb,
54 		  const char *fmt, ...);
55 #define ntfs_error(sb, f, a...)		__ntfs_error(__func__, sb, f, ##a)
56 
57 #endif /* _LINUX_NTFS_DEBUG_H */
58