lists.openwall.net   lists  /  announce  owl-users  owl-dev  john-users  john-dev  passwdqc-users  yescrypt  popa3d-users  /  oss-security  kernel-hardening  musl  sabotage  tlsify  passwords  /  crypt-dev  xvendor  /  Bugtraq  Full-Disclosure  linux-kernel  linux-netdev  linux-ext4  linux-hardening  PHC 
Open Source and information security mailing list archives
 
Hash Suite: Windows password security audit tool. GUI, reports in PDF.
[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Date:   Wed, 30 Aug 2017 18:40:25 +0000
From:   Long Li <longli@...rosoft.com>
To:     Long Li <longli@...rosoft.com>, Steve French <sfrench@...ba.org>,
        "linux-cifs@...r.kernel.org" <linux-cifs@...r.kernel.org>,
        "samba-technical@...ts.samba.org" <samba-technical@...ts.samba.org>,
        "linux-kernel@...r.kernel.org" <linux-kernel@...r.kernel.org>,
        "linux-rdma@...r.kernel.org" <linux-rdma@...r.kernel.org>,
        Christoph Hellwig <hch@...radead.org>,
        Tom Talpey <ttalpey@...rosoft.com>,
        Matthew Wilcox <mawilcox@...rosoft.com>
Subject: RE: [Patch v3 00/19] CIFS: Implement SMB Direct

> -----Original Message-----
> From: Long Li [mailto:longli@...hange.microsoft.com]
> Sent: Tuesday, August 29, 2017 12:29 PM
> To: Steve French <sfrench@...ba.org>; linux-cifs@...r.kernel.org; samba-
> technical@...ts.samba.org; linux-kernel@...r.kernel.org; linux-
> rdma@...r.kernel.org; Christoph Hellwig <hch@...radead.org>; Tom Talpey
> <ttalpey@...rosoft.com>; Matthew Wilcox <mawilcox@...rosoft.com>
> Cc: Long Li <longli@...rosoft.com>
> Subject: [Patch v3 00/19] CIFS: Implement SMB Direct
> 
> From: Long Li <longli@...rosoft.com>
> 
> Starting with SMB2 dialect 3.0, Microsoft introduced SMBDirect transport
> protocol for transferring upper layer (SMB2) payload over RDMA via
> Infiniband, RoCE or iWARP. The prococol is published in [MS-SMBD]
> (https://na01.safelinks.protection.outlook.com/?url=https%3A%2F%2Fmsdn
> .microsoft.com%2Fen-
> us%2Flibrary%2Fhh536346.aspx&data=02%7C01%7Clongli%40microsoft.com
> %7C73e721d48ac0402f414208d4ef1470f2%7C72f988bf86f141af91ab2d7cd011
> db47%7C1%7C0%7C636396318489728526&sdata=3ES4XY3qXqUVEJ37YUHlMJ
> QWuxFeljzOEMhGXhmO2i0%3D&reserved=0).
> 
> Patch v2 added RDMA read/write via memory registration, and addressed
> feedbacks on v1.
> 
> Patch v3 improved performance by introducing an additional queue for
> handling empty packets and reducing lock contention on IRQ path. Also
> added light weight profiling by reading TSC and addressed feedbacks on v2.

I received some requests about testing the patch. Thank you for help testing.

A snapshot of the development kernel with the patch set is at:
https://github.com/longlimsft/linux-next/tree/patch_v3

During development, it is tested on Infiniband with Mellanox ConnectX-3.

> 
> Long Li (19):
>   CIFS: Add rdma mount option
>   CIFS: SMBD: Add SMBDirect protocol and transport constants
>   CIFS: SMBD: Implement SMBDirect transport
>   CIFS: SMBD: Add SMBDirect transport to SMB connection and Makefile
>   CIFS: SMBD: Connect to SMBDirect session
>   CIFS: SMBD: Reconnect to SMBDirect session
>   CIFS: SMBD: Destroy SMBDirect session on shutdown or umount
>   CIFS: SMBD: Set SMBDirect maximum read or write size for I/O
>   CIFS: SMBD: Receive data from SMBDirect
>   CIFS: SMBD: Send data through SMBDirect
>   CIFS: SMBD: Define memory registration for I/O data
>   CIFS: SMBD: Fix the definition for SMB2_CHANNEL_RDMA_V1_INVALIDATE
>   CIFS: SMBD: Implement SMB write via RDMA read through memory
>     registration
>   CIFS: SMBD: Deregister memory on finishing SMB write
>   CIFS: SMBD: Add parameter rdata to smb2_new_read_req
>   CIFS: SMBD: Read correct returned data length for RDMA write (SMB
>     read) I/O
>   CIFS: SMBD: Implement SMB read via RDMA write through memory
>     registration
>   CIFS: SMBD: Deregister memory when finishing SMB read
>   CIFS: SMBD: Add SMBDirect debug counters
> 
>  fs/cifs/Makefile     |    2 +-
>  fs/cifs/cifs_debug.c |   84 ++
>  fs/cifs/cifsfs.c     |    2 +
>  fs/cifs/cifsglob.h   |   17 +-
>  fs/cifs/cifssmb.c    |   10 +-
>  fs/cifs/connect.c    |   46 +-
>  fs/cifs/file.c       |   10 +
>  fs/cifs/smb1ops.c    |    2 +-
>  fs/cifs/smb2ops.c    |   21 +-
>  fs/cifs/smb2pdu.c    |  114 ++-
>  fs/cifs/smb2pdu.h    |    2 +-
>  fs/cifs/smbdirect.c  | 2639
> ++++++++++++++++++++++++++++++++++++++++++++++++++
>  fs/cifs/smbdirect.h  |  324 +++++++
>  fs/cifs/transport.c  |    7 +
>  14 files changed, 3260 insertions(+), 20 deletions(-)  create mode 100644
> fs/cifs/smbdirect.c  create mode 100644 fs/cifs/smbdirect.h
> 
> --
> 2.7.4

Powered by blists - more mailing lists