Received: by 10.223.164.202 with SMTP id h10csp3403688wrb; Sun, 19 Nov 2017 21:33:32 -0800 (PST) X-Google-Smtp-Source: AGs4zMYomccBScjRkJSkEug9v84dtBonJAGAj4Qq3Y8ccnJ6oOwS6ctQ15lbM9B8WfEPDTo9hiPc X-Received: by 10.84.252.143 with SMTP id y15mr10249408pll.138.1511156012559; Sun, 19 Nov 2017 21:33:32 -0800 (PST) ARC-Seal: i=1; a=rsa-sha256; t=1511156012; cv=none; d=google.com; s=arc-20160816; b=F7gOwFOxGSJig4jZ/TriQ8voIuzq49b4DrMR7dkZ0vtBvD3DmK4YstA/SwK1Mcvrwk LXfjAnD09kPdMeAAO7z1vM96nfD1QZNJM+m0oiNUjKs/hrBe+n/Gp/d61fgBY8Gd9/R7 MZUsFh9qHpDCEnoke78k386Zlc2lwxa0CnIxO9YM5xoRaDi7wF1PxbTbOWrWvJV5AdV5 oOuDTSCX4W0uvtvwDAylCdGydMgXgITHZwSMiJWw2Fp+MPcDSaVoliLH3xzHusjAe2Bt ubs38Cs024FMzufp4h4fG90/6nI5tylD2ME+xZloYxUoPsmMGq2piNPNleFQGumqCmm1 KFxg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:sender:thread-index:thread-topic :content-transfer-encoding:mime-version:subject:references :in-reply-to:message-id:cc:to:from:date:arc-authentication-results; bh=JtIG2E1jdu+25/Tie0lEsa3F0XybsTfDmtkt8WgI3Ao=; b=xTQ9mZJUdtJRvzvZUWS85gaKSICa2R9agM/4MW059h3kNihjwv/2EMQOv3LH0Ts0lU oQLb2cSPYjvu/NaGyRGzH+RsWguf4Ts4g2SFlm4AVYQmkY/xU/SeYZZux6dqONN86JXQ Il7EwORgeR/xLkn7Zf4S1+e1TCioPgMWRQxSViAOn9rmRtITPUmyToLinjbtM+rOxbsj o4jaYJEOV3DBsYzW++Qv2I0b15FQ45sdAFxk8x5OCYOVculyN+r/6VxGn6wm6RrcJUNK yIXJqcT5RW6rsMil6PDPX1sPTpHVs35vBaro7AXL5n879bkJixvNDaUcGXVIdI6/vetl ERIw== ARC-Authentication-Results: i=1; mx.google.com; spf=pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=fail (p=NONE sp=NONE dis=NONE) header.from=redhat.com Return-Path: Received: from vger.kernel.org (vger.kernel.org. [209.132.180.67]) by mx.google.com with ESMTP id y7si7184629pgr.791.2017.11.19.21.33.22; Sun, 19 Nov 2017 21:33:32 -0800 (PST) Received-SPF: pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) client-ip=209.132.180.67; Authentication-Results: mx.google.com; spf=pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=fail (p=NONE sp=NONE dis=NONE) header.from=redhat.com Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1751204AbdKTFb2 (ORCPT + 68 others); Mon, 20 Nov 2017 00:31:28 -0500 Received: from mx1.redhat.com ([209.132.183.28]:53626 "EHLO mx1.redhat.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1750969AbdKTFb0 (ORCPT ); Mon, 20 Nov 2017 00:31:26 -0500 Received: from smtp.corp.redhat.com (int-mx04.intmail.prod.int.phx2.redhat.com [10.5.11.14]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by mx1.redhat.com (Postfix) with ESMTPS id 59412C049E39; Mon, 20 Nov 2017 05:31:26 +0000 (UTC) Received: from colo-mx.corp.redhat.com (colo-mx02.intmail.prod.int.phx2.redhat.com [10.5.11.21]) by smtp.corp.redhat.com (Postfix) with ESMTPS id 4BBAC5D9CD; Mon, 20 Nov 2017 05:31:26 +0000 (UTC) Received: from zmail25.collab.prod.int.phx2.redhat.com (zmail25.collab.prod.int.phx2.redhat.com [10.5.83.31]) by colo-mx.corp.redhat.com (Postfix) with ESMTP id 3866A4BB78; Mon, 20 Nov 2017 05:31:26 +0000 (UTC) Date: Mon, 20 Nov 2017 00:31:26 -0500 (EST) From: Leif Sahlberg To: Long Li Cc: 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 , Stephen Hemminger , Long Li Message-ID: <813959480.28436250.1511155886143.JavaMail.zimbra@redhat.com> In-Reply-To: <20171107085514.12693-5-longli@exchange.microsoft.com> References: <20171107085514.12693-1-longli@exchange.microsoft.com> <20171107085514.12693-5-longli@exchange.microsoft.com> Subject: Re: [Patch v7 04/22] CIFS: SMBD: Add SMB Direct protocol initial values and constants MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 7bit X-Originating-IP: [10.64.54.107, 10.4.195.24] Thread-Topic: CIFS: SMBD: Add SMB Direct protocol initial values and constants Thread-Index: Lkswz7fWVqbEfIrgycZD3fNyKFbcwg== X-Scanned-By: MIMEDefang 2.79 on 10.5.11.14 X-Greylist: Sender IP whitelisted, not delayed by milter-greylist-4.5.16 (mx1.redhat.com [10.5.110.31]); Mon, 20 Nov 2017 05:31:26 +0000 (UTC) Sender: linux-kernel-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Acked-by: Ronnie Sahlberg ----- Original Message ----- 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" , "Stephen Hemminger" Cc: "Long Li" Sent: Tuesday, 7 November, 2017 7:54:56 PM Subject: [Patch v7 04/22] CIFS: SMBD: Add SMB Direct protocol initial values and constants From: Long Li To prepare for protocol implementation, add constants and user-configurable values for the SMB Direct protocol. Signed-off-by: Long Li --- fs/cifs/smbdirect.c | 77 +++++++++++++++++++++++++++++++++++++++++++++++++++++ fs/cifs/smbdirect.h | 21 +++++++++++++++ 2 files changed, 98 insertions(+) create mode 100644 fs/cifs/smbdirect.c create mode 100644 fs/cifs/smbdirect.h diff --git a/fs/cifs/smbdirect.c b/fs/cifs/smbdirect.c new file mode 100644 index 0000000..d3c16f8 --- /dev/null +++ b/fs/cifs/smbdirect.c @@ -0,0 +1,77 @@ +/* + * Copyright (C) 2017, Microsoft Corporation. + * + * Author(s): Long Li + * + * This program is free software; you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation; either version 2 of the License, or + * (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See + * the GNU General Public License for more details. + */ +#include "smbdirect.h" + +/* SMBD version number */ +#define SMBD_V1 0x0100 + +/* Port numbers for SMBD transport */ +#define SMB_PORT 445 +#define SMBD_PORT 5445 + +/* Address lookup and resolve timeout in ms */ +#define RDMA_RESOLVE_TIMEOUT 5000 + +/* SMBD negotiation timeout in seconds */ +#define SMBD_NEGOTIATE_TIMEOUT 120 + +/* SMBD minimum receive size and fragmented sized defined in [MS-SMBD] */ +#define SMBD_MIN_RECEIVE_SIZE 128 +#define SMBD_MIN_FRAGMENTED_SIZE 131072 + +/* + * Default maximum number of RDMA read/write outstanding on this connection + * This value is possibly decreased during QP creation on hardware limit + */ +#define SMBD_CM_RESPONDER_RESOURCES 32 + +/* Maximum number of retries on data transfer operations */ +#define SMBD_CM_RETRY 6 +/* No need to retry on Receiver Not Ready since SMBD manages credits */ +#define SMBD_CM_RNR_RETRY 0 + +/* + * User configurable initial values per SMBD transport connection + * as defined in [MS-SMBD] 3.1.1.1 + * Those may change after a SMBD negotiation + */ +/* The local peer's maximum number of credits to grant to the peer */ +int smbd_receive_credit_max = 255; + +/* The remote peer's credit request of local peer */ +int smbd_send_credit_target = 255; + +/* The maximum single message size can be sent to remote peer */ +int smbd_max_send_size = 1364; + +/* The maximum fragmented upper-layer payload receive size supported */ +int smbd_max_fragmented_recv_size = 1024 * 1024; + +/* The maximum single-message size which can be received */ +int smbd_max_receive_size = 8192; + +/* The timeout to initiate send of a keepalive message on idle */ +int smbd_keep_alive_interval = 120; + +/* + * User configurable initial values for RDMA transport + * The actual values used may be lower and are limited to hardware capabilities + */ +/* Default maximum number of SGEs in a RDMA write/read */ +int smbd_max_frmr_depth = 2048; + +/* If payload is less than this byte, use RDMA send/recv not read/write */ +int rdma_readwrite_threshold = 4096; diff --git a/fs/cifs/smbdirect.h b/fs/cifs/smbdirect.h new file mode 100644 index 0000000..c55f28b --- /dev/null +++ b/fs/cifs/smbdirect.h @@ -0,0 +1,21 @@ +/* + * Copyright (C) 2017, Microsoft Corporation. + * + * Author(s): Long Li + * + * This program is free software; you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation; either version 2 of the License, or + * (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See + * the GNU General Public License for more details. + */ +#ifndef _SMBDIRECT_H +#define _SMBDIRECT_H + +/* Default maximum number of SGEs in a RDMA send/recv */ +#define SMBDIRECT_MAX_SGE 16 +#endif -- 2.7.4 -- To unsubscribe from this list: send the line "unsubscribe linux-cifs" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html From 1583432327879775370@xxx Tue Nov 07 18:19:02 +0000 2017 X-GM-THRID: 1583432327879775370 X-Gmail-Labels: Inbox,Category Forums,HistoricalUnread