]> git.ipfire.org Git - thirdparty/kernel/linux.git/commitdiff
smb: server: make use of smbdirect.ko
authorStefan Metzmacher <metze@samba.org>
Fri, 18 Jul 2025 17:22:47 +0000 (19:22 +0200)
committerSteve French <stfrench@microsoft.com>
Thu, 16 Apr 2026 02:58:24 +0000 (21:58 -0500)
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>
fs/smb/server/Kconfig
fs/smb/server/transport_rdma.c

index 96aa8e2a8770c1a6ec1f249c01ce21450e63cbe3..37387410e5bb31936448bdbc91cae6951bf49840 100644 (file)
@@ -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
index 7171bde9d078828d2f5fc99b3d1618c7407ee788..5f84d133feff7d3ff78b2c832513ddc0bfed7de5 100644 (file)
@@ -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"