Received: by 2002:ac0:946b:0:0:0:0:0 with SMTP id j40csp534915imj; Thu, 7 Feb 2019 08:03:56 -0800 (PST) X-Google-Smtp-Source: AHgI3IaQLO49AMMQRYjV9i401GdJk7ZB9GPH0cyQn5aj8Fc27pW+l/DIXdMGiePZY8FzH8Y10a8p X-Received: by 2002:a65:4842:: with SMTP id i2mr15507415pgs.176.1549555436605; Thu, 07 Feb 2019 08:03:56 -0800 (PST) ARC-Seal: i=1; a=rsa-sha256; t=1549555436; cv=none; d=google.com; s=arc-20160816; b=RoozHvPsR83tw66Z1LMuEmQvuQEXiotcJniaRGRjQf6N3bNC6ADKhJzwpCrU1BZAbg HJnWkZRFTE+6T5riBrdE1YgFTEbQRnc3/Aw2FSTruicSoA+lneWI3htAb3rYEfWkJusN PUcTrpJ3p1MznL/dP7fFg0NdK1rC5IEu+sUMK1B9SIdZC6X054QZ/PzqywRTyZLJs28X P7fPMKmWaZmvSrzZK3KePVui7A4wZVV/fU4xQmRLjto9NodgF7xoZDow7vStUVyUmfpB Nc9twUoy0I4B8t87PhVQcuujlsfW38P7DxC8nj8XRcfGirXkjAmtGlzCEhCOKfAvLmax PusQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:sender:mime-version:user-agent:organization :references:in-reply-to:date:cc:to:from:subject:message-id; bh=y+n8kFPfWw/N8uRt1dDpNNMomMdTM5ckddxJelyyTNo=; b=TxftNlfchufPzPhJ6aqp5boVvZm35flNx0WB8NB/Yc2K5mJUVMO41lkkKZ8l4jVNQO B+2OUVrYGEWHEL34pN16gZpCiRfPJBPoSQETeiOqBLOPlZy6mfu5i4fU3Br88M+zsFB+ Ye0c7IohLMmaAEBSZFVDwFc9Y6/9cLJ+NpfHTJwv5N6c1DiQaLRDRzqw5XVRNpFtMMvJ q705vhSoW1gY4rdPGddkOJ6cdoL4oWPES16DrwPJgfNBse7rFmDLaM7P68ATRAYjxaNi 21HEihLsfm/S1x/We66/vrZPtDxeUuV0POnqNTTTcI5a6yeeu/qQaxwVuKFGj72OWvyc 6wvA== 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 w6si944062pfb.191.2019.02.07.08.03.30; Thu, 07 Feb 2019 08:03:56 -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 S1726894AbfBGQCr (ORCPT + 99 others); Thu, 7 Feb 2019 11:02:47 -0500 Received: from mx1.redhat.com ([209.132.183.28]:59460 "EHLO mx1.redhat.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1726037AbfBGQCq (ORCPT ); Thu, 7 Feb 2019 11:02:46 -0500 Received: from smtp.corp.redhat.com (int-mx03.intmail.prod.int.phx2.redhat.com [10.5.11.13]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by mx1.redhat.com (Postfix) with ESMTPS id B85CC89AD0; Thu, 7 Feb 2019 16:02:45 +0000 (UTC) Received: from haswell-e.nc.xsintricity.com (ovpn-112-17.rdu2.redhat.com [10.10.112.17]) by smtp.corp.redhat.com (Postfix) with ESMTPS id 3266C972EF; Thu, 7 Feb 2019 15:56:38 +0000 (UTC) Message-ID: <68c1e70d768922f6b1b4b833c433aff12a87336a.camel@redhat.com> Subject: Re: [LSF/MM TOPIC] Discuss least bad options for resolving longterm-GUP usage by RDMA From: Doug Ledford To: Tom Talpey , Chuck Lever , Jason Gunthorpe Cc: Dave Chinner , Christopher Lameter , Matthew Wilcox , Jan Kara , Ira Weiny , lsf-pc@lists.linux-foundation.org, linux-rdma , linux-mm@kvack.org, Linux Kernel Mailing List , John Hubbard , Jerome Glisse , Dan Williams , Michal Hocko Date: Thu, 07 Feb 2019 10:56:35 -0500 In-Reply-To: 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> <01000168c43d594c-7979fcf8-b9c1-4bda-b29a-500efe001d66-000000@email.amazonses.com> <20190206210356.GZ6173@dastard> <20190206220828.GJ12227@ziepe.ca> <0c868bc615a60c44d618fb0183fcbe0c418c7c83.camel@redhat.com> <20190207035258.GD6173@dastard> <20190207052310.GA22726@ziepe.ca> <6b260348-966a-bc95-162b-44ae8265cf03@talpey.com> Organization: Red Hat, Inc. Content-Type: multipart/signed; micalg="pgp-sha256"; protocol="application/pgp-signature"; boundary="=-G+f9gGSQ2dAX1z2qQpRX" User-Agent: Evolution 3.30.4 (3.30.4-1.fc29) Mime-Version: 1.0 X-Scanned-By: MIMEDefang 2.79 on 10.5.11.13 X-Greylist: Sender IP whitelisted, not delayed by milter-greylist-4.5.16 (mx1.redhat.com [10.5.110.26]); Thu, 07 Feb 2019 16:02:46 +0000 (UTC) Sender: linux-kernel-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org --=-G+f9gGSQ2dAX1z2qQpRX Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: quoted-printable On Thu, 2019-02-07 at 10:41 -0500, Tom Talpey wrote: > On 2/7/2019 10:37 AM, Doug Ledford wrote: > > On Thu, 2019-02-07 at 10:28 -0500, Tom Talpey wrote: > > > On 2/7/2019 10:04 AM, Chuck Lever wrote: > > > > > On Feb 7, 2019, at 12:23 AM, Jason Gunthorpe wrote= : > > > > >=20 > > > > > On Thu, Feb 07, 2019 at 02:52:58PM +1100, Dave Chinner wrote: > > > > >=20 > > > > > > Requiring ODP capable hardware and applications that control RD= MA > > > > > > access to use file leases and be able to cancel/recall client s= ide > > > > > > delegations (like NFS is already able to do!) seems like a pret= ty > > > > >=20 > > > > > So, what happens on NFS if the revoke takes too long? > > > >=20 > > > > NFS distinguishes between "recall" and "revoke". Dave used "recall" > > > > here, it means that the server recalls the client's delegation. If > > > > the client doesn't respond, the server revokes the delegation > > > > unilaterally and other users are allowed to proceed. > > >=20 > > > The SMB3 protocol has a similar "lease break" mechanism, btw. > > >=20 > > > SMB3 "push mode" has long-expected to allow DAX mapping of files > > > only when an exclusive lease is held by the requesting client. > > > The server may recall the lease if the DAX mapping needs to change. > > >=20 > > > Once local (MMU) and remote (RDMA) mappings are dropped, the > > > client may re-request that the server reestablish them. No > > > connection or process is terminated, and no data is silently lost. > >=20 > > Yeah, but you're referring to a situation where the communication agent > > and the filesystem agent are one and the same and they work > > cooperatively to resolve the issue. With DAX under Linux, the > > filesystem agent and the communication agent are separate, and right > > now, to my knowledge, the filesystem agent doesn't tell the > > communication agent about a broken lease, it want's to be able to do > > things 100% transparently without any work on the communication agent's > > part. That works for ODP, but not for anything else. If the filesyste= m > > notified the communication agent of the need to drop the MMU region and > > rebuild it, the communication agent could communicate that to the remot= e > > host, and things would work. But there's no POSIX message for "your > > file is moving on media, redo your mmap". >=20 > Indeed, the MMU notifier and the filesystem need to be integrated. And right now, the method of sharing this across the network is: persistent memory in machine local filesystem supporting a DAX mount custom application that knows how to mmap then rdma map files, and can manage the connection long term The point being that every single method of sharing this stuff is a one off custom application (Oracle just being one). I'm not really all that thrilled about the idea of writing the same mmap/rdma map/oob-management= =20 code in every single app out there. To me, this problem is screaming for a more general purpose kernel solution, just like NVMe over Fabrics. I'm thinking a clustered filesystem on top of a shared memory segment between hosts is a much more natural fit. Then applications just mmap the files locally, and the kernel does the rest. > I'm unmoved by the POSIX argument. This stuff didn't happen in 1990. >=20 > Tom. --=20 Doug Ledford GPG KeyID: B826A3330E572FDD Key fingerprint =3D AE6B 1BDA 122B 23B4 265B 1274 B826 A333 0E57 2FDD --=-G+f9gGSQ2dAX1z2qQpRX Content-Type: application/pgp-signature; name="signature.asc" Content-Description: This is a digitally signed message part Content-Transfer-Encoding: 7bit -----BEGIN PGP SIGNATURE----- iQIzBAABCAAdFiEErmsb2hIrI7QmWxJ0uCajMw5XL90FAlxcVTMACgkQuCajMw5X L90Z/w//W7vouBfKgeHWd7q/6pHaRFPVjV7bGkmFwaHGvrbnQU3Fnfcj8Ts8ShZW T4p4pJKmARkSPJqqR/hvH+Ln3SJCVf49tdhCbu7VaYkYk3iZJmWfdvF/oItdH7// g2iIbUEYujIF5ZsAEss93Ma3SXP8Bvre0Vq15GX8Zu7oogXtj6zypek+3t9kfbt9 pQl63VTylLbxu4jAJz0VoLz5VpSe2uzR/piuQZpMp/of9t62a8OIQVRU1rC8O/rm 20A9RkrHRNRbUNjC4EqMfv+4t6zVL4sC/QUCUx07rOYwWVLXgqYUv9GqzCkdl/fA 3wJFMohDOW8V9dDg9LroWki2xdCCm22JVtDoQK/pMNhIONDxu5JqHbuSNKs/BcXc 3MgPFSJueLey5j9u4VTGlLwhLSPPBdeUyPTx1MRuqaZInXDRJxDupajQ96MY7vfb Ckw6SXV1U51eXohXgGnXQRgt7K4JRS8SA6Iky7UyukxCevIIfvF8zD3HPv6wfho+ IPwaUsbfH88HJzjwpnN4KV9RDB6irg4GfNsS1IGbuXOw+0lNGeG5zlfKlfY1y/Yr YARFzuESMq1ky2CRDntL7fbso2AWEhrrsvic1SycYvNTElztvwbXRQs1rDyvdaKZ DsU00Sq9PuwzmEosfsm18bYkKHD2SMPEtPR+7k2obc3RRPTjWxc= =LiqC -----END PGP SIGNATURE----- --=-G+f9gGSQ2dAX1z2qQpRX--