48 lines · c
1/* SPDX-License-Identifier: GPL-2.0-or-later */2/*3 * Copyright (C) 2016 Namjae Jeon <linkinjeon@kernel.org>4 * Copyright (C) 2018 Samsung Electronics Co., Ltd.5 */6 7#ifndef __KSMBD_GLOB_H8#define __KSMBD_GLOB_H9 10#include <linux/ctype.h>11 12#include "unicode.h"13#include "vfs_cache.h"14 15extern int ksmbd_debug_types;16 17#define KSMBD_DEBUG_SMB BIT(0)18#define KSMBD_DEBUG_AUTH BIT(1)19#define KSMBD_DEBUG_VFS BIT(2)20#define KSMBD_DEBUG_OPLOCK BIT(3)21#define KSMBD_DEBUG_IPC BIT(4)22#define KSMBD_DEBUG_CONN BIT(5)23#define KSMBD_DEBUG_RDMA BIT(6)24#define KSMBD_DEBUG_ALL (KSMBD_DEBUG_SMB | KSMBD_DEBUG_AUTH | \25 KSMBD_DEBUG_VFS | KSMBD_DEBUG_OPLOCK | \26 KSMBD_DEBUG_IPC | KSMBD_DEBUG_CONN | \27 KSMBD_DEBUG_RDMA)28 29#ifdef pr_fmt30#undef pr_fmt31#endif32 33#ifdef SUBMOD_NAME34#define pr_fmt(fmt) "ksmbd: " SUBMOD_NAME ": " fmt35#else36#define pr_fmt(fmt) "ksmbd: " fmt37#endif38 39#define ksmbd_debug(type, fmt, ...) \40 do { \41 if (ksmbd_debug_types & KSMBD_DEBUG_##type) \42 pr_info(fmt, ##__VA_ARGS__); \43 } while (0)44 45#define UNICODE_LEN(x) ((x) * 2)46 47#endif /* __KSMBD_GLOB_H */48