summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorStefan Metzmacher <metze@samba.org>2025-07-18 20:22:47 +0300
committerSteve French <stfrench@microsoft.com>2026-04-16 05:58:24 +0300
commit50bdab9ae45e6345eaa94adbaefaf1ce5a7e90a1 (patch)
treeff92c880a6faf0f0a0f60ea80d3aa57fb832ac57
parent98bdc5fda9cc425afe608342b372d25970071f96 (diff)
downloadlinux-50bdab9ae45e6345eaa94adbaefaf1ce5a7e90a1.tar.xz
smb: server: 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 ksmbd.ko functions via smbdirect_socket_set_logging(). We still don't use real socket layer, but we're very close... Cc: Namjae Jeon <linkinjeon@kernel.org> Cc: Steve French <smfrench@gmail.com> Cc: Tom Talpey <tom@talpey.com> Cc: linux-cifs@vger.kernel.org Cc: samba-technical@lists.samba.org Signed-off-by: Stefan Metzmacher <metze@samba.org> Acked-by: Namjae Jeon <linkinjeon@kernel.org> Signed-off-by: Steve French <stfrench@microsoft.com>
-rw-r--r--fs/smb/server/Kconfig5
-rw-r--r--fs/smb/server/transport_rdma.c10
2 files changed, 3 insertions, 12 deletions
diff --git a/fs/smb/server/Kconfig b/fs/smb/server/Kconfig
index 96aa8e2a8770..37387410e5bb 100644
--- a/fs/smb/server/Kconfig
+++ b/fs/smb/server/Kconfig
@@ -47,8 +47,9 @@ if SMB_SERVER
config SMB_SERVER_SMBDIRECT
bool "Support for SMB Direct protocol"
- depends on SMB_SERVER=m && INFINIBAND && INFINIBAND_ADDR_TRANS || SMB_SERVER=y && INFINIBAND=y && INFINIBAND_ADDR_TRANS=y
- select SG_POOL
+ depends on SMB_SERVER && INFINIBAND && INFINIBAND_ADDR_TRANS
+ depends on SMB_SERVER=m || INFINIBAND=y
+ select SMB_COMMON_SMBDIRECT
default n
help
diff --git a/fs/smb/server/transport_rdma.c b/fs/smb/server/transport_rdma.c
index 7171bde9d078..5f84d133feff 100644
--- a/fs/smb/server/transport_rdma.c
+++ b/fs/smb/server/transport_rdma.c
@@ -9,8 +9,6 @@
#define SUBMOD_NAME "smb_direct"
-#define SMBDIRECT_USE_INLINE_C_FILES 1
-
#include <linux/kthread.h>
#include <linux/list.h>
#include <linux/string_choices.h>
@@ -690,11 +688,3 @@ static const struct ksmbd_transport_ops ksmbd_smb_direct_transport_ops = {
.rdma_write = smb_direct_rdma_write,
.free_transport = smb_direct_free_transport,
};
-
-/*
- * 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"