Received: by 2002:ac0:8c9a:0:0:0:0:0 with SMTP id r26csp5333841ima; Tue, 5 Feb 2019 10:00:38 -0800 (PST) X-Google-Smtp-Source: AHgI3IYMaM7PKEU2s5fjuAR2VoQBsjMMSSCuP9LgoT+oSFnrvMdidhjwUK8bv32+g8oUzGOrcKV+ X-Received: by 2002:a63:cf4b:: with SMTP id b11mr5676841pgj.405.1549389638082; Tue, 05 Feb 2019 10:00:38 -0800 (PST) ARC-Seal: i=1; a=rsa-sha256; t=1549389638; cv=none; d=google.com; s=arc-20160816; b=uyEZ9rU84Uw1k1DsQirb6RiHv9AfOfF4fQVgJZ41cbm0ivKEzftiJp9ouxRwjV9ix0 4HxVDYVcFdN26lz+v2GKWYi6SAYtlxVgOuF9+UHH5Zx+NaSLxq8XP5vlmr05ttHtmpUw FZHX5ujkjsmP5YK/ImTkYZEIdZ0B39QCvuqhDJtyb6usDUEcpGqiIN8MRrs0KIu+LcCm H9FBCH9iNxaOUwH6QkNd11mKxWoWyXmfqdih5bP75UMnuz/QxIVBbFQYbISuqxosHtLp CwKXL/2J5RHVLpmEWVzws/e87eUZ4hiXXsEIgL/EkmDXMibuP2LEPt+GZs/APp5ifhUK uS4Q== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:sender:user-agent:content-disposition :mime-version:message-id:subject:cc:to:from:date; bh=w3tTpfbi8q1KiXBOzdn4gaqFUFlG6GIpYI17AwclZqE=; b=0WHP+uzmg1KcL16rDuKOwPo95B+IawVqE2gFnkcAMAxfmAbc1JhehVB5r97+0fqKrG 6ApXgddw4NYwiG7UJ3c7ravG4T61XpT+riyb057ytJDyWpKZ9NLBpijg/S+aG13CvOsS 8NXKhlGTfNG5SSqBzDoPiEst68GFpCPugiX3/1A6NGgsiBlnmIx67CmoLBP6OFlzmxcg nYi2NQ8gw8Wgkbt9IdfWcIVuso4NbGC5wwYIE9TNYVRuFhBSDzdeD/R1B159zg++8jYz 8LqSdd4/xs3Y1VAVCXRBjzSECl1vVwYFN9b+/YtgI9c3V6imIDg5jpjGCih0xKUe4lq/ J9Ug== 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=intel.com Return-Path: Received: from vger.kernel.org (vger.kernel.org. [209.132.180.67]) by mx.google.com with ESMTP id x24si3533736plr.379.2019.02.05.10.00.21; Tue, 05 Feb 2019 10:00:38 -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=intel.com Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1727973AbfBERvU (ORCPT + 99 others); Tue, 5 Feb 2019 12:51:20 -0500 Received: from mga14.intel.com ([192.55.52.115]:40719 "EHLO mga14.intel.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1726288AbfBERvU (ORCPT ); Tue, 5 Feb 2019 12:51:20 -0500 X-Amp-Result: UNKNOWN X-Amp-Original-Verdict: FILE UNKNOWN X-Amp-File-Uploaded: False Received: from orsmga005.jf.intel.com ([10.7.209.41]) by fmsmga103.fm.intel.com with ESMTP/TLS/DHE-RSA-AES256-GCM-SHA384; 05 Feb 2019 09:51:19 -0800 X-ExtLoop1: 1 X-IronPort-AV: E=Sophos;i="5.58,336,1544515200"; d="scan'208";a="297461517" Received: from iweiny-desk2.sc.intel.com ([10.3.52.157]) by orsmga005.jf.intel.com with ESMTP; 05 Feb 2019 09:51:18 -0800 Date: Tue, 5 Feb 2019 09:50:59 -0800 From: Ira Weiny To: lsf-pc@lists.linux-foundation.org, linux-rdma@vger.kernel.org, linux-mm@kvack.org, linux-kernel@vger.kernel.org Cc: John Hubbard , Jan Kara , Jerome Glisse , Dan Williams , Matthew Wilcox , Jason Gunthorpe , Dave Chinner , Doug Ledford , Michal Hocko Subject: [LSF/MM TOPIC] Discuss least bad options for resolving longterm-GUP usage by RDMA Message-ID: <20190205175059.GB21617@iweiny-DESK2.sc.intel.com> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline User-Agent: Mutt/1.11.1 (2018-12-01) Sender: linux-kernel-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org The problem: Once we have pages marked as GUP-pinned how should various subsystems work with those markings. The current work for John Hubbards proposed solutions (part 1 and 2) is progressing.[1] But the final part (3) of his solution is also going to take some work. In Johns presentation he lists 3 alternatives for gup-pinned pages: 1) Hold off try_to_unmap 2) Allow writeback while pinned (via bounce buffers) [Note this will not work for DAX] 3) Use a "revocable reservation" (or lease) on those pages 4) Pin the blocks as busy in the FS allocator The problem with lease's on pages used by RDMA is that the references to these pages is not local to the machine. Once the user has been given access to the page they, through the use of a remote tokens, give a reference to that page to remote nodes. This is the core essence of RDMA, and like it or not, something which is increasingly used by major Linux users. Therefore we need to discuss the extent by which leases are appropriate and what happens should a lease be revoked which a user does not respond to. As John Hubbard put it: "Other filesystem features that need to replace the page with a new one can be inhibited for pages that are GUP-pinned. This will, however, alter and limit some of those filesystem features. The only fix for that would be to require GUP users monitor and respond to CPU page table updates. Subsystems such as ODP and HMM do this, for example. This aspect of the problem is still under discussion." -- John Hubbard[2] The following people have been involved in previous conversations and would be key to the face to face discussion. John Hubbard Jan Kara Dave Chinner Michal Hocko Dan Williams Matthew Wilcox Jason Gunthorpe Thank you, Ira Weiny [1] https://linuxplumbersconf.org/event/2/contributions/126/attachments/136/168/LPC_2018_gup_dma.pdf [2] https://lkml.org/lkml/2019/2/4/7