Received: by 2002:ac0:8c8e:0:0:0:0:0 with SMTP id r14csp992680ima; Wed, 6 Feb 2019 11:48:03 -0800 (PST) X-Google-Smtp-Source: AHgI3IYlb+9hi5rblb+y4cwpcKZNcyozuwyj2vLAs1WNc+tFBDOsTvgV9hRLyCiLbCq5797BzoXv X-Received: by 2002:a62:9fcf:: with SMTP id v76mr12054185pfk.144.1549482483265; Wed, 06 Feb 2019 11:48:03 -0800 (PST) ARC-Seal: i=1; a=rsa-sha256; t=1549482483; cv=none; d=google.com; s=arc-20160816; b=YQP11SZSq272Fp4CMP2NBtkV2bSMvQT1KBuqBnFahD22hU1nplCjcwtjfx92eB9gYb 163l/zeEW4V/6z5YCPtCuNiK/Fy8LUDkdPA7WbJQMOY6nn4WUD3XOGI8XaLGmO6ZUDfJ suGeD6/NUgbjTgnhzvs88MUdracvyPyGDAKLaIoP01woqLaqVwZ/3tmBW86SFFVOuBeQ OFr3zhx9jDx0wOpw398m/UAwpKF9oZDbrRWi8wOqds6qlzQ5Z3WEWVEzhxOlIwMZn3w0 rfMr+sIkNYKnqQO+fzkGhZPa4N3aiNEPILdSI4rRYqzjT9W5tWpIU41lXeUSUWntgsZf J3Pg== 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=DPRk2YeA0ENLaCELegsjd2/mMdISAWmeKeSJ7XCFV30=; b=LH3+rxDhFy2ZOdWLpVoM1XoGuVT4E5dVPesd/D41Jc72PcUlutG2fUm5DWbVCZGOsZ HAj2tsVQoVdRlAuk/8Fq6WWECYGHWu8nGZOpn7HRh+wjsHh8rtSoUrNgnTWIParI/4Lq 1yMcwxPiqjtJxz5tICQV720o3mLLaFZtJB1yfi5AfxQotkzwN6uLUy1OT+vgDcCddFwJ tAhL9yvRf2fSLdft38gLLFplth/bBP6K89laGh2HS8i3+Dg+9rISL0LVW8561MNsukdM QPQ5D/YKTFMqPZyF7OX40fvHF9dyqfWuAUo8jeFx6bahv2x0AZeiDFq54m/yh68wYhHv gb2g== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@intel-com.20150623.gappssmtp.com header.s=20150623 header.b=D+opncBv; 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=intel.com Return-Path: Received: from vger.kernel.org (vger.kernel.org. [209.132.180.67]) by mx.google.com with ESMTP id 36si7734972plc.250.2019.02.06.11.47.46; Wed, 06 Feb 2019 11:48:03 -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; dkim=pass header.i=@intel-com.20150623.gappssmtp.com header.s=20150623 header.b=D+opncBv; 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=intel.com Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1726750AbfBFTqJ (ORCPT + 99 others); Wed, 6 Feb 2019 14:46:09 -0500 Received: from mail-ot1-f68.google.com ([209.85.210.68]:44673 "EHLO mail-ot1-f68.google.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1726162AbfBFTqI (ORCPT ); Wed, 6 Feb 2019 14:46:08 -0500 Received: by mail-ot1-f68.google.com with SMTP id e24so4769735otp.11 for ; Wed, 06 Feb 2019 11:46:08 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=intel-com.20150623.gappssmtp.com; s=20150623; h=mime-version:references:in-reply-to:from:date:message-id:subject:to :cc; bh=DPRk2YeA0ENLaCELegsjd2/mMdISAWmeKeSJ7XCFV30=; b=D+opncBvF6bDRVFj2WCKwHoO6oV/Y3U6I7oyuFwqVTqLo57o4BCg4re51jm57NgtA6 ZVbb1nNsmHaoiADxy9d0RYV5RCd0kophHtPirdWFjW3lcbih/CSNYHfEwIMp5gASIcop JyRI4Q/7bnNjz3EJSq87ynSThUyRwZVxhJ5g6GugqC+WYedS12P9ULseURTpQ1pvMw3P 7IHFTZ4kMiDI5wCJ2cFDbDjY7nKGNrNrfXeNSPcCt6gVVwx9safARDLh6EYsN2yatBil 943mbvlBkI8D7mzjvKttwI/evQmMOzaYVvLF/HwkxQ4kmHgO9cPYa+yUbb9eqOKF93b0 Vd3Q== 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=DPRk2YeA0ENLaCELegsjd2/mMdISAWmeKeSJ7XCFV30=; b=Vsc1SoQvEF/QdoFRH2TJErOzw+moksqfQF26eIjfN+W9WSmkpN/k2WHBXZfEe1t4pc zM0mwh8yXB1B3ZCysNZsIeINi00ePDq8jEa+xToGEeY8HUtvr8DTz2W/ydCMJmBULU/B KOaW7TKlDI7JptKskEEcY9Yir8j3trjsdR15evBnisMSLN67awvCtpNp9dZuihutTHH1 788Ey4LHnSxyuWBH/jREEIuquhrAXa30ZagUAdL0nzkKdeeDuRIdoLRsIYM56DlDk01H rdmIIwEqSR4UUjCZ5KevYrFp2MNdf3k/EMuLCIYwckjhqrcMs+2AmLcQjmq8bTQ+PCm4 glgw== X-Gm-Message-State: AHQUAuaDbV/EdvdviIU5qKzVTBlM7+wHCFuhGQXlPjNnzsH7TDNPzg8m DPyMLBeFJsA3SGvEF3u8jd16GxsE5MhkpopJ1WWJgQ== X-Received: by 2002:a9d:3a0a:: with SMTP id j10mr6481150otc.229.1549482367913; Wed, 06 Feb 2019 11:46:07 -0800 (PST) MIME-Version: 1.0 References: <20190205175059.GB21617@iweiny-DESK2.sc.intel.com> <20190206095000.GA12006@quack2.suse.cz> <20190206173114.GB12227@ziepe.ca> <20190206175233.GN21860@bombadil.infradead.org> <47820c4d696aee41225854071ec73373a273fd4a.camel@redhat.com> <20190206183503.GO21860@bombadil.infradead.org> <20190206185233.GE12227@ziepe.ca> In-Reply-To: <20190206185233.GE12227@ziepe.ca> From: Dan Williams Date: Wed, 6 Feb 2019 11:45:56 -0800 Message-ID: Subject: Re: [LSF/MM TOPIC] Discuss least bad options for resolving longterm-GUP usage by RDMA To: Jason Gunthorpe Cc: Matthew Wilcox , Doug Ledford , Jan Kara , Ira Weiny , lsf-pc@lists.linux-foundation.org, linux-rdma , Linux MM , Linux Kernel Mailing List , John Hubbard , Jerome Glisse , Dave Chinner , Michal Hocko Content-Type: text/plain; charset="UTF-8" Sender: linux-kernel-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org On Wed, Feb 6, 2019 at 10:52 AM Jason Gunthorpe wrote: > > On Wed, Feb 06, 2019 at 10:35:04AM -0800, Matthew Wilcox wrote: > > > > Admittedly, I'm coming in late to this conversation, but did I miss the > > > portion where that alternative was ruled out? > > > > That's my preferred option too, but the preponderance of opinion leans > > towards "We can't give people a way to make files un-truncatable". > > I haven't heard an explanation why blocking ftruncate is worse than > giving people a way to break RDMA using process by calling ftruncate?? > > Isn't it exactly the same argument the other way? No, I don't think it is. The lease is there to set the expectation of getting out of the way, it's not a silent un-coordinated failure. The user asked for it, the kernel is just honoring a valid request. If the RDMA application doesn't want it to happen, arrange for it by permissions or other coordination to prevent truncation, but once the two conflicting / valid requests have arrived at the filesystem try to move the result forward to the user requested state not block and fail indefinitely.