| /* SPDX-License-Identifier: GPL-2.0-or-later */ |
| /* |
| * Copyright (C) 2016 Namjae Jeon <linkinjeon@kernel.org> |
| * Copyright (C) 2018 Samsung Electronics Co., Ltd. |
| */ |
| |
| #ifndef __KSMBD_GLOB_H |
| #define __KSMBD_GLOB_H |
| |
| #include <linux/ctype.h> |
| |
| #include "unicode.h" |
| #include "vfs_cache.h" |
| |
| extern int ksmbd_debug_types; |
| |
| #define KSMBD_DEBUG_SMB BIT(0) |
| #define KSMBD_DEBUG_AUTH BIT(1) |
| #define KSMBD_DEBUG_VFS BIT(2) |
| #define KSMBD_DEBUG_OPLOCK BIT(3) |
| #define KSMBD_DEBUG_IPC BIT(4) |
| #define KSMBD_DEBUG_CONN BIT(5) |
| #define KSMBD_DEBUG_RDMA BIT(6) |
| #define KSMBD_DEBUG_ALL (KSMBD_DEBUG_SMB | KSMBD_DEBUG_AUTH | \ |
| KSMBD_DEBUG_VFS | KSMBD_DEBUG_OPLOCK | \ |
| KSMBD_DEBUG_IPC | KSMBD_DEBUG_CONN | \ |
| KSMBD_DEBUG_RDMA) |
| |
| #ifdef pr_fmt |
| #undef pr_fmt |
| #endif |
| |
| #ifdef SUBMOD_NAME |
| #define pr_fmt(fmt) "ksmbd: " SUBMOD_NAME ": " fmt |
| #else |
| #define pr_fmt(fmt) "ksmbd: " fmt |
| #endif |
| |
| #define ksmbd_debug(type, fmt, ...) \ |
| do { \ |
| if (ksmbd_debug_types & KSMBD_DEBUG_##type) \ |
| pr_info(fmt, ##__VA_ARGS__); \ |
| } while (0) |
| |
| #define UNICODE_LEN(x) ((x) * 2) |
| |
| #endif /* __KSMBD_GLOB_H */ |