Received: by 2002:a25:1985:0:0:0:0:0 with SMTP id 127csp3955673ybz; Mon, 20 Apr 2020 12:36:45 -0700 (PDT) X-Google-Smtp-Source: APiQypLkYiutxPmB1dGYvbUsqW1vS3ks3060Q/jhTofJlSbmA+J3tOskR72ylzyb6+7IJyw4uGpT X-Received: by 2002:a50:85c4:: with SMTP id q4mr14852641edh.147.1587411404989; Mon, 20 Apr 2020 12:36:44 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1587411404; cv=none; d=google.com; s=arc-20160816; b=VYbSykFx+dPs/nY3pms9On3o7kW8x+DcpIRSnG74CQbm0jWEhBV6/cpuwWdIwOqN6G gpmtjSwSaUmFakFxQ74Ws5YbOT5KGi8qttSRT9SxkgtrihYTPqEt+T0NI3SveO79zITD CgAvMdQVrxbno9L+dEOvPrdSqB3AHCRWt57qyqp6Jm+I0apNidx1RRdN3sNf8wfgFNQl eHkWcZblnJ0fSA2ixdXSjAuswUmrBDSbcOUfucTzCgCKGtLW4HYz8h9x0Uxch9Fafpgy y/5Ug5HM18JXHqo96MmZ8hUI2rIIJoAmTy4mDMiYmsfEae6DQ0zwqHXpdtCHRKf1jCKe D5mA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:sender:cc:to:subject:message-id:date:from :in-reply-to:references:mime-version:dkim-signature; bh=xIXT/nen65mTLodO9B/B9/+qbC33sEhKE4+BiIiYU8Y=; b=DaJ0bl4uBS5xHolIhhCq4mDVE/ySwGBRvoqpiw4il2btDXeS27Ihq5UNCmFuNczXXB +Rn8yAvJIp7m3EMWP5k5EclGXuvTKB2p+NcR4ayop+gvBSMsb1GyLZP1S3ZDp6Ss9ZpK URnFXzzBBXieAOuSV3bi2wWJcS6TjyhKp7wBRig2mUwDOhPGyw020lCacvdYRYLnEzMG HcNPeLUIHT+wK4x4LVp1cES7H77mJRhGj+OHZ8JgrboJW8kPlf9P+m/rB/KkmlVYGE15 xnMer8Ob+NnCn+hYBOJ0barG1ZH2z1MnTNxwLjI6Ho14IAkiyC+Tx8KE4kkGSVao1Gf3 lF1g== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@gmail.com header.s=20161025 header.b=asPkGDAD; spf=pass (google.com: domain of linux-nfs-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) smtp.mailfrom=linux-nfs-owner@vger.kernel.org; dmarc=pass (p=NONE sp=QUARANTINE dis=NONE) header.from=gmail.com Return-Path: Received: from vger.kernel.org (vger.kernel.org. [23.128.96.18]) by mx.google.com with ESMTP id ce18si135273ejc.54.2020.04.20.12.36.05; Mon, 20 Apr 2020 12:36:44 -0700 (PDT) Received-SPF: pass (google.com: domain of linux-nfs-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) client-ip=23.128.96.18; Authentication-Results: mx.google.com; dkim=pass header.i=@gmail.com header.s=20161025 header.b=asPkGDAD; spf=pass (google.com: domain of linux-nfs-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) smtp.mailfrom=linux-nfs-owner@vger.kernel.org; dmarc=pass (p=NONE sp=QUARANTINE dis=NONE) header.from=gmail.com Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1725896AbgDTTf7 (ORCPT + 99 others); Mon, 20 Apr 2020 15:35:59 -0400 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:41878 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-FAIL-OK-FAIL) by vger.kernel.org with ESMTP id S1725550AbgDTTf7 (ORCPT ); Mon, 20 Apr 2020 15:35:59 -0400 Received: from mail-ej1-x644.google.com (mail-ej1-x644.google.com [IPv6:2a00:1450:4864:20::644]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id DC9D8C061A0C for ; Mon, 20 Apr 2020 12:35:58 -0700 (PDT) Received: by mail-ej1-x644.google.com with SMTP id n4so8920737ejs.11 for ; Mon, 20 Apr 2020 12:35:58 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=mime-version:references:in-reply-to:from:date:message-id:subject:to :cc; bh=xIXT/nen65mTLodO9B/B9/+qbC33sEhKE4+BiIiYU8Y=; b=asPkGDADSFCfHK2y8qlrjFLRSroUX4k5qpEkFFHn0D3ihnAkJNXlGB2ajSS3AWjoV5 srSM1BCx+wDW6bdeJ5mpiSXsDwm7GcZ+Lg79Igr50P9UuCNkwGyTh5NYsR0jj1M0Fs2P P5ka3uDC0ZeWpRzXqyXm7cYo/0CX86yggdAEbHz+jYIcwk6iZeyxtrxx+tnqH/cp8oAf Nujp+5j42SqWf/DP+IQe/tfCzcg2Ti3XCchdmg15PZZ8aOaRejWzu2/uMjrKY3BbfYvZ zMOzCxjzUNvGSNP3nGe3Q1XRxDrkT5/lI6RX2bivsaa/i67/j9VURQBE8MSv6tkw6pyY HbQQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:mime-version:references:in-reply-to:from:date :message-id:subject:to:cc; bh=xIXT/nen65mTLodO9B/B9/+qbC33sEhKE4+BiIiYU8Y=; b=hmALSaubDnxqoDi6Nt/0igwA8IOVmw/oRnIkHJlLnyU+/Ar0tEJN8d9SyTa6nRRD4B 6GDV+VyePQb99h0p0bMy3Qh1hFU+J0Q/VcrE0BspQXibMRwUBsBeAu8kokLEsh9DA9k3 mnEoE/NFkm+j8emOoklmWPFReWEeL/Hja91ptnDYWZnmISSHHgtn8HXJJK77FqXOTl7u XcuGzqDiNLuUT3a+ivUSDVo2dA7YBKd5RE/QkIHZaupKZ9czGTmAY5VZiEOHKePERa9C h0UPpkm7pJkv+9jYgx5pq+Tm2oef7h4Ga+J5xsi9dAWBMvdE8hApk4qMrlnMA0jUngTi kcYA== X-Gm-Message-State: AGi0PuYr46hsT9hX39K/vRLz+0T3VuExTHTcxHDjkhpapEWA8G0qAJtT a67xHn8+8fS3xXhETy33GzGo9aUinHqi5rDZBE7hIQ== X-Received: by 2002:a17:906:7b53:: with SMTP id n19mr18170655ejo.244.1587411357533; Mon, 20 Apr 2020 12:35:57 -0700 (PDT) MIME-Version: 1.0 References: <20200417151540.22111-1-olga.kornievskaia@gmail.com> <9c6c72708f360f543e2b8caaf56cc074aa825c96.camel@hammerspace.com> <7dd1b9300d2a0ec1a31fb3879c62a94f535ccad5.camel@hammerspace.com> <52b65780986192bb635638d4615176bbc1ad579c.camel@hammerspace.com> <402396992273d33f880af913134b063819ab1d22.camel@hammerspace.com> <2e691fb93a4b6d362cdfd85feaaa9cfbfc68709c.camel@hammerspace.com> In-Reply-To: <2e691fb93a4b6d362cdfd85feaaa9cfbfc68709c.camel@hammerspace.com> From: Olga Kornievskaia Date: Mon, 20 Apr 2020 15:35:46 -0400 Message-ID: Subject: Re: [PATCH 1/1] NFSv4.1: fix lone sequence transport assignment To: Trond Myklebust Cc: "linux-nfs@vger.kernel.org" , "anna.schumaker@netapp.com" Content-Type: text/plain; charset="UTF-8" Sender: linux-nfs-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-nfs@vger.kernel.org On Mon, Apr 20, 2020 at 3:02 PM Trond Myklebust wrote: > > On Mon, 2020-04-20 at 10:59 -0400, Olga Kornievskaia wrote: > > > > > > On Mon, Apr 20, 2020 at 10:53 AM Olga Kornievskaia < > > olga.kornievskaia@gmail.com> wrote: > > > > > > Yes we are consistent in requesting to same connection to with the > > > same channel binding, but we don't send BIND_CONN_TO_SESSION as the > > > first thing on the "main" connection (ie connection that cared the > > > CREATE_SESSION and was bound to fore and back channel by default). > > > When that connection is reset, the first thing that happens is the > > > client re-sends the operation that was not replied to. That has a > > > SEQUENCE and by the rule the server binds that connection to the > > > fore channel only (and sets the callback being down). We then send > > > BIND_CONN_TO_SESSION and request FORE_OR_BOTH where this has > > > already been bound to FORE only. > > > > > > > > > How about this: before we send BIND_CONN_TO_SESSION with > > fore_or_both, we somehow always reset the connection (maybe you were > > suggestion that already and i wasn't following). > > No. I didn't realise that we were being automatically set to just the > fore channel. However as I said earlier, the spec says that the server > MUST reply with NFS4ERR_INVAL in this case. It is not allowed to just > return NFS4_OK and silently set the wrong channel binding. How's this: client sends BIND_CONN_TO_SESSION with FORE_OR_BOTH, server select FORE channel. connection breaks before the reply gets to the client. Client resends. Is the server suppose to now fail with ERR_INVAL? There actually is such a thing between demand and request. FORE and BACK are demands and FORE_OR_BOTH and BACK_OR_BOTH are requests. The spec writes only about demands and not the requests. I believe that's intentional because BIND_CONN_TO_SESSIOn doesn't have a sequence and not protected by reply session semantics. > On the client we should probably do something to track whether or not > the backchannel has been lost due to connection breakage. We probably > need to allow the client to check the xprt->connect_cookie to find out > if the connection broke. > > > i don't think this is going to the list as i'm getting auto > > rejections emails but i don't know how to fix it. > > You need to turn off HTML mail. hm.. google tells me it's plain text mode for the message... so i'm not sure. > > -- > Trond Myklebust > Linux NFS client maintainer, Hammerspace > trond.myklebust@hammerspace.com > >