summaryrefslogtreecommitdiffstats
path: root/fs/ksmbd/transport_rdma.h
diff options
context:
space:
mode:
authorNamjae Jeon <linkinjeon@kernel.org>2022-05-16 16:22:43 +0900
committerSteve French <stfrench@microsoft.com>2022-05-21 15:01:43 -0500
commit65bb45b97b578c8eed1ffa80caec84708df49729 (patch)
treed783a45c1fe9cd4fa962da7d763ae22db88b7cd7 /fs/ksmbd/transport_rdma.h
parent65ca7a3ffff811d6c0d4342d467c381257d566d4 (diff)
downloadlinux-65bb45b97b578c8eed1ffa80caec84708df49729.tar.gz
linux-65bb45b97b578c8eed1ffa80caec84708df49729.tar.bz2
linux-65bb45b97b578c8eed1ffa80caec84708df49729.zip
ksmbd: add smbd max io size parameter
Add 'smbd max io size' parameter to adjust smbd-direct max read/write size. Signed-off-by: Namjae Jeon <linkinjeon@kernel.org> Reviewed-by: Hyunchul Lee <hyc.lee@gmail.com> Signed-off-by: Steve French <stfrench@microsoft.com>
Diffstat (limited to 'fs/ksmbd/transport_rdma.h')
-rw-r--r--fs/ksmbd/transport_rdma.h6
1 files changed, 6 insertions, 0 deletions
diff --git a/fs/ksmbd/transport_rdma.h b/fs/ksmbd/transport_rdma.h
index 5567d93a6f96..e7b4e6790fab 100644
--- a/fs/ksmbd/transport_rdma.h
+++ b/fs/ksmbd/transport_rdma.h
@@ -7,6 +7,10 @@
#ifndef __KSMBD_TRANSPORT_RDMA_H__
#define __KSMBD_TRANSPORT_RDMA_H__
+#define SMBD_DEFAULT_IOSIZE (8 * 1024 * 1024)
+#define SMBD_MIN_IOSIZE (512 * 1024)
+#define SMBD_MAX_IOSIZE (16 * 1024 * 1024)
+
/* SMB DIRECT negotiation request packet [MS-SMBD] 2.2.1 */
struct smb_direct_negotiate_req {
__le16 min_version;
@@ -52,10 +56,12 @@ struct smb_direct_data_transfer {
int ksmbd_rdma_init(void);
void ksmbd_rdma_destroy(void);
bool ksmbd_rdma_capable_netdev(struct net_device *netdev);
+void init_smbd_max_io_size(unsigned int sz);
#else
static inline int ksmbd_rdma_init(void) { return 0; }
static inline int ksmbd_rdma_destroy(void) { return 0; }
static inline bool ksmbd_rdma_capable_netdev(struct net_device *netdev) { return false; }
+static inline void init_smbd_max_io_size(unsigned int sz) { }
#endif
#endif /* __KSMBD_TRANSPORT_RDMA_H__ */