mirror of
				https://github.com/torvalds/linux.git
				synced 2025-10-31 16:48:26 +02:00 
			
		
		
		
	 0066f623bc
			
		
	
	
		0066f623bc
		
	
	
	
	
		
			
			Prefer to report ENOMEM rather than incur the oom for allocations in ksmbd. __GFP_NORETRY could not achieve that, It would fail the allocations just too easily. __GFP_RETRY_MAYFAIL will keep retrying the allocation until there is no more progress and fail the allocation instead go OOM and let the caller to deal with it. Signed-off-by: Namjae Jeon <linkinjeon@kernel.org> Signed-off-by: Steve French <stfrench@microsoft.com>
		
			
				
	
	
		
			49 lines
		
	
	
	
		
			1.2 KiB
		
	
	
	
		
			C
		
	
	
	
	
	
			
		
		
	
	
			49 lines
		
	
	
	
		
			1.2 KiB
		
	
	
	
		
			C
		
	
	
	
	
	
| /* 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)
 | |
| 
 | |
| #define KSMBD_DEFAULT_GFP	(GFP_KERNEL | __GFP_RETRY_MAYFAIL)
 | |
| 
 | |
| #endif /* __KSMBD_GLOB_H */
 |