From 6acc747906c5b87657dc313ff6cb777d805a6ec4 Mon Sep 17 00:00:00 2001 From: Stefan Metzmacher Date: Fri, 18 Jul 2025 19:22:33 +0200 Subject: [PATCH] smb: client: make use of smbdirect.ko This means we no longer inline the common smbdirect .c files and use the exported functions from the module instead. Note the connection specific logging is still redirect to cifs.ko functions via smbdirect_socket_set_logging(). We still don't use real socket layer, but we're very close... Cc: Steve French Cc: Tom Talpey Cc: Long Li Cc: Namjae Jeon Cc: David Howells Cc: linux-cifs@vger.kernel.org Cc: samba-technical@lists.samba.org Signed-off-by: Stefan Metzmacher Acked-by: Namjae Jeon Signed-off-by: Steve French --- fs/smb/client/Kconfig | 5 +++-- fs/smb/client/smbdirect.c | 10 ---------- 2 files changed, 3 insertions(+), 12 deletions(-) diff --git a/fs/smb/client/Kconfig b/fs/smb/client/Kconfig index ec2abfe0a62f..63831242fddf 100644 --- a/fs/smb/client/Kconfig +++ b/fs/smb/client/Kconfig @@ -180,8 +180,9 @@ if CIFS config CIFS_SMB_DIRECT bool "SMB Direct support" - depends on CIFS=m && INFINIBAND && INFINIBAND_ADDR_TRANS || CIFS=y && INFINIBAND=y && INFINIBAND_ADDR_TRANS=y - select SG_POOL + depends on CIFS && INFINIBAND && INFINIBAND_ADDR_TRANS + depends on CIFS=m || INFINIBAND=y + select SMB_COMMON_SMBDIRECT help Enables SMB Direct support for SMB 3.0, 3.02 and 3.1.1. SMB Direct allows transferring SMB packets over RDMA. If unsure, diff --git a/fs/smb/client/smbdirect.c b/fs/smb/client/smbdirect.c index f0b3eebc8279..73fc86312bbf 100644 --- a/fs/smb/client/smbdirect.c +++ b/fs/smb/client/smbdirect.c @@ -5,8 +5,6 @@ * Author(s): Long Li */ -#define SMBDIRECT_USE_INLINE_C_FILES 1 - #include "smbdirect.h" #include "cifs_debug.h" #include "cifsproto.h" @@ -572,11 +570,3 @@ void smbd_debug_proc_show(struct TCP_Server_Info *server, struct seq_file *m) server->rdma_readwrite_threshold, m); } - -/* - * This is a temporary solution until all code - * is moved to smbdirect_all_c_files.c and we - * have an smbdirect.ko that exports the required - * functions. - */ -#include "../common/smbdirect/smbdirect_all_c_files.c"