From patchwork Sun Aug 20 19:04:28 2017 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Long Li X-Patchwork-Id: 9911405 Return-Path: Received: from mail.wl.linuxfoundation.org (pdx-wl-mail.web.codeaurora.org [172.30.200.125]) by pdx-korg-patchwork.web.codeaurora.org (Postfix) with ESMTP id EE0F6603FF for ; Sun, 20 Aug 2017 19:10:41 +0000 (UTC) Received: from mail.wl.linuxfoundation.org (localhost [127.0.0.1]) by mail.wl.linuxfoundation.org (Postfix) with ESMTP id DE0BC28710 for ; Sun, 20 Aug 2017 19:10:41 +0000 (UTC) Received: by mail.wl.linuxfoundation.org (Postfix, from userid 486) id D2D532875A; Sun, 20 Aug 2017 19:10:41 +0000 (UTC) X-Spam-Checker-Version: SpamAssassin 3.3.1 (2010-03-16) on pdx-wl-mail.web.codeaurora.org X-Spam-Level: X-Spam-Status: No, score=-6.9 required=2.0 tests=BAYES_00,RCVD_IN_DNSWL_HI autolearn=ham version=3.3.1 Received: from vger.kernel.org (vger.kernel.org [209.132.180.67]) by mail.wl.linuxfoundation.org (Postfix) with ESMTP id 8951028710 for ; Sun, 20 Aug 2017 19:10:41 +0000 (UTC) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1753610AbdHTTKX (ORCPT ); Sun, 20 Aug 2017 15:10:23 -0400 Received: from a2nlsmtp01-04.prod.iad2.secureserver.net ([198.71.225.38]:41826 "EHLO a2nlsmtp01-04.prod.iad2.secureserver.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1753368AbdHTTGX (ORCPT ); Sun, 20 Aug 2017 15:06:23 -0400 Received: from linuxonhyperv.com ([107.180.71.197]) by : HOSTING RELAY : with SMTP id jVXGd9x4RggvVjVXGdRQbq; Sun, 20 Aug 2017 12:05:22 -0700 x-originating-ip: 107.180.71.197 Received: from longli by linuxonhyperv.com with local (Exim 4.89) (envelope-from ) id 1djVXG-0000o6-7f; Sun, 20 Aug 2017 12:05:22 -0700 From: Long Li To: Steve French , linux-cifs@vger.kernel.org, samba-technical@lists.samba.org, linux-kernel@vger.kernel.org, linux-rdma@vger.kernel.org, Christoph Hellwig , Tom Talpey , Matthew Wilcox Cc: Long Li Subject: [Patch v2 04/19] CIFS: SMBD: Add SMBDirect transport to SMB connection and Makefile Date: Sun, 20 Aug 2017 12:04:28 -0700 Message-Id: <1503255883-3041-5-git-send-email-longli@exchange.microsoft.com> X-Mailer: git-send-email 1.7.1 In-Reply-To: <1503255883-3041-1-git-send-email-longli@exchange.microsoft.com> References: <1503255883-3041-1-git-send-email-longli@exchange.microsoft.com> X-CMAE-Envelope: MS4wfIVmhSX6mpXO3+EghlZGv+0U4z3ynjgjGdfUB85if4cdt8L9FslUzi8n+3TEk85pj1qZSCSXYb/QJ614haqOzjTVIhpnNEu/dmcwMLecp/ff+t3mkCGg pEcxnLf6lfvqz/VTDBxWXiGSswpzETlYBBFHlNoAih1YVQps1ZCVxsLWlz+DbsErICRv3GqdT6xwdW30HT3lqYVOkDO8tIXPIqEvLVwV5TozQ9t/0YU4fqIL 25r2fOJYRfEIth69kBastMsqRjp1lgzqsKiQ+TkQB+baVw613Bu/aDn2iaYiWqSx0vSVTdYY3j64jWL4UKkVJrYP1o0q43zwTAMVUQQ2tK8DVwKt0cTgja+C ilh3bKGUPTyOIbUIIdc5QmzplCN9Q8fLjklS1ip5pRwcvlqSCWTjQvN6gdvjBe0PjGbN1xQky4IAgtPJWS/5bX8IfBwNxjbWsrERj255vztn/V0wAxRM6/3i QOnSuDbtz0CkqZhQ Sender: linux-cifs-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-cifs@vger.kernel.org X-Virus-Scanned: ClamAV using ClamSMTP From: Long Li Add SMBDirect as an optional connection to SMB session defined in CIFS. When connection is on SMBDirect, upper layer uses this connection to carry payloads. With the transport hooked up, add SMBDirect code to Makefile. Signed-off-by: Long Li --- fs/cifs/Makefile | 2 +- fs/cifs/cifsglob.h | 2 ++ 2 files changed, 3 insertions(+), 1 deletion(-) diff --git a/fs/cifs/Makefile b/fs/cifs/Makefile index eed7eb0..6bb9863 100644 --- a/fs/cifs/Makefile +++ b/fs/cifs/Makefile @@ -18,4 +18,4 @@ cifs-$(CONFIG_CIFS_DFS_UPCALL) += dns_resolve.o cifs_dfs_ref.o cifs-$(CONFIG_CIFS_FSCACHE) += fscache.o cache.o cifs-$(CONFIG_CIFS_SMB2) += smb2ops.o smb2maperror.o smb2transport.o \ - smb2misc.o smb2pdu.o smb2inode.o smb2file.o + smb2misc.o smb2pdu.o smb2inode.o smb2file.o smbdirect.o diff --git a/fs/cifs/cifsglob.h b/fs/cifs/cifsglob.h index 703c2fb..dc5404d 100644 --- a/fs/cifs/cifsglob.h +++ b/fs/cifs/cifsglob.h @@ -652,6 +652,8 @@ struct TCP_Server_Info { bool large_buf; /* is current buffer large? */ /* use SMBD connection instead of socket */ bool rdma; + /* point to the SMBD connection if RDMA is used instead of socket */ + struct smbd_connection *smbd_conn; struct delayed_work echo; /* echo ping workqueue job */ char *smallbuf; /* pointer to current "small" buffer */ char *bigbuf; /* pointer to current "big" buffer */