L: samba-technical@lists.samba.org (moderated for non-subscribers)
S: Maintained
F: fs/smb/client/smbdirect.*
-F: fs/smb/common/smbdirect/
+F: fs/smb/smbdirect/
F: fs/smb/server/transport_rdma.*
SMC91x ETHERNET DRIVER
source "fs/smb/client/Kconfig"
source "fs/smb/server/Kconfig"
-source "fs/smb/common/smbdirect/Kconfig"
+source "fs/smb/smbdirect/Kconfig"
config SMBFS
tristate
# SPDX-License-Identifier: GPL-2.0
obj-$(CONFIG_SMBFS) += common/
+obj-$(CONFIG_SMBDIRECT) += smbdirect/
obj-$(CONFIG_CIFS) += client/
obj-$(CONFIG_SMB_SERVER) += server/
bool "SMB Direct support"
depends on CIFS && INFINIBAND && INFINIBAND_ADDR_TRANS
depends on CIFS=m || INFINIBAND=y
- select SMB_COMMON_SMBDIRECT
+ select 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,
#include "cifs_debug.h"
#include "cifsproto.h"
#include "smb2proto.h"
-#include "../common/smbdirect/smbdirect_public.h"
+#include "../smbdirect/public.h"
/* Port numbers for SMBD transport */
#define SMB_PORT 445
#include "cifsglob.h"
-#include "../common/smbdirect/smbdirect.h"
+#include "../smbdirect/smbdirect.h"
extern int rdma_readwrite_threshold;
extern int smbd_max_frmr_depth;
#
obj-$(CONFIG_SMBFS) += cifs_md4.o
-obj-$(CONFIG_SMB_COMMON_SMBDIRECT) += smbdirect/
+++ /dev/null
-# SPDX-License-Identifier: GPL-2.0-or-later
-#
-# Makefile for smbdirect support
-#
-
-obj-$(CONFIG_SMB_COMMON_SMBDIRECT) += smbdirect.o
-
-smbdirect-y := \
- smbdirect_socket.o \
- smbdirect_connection.o \
- smbdirect_mr.o \
- smbdirect_rw.o \
- smbdirect_debug.o \
- smbdirect_connect.o \
- smbdirect_listen.o \
- smbdirect_accept.o \
- smbdirect_devices.o \
- smbdirect_main.o
bool "Support for SMB Direct protocol"
depends on SMB_SERVER && INFINIBAND && INFINIBAND_ADDR_TRANS
depends on SMB_SERVER=m || INFINIBAND=y
- select SMB_COMMON_SMBDIRECT
+ select SMBDIRECT
default n
help
#include "smb_common.h"
#include "../common/smb2status.h"
#include "transport_rdma.h"
-#include "../common/smbdirect/smbdirect_public.h"
+#include "../smbdirect/public.h"
#define SMB_DIRECT_PORT_IWARP 5445
static inline unsigned int get_smbd_max_read_write_size(struct ksmbd_transport *kt) { return 0; }
#endif
-#include "../common/smbdirect/smbdirect.h"
+#include "../smbdirect/smbdirect.h"
#endif /* __KSMBD_TRANSPORT_RDMA_H__ */
#
# smbdirect configuration
-config SMB_COMMON_SMBDIRECT
+config SMBDIRECT
def_tristate n
depends on INFINIBAND && INFINIBAND_ADDR_TRANS
depends on m || INFINIBAND=y
--- /dev/null
+# SPDX-License-Identifier: GPL-2.0-or-later
+#
+# Makefile for smbdirect support
+#
+
+obj-$(CONFIG_SMBDIRECT) += smbdirect.o
+
+smbdirect-y := \
+ socket.o \
+ connection.o \
+ mr.o \
+ rw.o \
+ debug.o \
+ connect.o \
+ listen.o \
+ accept.o \
+ devices.o \
+ main.o
* Copyright (c) 2025, Stefan Metzmacher
*/
-#include "smbdirect_internal.h"
+#include "internal.h"
#include <net/sock.h>
-#include "../../common/smb2status.h"
+#include "../common/smb2status.h"
static int smbdirect_accept_rdma_event_handler(struct rdma_cm_id *id,
struct rdma_cm_event *event);
* Copyright (c) 2012,2016,2017,2025 Stefan Metzmacher
*/
-#include "smbdirect_internal.h"
-#include "../../common/smb2status.h"
+#include "internal.h"
+#include "../common/smb2status.h"
static int smbdirect_connect_setup_connection(struct smbdirect_socket *sc);
static int smbdirect_connect_resolve_addr(struct smbdirect_socket *sc,
* Copyright (c) 2025, Stefan Metzmacher
*/
-#include "smbdirect_internal.h"
+#include "internal.h"
#include <linux/folio_queue.h>
struct smbdirect_map_sges {
* Copyright (c) 2025, Stefan Metzmacher
*/
-#include "smbdirect_internal.h"
+#include "internal.h"
#include <linux/seq_file.h>
void smbdirect_connection_legacy_debug_proc_show(struct smbdirect_socket *sc,
* Copyright (c) 2025 Stefan Metzmacher
*/
-#include "smbdirect_internal.h"
+#include "internal.h"
static u8 smbdirect_ib_device_rdma_capable_node_type(struct ib_device *ib_dev)
{
#define pr_fmt(fmt) KBUILD_MODNAME ": " fmt
#include "smbdirect.h"
-#include "smbdirect_pdu.h"
-#include "smbdirect_public.h"
+#include "pdu.h"
+#include "public.h"
#include <linux/mutex.h>
extern struct smbdirect_module_state smbdirect_globals;
-#include "smbdirect_socket.h"
+#include "socket.h"
struct smbdirect_device {
struct list_head list;
* Copyright (c) 2025, Stefan Metzmacher
*/
-#include "smbdirect_internal.h"
+#include "internal.h"
static int smbdirect_listen_rdma_event_handler(struct rdma_cm_id *id,
struct rdma_cm_event *event);
* Copyright (c) 2025, Stefan Metzmacher
*/
-#include "smbdirect_internal.h"
+#include "internal.h"
#include <linux/module.h>
struct smbdirect_module_state smbdirect_globals = {
* Copyright (c) 2025, Stefan Metzmacher
*/
-#include "smbdirect_internal.h"
+#include "internal.h"
/*
* Allocate MRs used for RDMA read/write
* Copyright (c) 2025, Stefan Metzmacher
*/
-#include "smbdirect_internal.h"
+#include "internal.h"
static int smbdirect_connection_wait_for_rw_credits(struct smbdirect_socket *sc,
int credits)
* Copyright (c) 2025, Stefan Metzmacher
*/
-#include "smbdirect_internal.h"
+#include "internal.h"
bool smbdirect_frwr_is_supported(const struct ib_device_attr *attrs)
{