> From: Long Li <[hidden email]>
> Starting with SMB2 dialect 3.0, Microsoft introduced SMB Direct transport
> protocol for transferring upper layer (SMB2) payload over RDMA via Infiniband,
> RoCE or iWARP. The prococol is published in [MS-SMBD]
> Change log:
> Implemented RDMA read/write via memory registration.
> Re-arranged patches for review [Christoph Hellwig <[hidden email]>].
> Restructured the code and fixed bugs on protocol timer and keepalive
> [Tom Talpey <[hidden email]>].
> Improved performance by introducing an additional queue for handling
> empty packets and reducing lock contention on IRQ path.
> Added light weight profiling by reading TSC.
> Improved the code for checking SMB versions when mounting with rdma option
> [Leon Romanovsky <[hidden email]>].
> Moved to use pages instead of buffers for passing I/O for RDMA
> [Christoph Hellwig <[hidden email]>].
> Removed redundant code and refactored I/O code paths
> [Christoph Hellwig <[hidden email]>, Tom Talpey <[hidden email]>].
> Fixed connectivity issues with iWAPR devices.
> Exported configurable protocol parameters to /proc/fs/cifs
> [Steve French <[hidden email]>]
> Re-arranged patches for review
> [Pavel Shilovsky <[hidden email]>].
> Fixed compiling errors on ia64, i386 and when INFINIBAND is not
> configured. [kbuild test robot]
> Profiling is removed and will be introduced in a seperate patch.
> Report internal code error via WARN_ON(). Change description in
> Kconfig [Pavel Shilovsky <[hidden email]>].
> Removed the use of #ifdef CONFIG_CIFS_SMB_DIRECT in upper layer
> code calling transport I/O. [Matthew Wilcox <[hidden email]>,
> Tom Talpey <[hidden email]>]
> Fixed comment typos and removed unused code
> [Ronnie Sahlberg <[hidden email]>]
> Removed the first 7 patches in v7, which have been merged.
> Restructed the code to move relevant function definitions to later patches.
> [Pavel Shilovsky <[hidden email]>]
> Added a patch to disable signing when RDMA is in use. Signing will be
> enabled after it is properly implemented in SMB Direct code paths.
> Fixed an issue on passing the incorrect offset to smbd_buffer_descriptor_v1
> when RDMA read is used for SMB write. This was caused by recent CIFS
> patches to remove packet length from SMB2 packet header.
> Long Li (16):
> CIFS: SMBD: Upper layer connects to SMBDirect session
> CIFS: SMBD: Implement function to reconnect to a SMB Direct transport
> CIFS: SMBD: Upper layer reconnects to SMB Direct session
> CIFS: SMBD: Implement function to destroy a SMB Direct connection
> CIFS: SMBD: Upper layer destroys SMB Direct session on shutdown or
> CIFS: SMBD: Set SMB Direct maximum read or write size for I/O
> CIFS: SMBD: Implement function to receive data via RDMA receive
> CIFS: SMBD: Upper layer receives data via RDMA receive
> CIFS: SMBD: Implement function to send data via RDMA send
> CIFS: SMBD: Upper layer sends data via RDMA send
> CIFS: SMBD: Implement RDMA memory registration
> CIFS: SMBD: Upper layer performs SMB write via RDMA read through
> memory registration
> CIFS: SMBD: Read correct returned data length for RDMA write (SMB
> read) I/O
> CIFS: SMBD: Upper layer performs SMB read via RDMA write through
> memory registration
> CIFS: SMBD: Add SMB Direct debug counters
> CIFS: SMBD: Disable signing on SMB direct transport
> fs/cifs/cifs_debug.c | 66 ++++
> fs/cifs/cifsglob.h | 16 +-
> fs/cifs/cifssmb.c | 15 +-
> fs/cifs/connect.c | 46 ++-
> fs/cifs/file.c | 17 +-
> fs/cifs/smb1ops.c | 4 +-
> fs/cifs/smb2ops.c | 24 +-
> fs/cifs/smb2pdu.c | 117 ++++++-
> fs/cifs/smbdirect.c | 947 +++++++++++++++++++++++++++++++++++++++++++++++++++
> fs/cifs/smbdirect.h | 72 ++++
> fs/cifs/transport.c | 8 +-
> 11 files changed, 1308 insertions(+), 24 deletions(-)
> To unsubscribe from this list: send the line "unsubscribe linux-cifs" in
> the body of a message to [hidden email] > More majordomo info at http://vger.kernel.org/majordomo-info.html