mirror of https://gitee.com/openkylin/linux.git
CIFS: add ONCE flag for cifs_dbg type
* Since cifs_vfs_error was just using pr_debug_ratelimited like the rest of cifs_dbg, move it there too * Add a ONCE type flag to call the pr_xxx_once() debug function instead of the ratelimited ones. To convert existing printk_once() calls to this we can run: perl -i -pE \ 's/printk_once\s*\(([^" \n]+)(.*)/cifs_dbg(VFS|ONCE,$2/g' \ fs/cifs/*.c Signed-off-by: Aurelien Aptel <aaptel@suse.com> Signed-off-by: Steve French <stfrench@microsoft.com>
This commit is contained in:
parent
3995bbf53b
commit
f2f176b418
|
@ -42,23 +42,6 @@ cifs_dump_mem(char *label, void *data, int length)
|
|||
data, length, true);
|
||||
}
|
||||
|
||||
#ifdef CONFIG_CIFS_DEBUG
|
||||
void cifs_vfs_err(const char *fmt, ...)
|
||||
{
|
||||
struct va_format vaf;
|
||||
va_list args;
|
||||
|
||||
va_start(args, fmt);
|
||||
|
||||
vaf.fmt = fmt;
|
||||
vaf.va = &args;
|
||||
|
||||
pr_err_ratelimited("CIFS VFS: %pV", &vaf);
|
||||
|
||||
va_end(args);
|
||||
}
|
||||
#endif
|
||||
|
||||
void cifs_dump_detail(void *buf)
|
||||
{
|
||||
#ifdef CONFIG_CIFS_DEBUG2
|
||||
|
|
|
@ -39,6 +39,7 @@ extern int cifsFYI;
|
|||
#else
|
||||
#define NOISY 0
|
||||
#endif
|
||||
#define ONCE 8
|
||||
|
||||
/*
|
||||
* debug ON
|
||||
|
@ -46,19 +47,28 @@ extern int cifsFYI;
|
|||
*/
|
||||
#ifdef CONFIG_CIFS_DEBUG
|
||||
|
||||
__printf(1, 2) void cifs_vfs_err(const char *fmt, ...);
|
||||
|
||||
/* information message: e.g., configuration, major event */
|
||||
#define cifs_dbg(type, fmt, ...) \
|
||||
do { \
|
||||
if (type == FYI && cifsFYI & CIFS_INFO) { \
|
||||
pr_debug_ratelimited("%s: " \
|
||||
fmt, __FILE__, ##__VA_ARGS__); \
|
||||
} else if (type == VFS) { \
|
||||
cifs_vfs_err(fmt, ##__VA_ARGS__); \
|
||||
} else if (type == NOISY && type != 0) { \
|
||||
pr_debug_ratelimited(fmt, ##__VA_ARGS__); \
|
||||
} \
|
||||
#define cifs_dbg_func(ratefunc, type, fmt, ...) \
|
||||
do { \
|
||||
if ((type) & FYI && cifsFYI & CIFS_INFO) { \
|
||||
pr_debug_ ## ratefunc("%s: " \
|
||||
fmt, __FILE__, ##__VA_ARGS__); \
|
||||
} else if ((type) & VFS) { \
|
||||
pr_err_ ## ratefunc("CuIFS VFS: " \
|
||||
fmt, ##__VA_ARGS__); \
|
||||
} else if ((type) & NOISY && (NOISY != 0)) { \
|
||||
pr_debug_ ## ratefunc(fmt, ##__VA_ARGS__); \
|
||||
} \
|
||||
} while (0)
|
||||
|
||||
#define cifs_dbg(type, fmt, ...) \
|
||||
do { \
|
||||
if ((type) & ONCE) \
|
||||
cifs_dbg_func(once, \
|
||||
type, fmt, ##__VA_ARGS__); \
|
||||
else \
|
||||
cifs_dbg_func(ratelimited, \
|
||||
type, fmt, ##__VA_ARGS__); \
|
||||
} while (0)
|
||||
|
||||
/*
|
||||
|
|
Loading…
Reference in New Issue