From mboxrd@z Thu Jan 1 00:00:00 1970 From: Ira Weiny Subject: Re: [PATCH v2 07/18] infiniband: set FOLL_PIN, FOLL_LONGTERM via pin_longterm_pages*() Date: Wed, 6 Nov 2019 18:26:48 -0800 Message-ID: <20191107022647.GC32084@iweiny-DESK2.sc.intel.com> References: <20191103211813.213227-1-jhubbard@nvidia.com> <20191103211813.213227-8-jhubbard@nvidia.com> <20191104203346.GF30938@ziepe.ca> <578c1760-7221-4961-9f7d-c07c22e5c259@nvidia.com> <20191104205738.GH30938@ziepe.ca> Mime-Version: 1.0 Content-Type: text/plain; charset=us-ascii Return-path: Content-Disposition: inline In-Reply-To: <20191104205738.GH30938@ziepe.ca> Sender: linux-kernel-owner@vger.kernel.org To: Jason Gunthorpe Cc: John Hubbard , Andrew Morton , Al Viro , Alex Williamson , Benjamin Herrenschmidt , =?iso-8859-1?Q?Bj=F6rn_T=F6pel?= , Christoph Hellwig , Dan Williams , Daniel Vetter , Dave Chinner , David Airlie , "David S . Miller" , Jan Kara , Jens Axboe , Jonathan Corbet , =?iso-8859-1?B?Suly9G1l?= Glisse , Magnus Karlsson , Mauro Carvalho Chehab , Michael Ellerman List-Id: dri-devel@lists.freedesktop.org On Mon, Nov 04, 2019 at 04:57:38PM -0400, Jason Gunthorpe wrote: > On Mon, Nov 04, 2019 at 12:48:13PM -0800, John Hubbard wrote: > > On 11/4/19 12:33 PM, Jason Gunthorpe wrote: > > ... > > >> diff --git a/drivers/infiniband/core/umem.c b/drivers/infiniband/core/umem.c > > >> index 24244a2f68cc..c5a78d3e674b 100644 > > >> +++ b/drivers/infiniband/core/umem.c > > >> @@ -272,11 +272,10 @@ struct ib_umem *ib_umem_get(struct ib_udata *udata, unsigned long addr, > > >> > > >> while (npages) { > > >> down_read(&mm->mmap_sem); > > >> - ret = get_user_pages(cur_base, > > >> + ret = pin_longterm_pages(cur_base, > > >> min_t(unsigned long, npages, > > >> PAGE_SIZE / sizeof (struct page *)), > > >> - gup_flags | FOLL_LONGTERM, > > >> - page_list, NULL); > > >> + gup_flags, page_list, NULL); > > > > > > FWIW, this one should be converted to fast as well, I think we finally > > > got rid of all the blockers for that? > > > > > > > I'm not aware of any blockers on the gup.c end, anyway. The only broken thing we > > have there is "gup remote + FOLL_LONGTERM". But we can do "gup fast + LONGTERM". > > I mean the use of the mmap_sem here is finally in a way where we can > just delete the mmap_sem and use _fast Yay! I agree if we can do this we should. Thanks, Ira > > ie, AFAIK there is no need for the mmap_sem to be held during > ib_umem_add_sg_table() > > This should probably be a standalone patch however > > Jason From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org X-Spam-Level: X-Spam-Status: No, score=-5.2 required=3.0 tests=HEADER_FROM_DIFFERENT_DOMAINS, INCLUDES_PATCH,MAILING_LIST_MULTI,SPF_HELO_NONE,SPF_PASS,USER_AGENT_SANE_1 autolearn=ham autolearn_force=no version=3.4.0 Received: from mail.kernel.org (mail.kernel.org [198.145.29.99]) by smtp.lore.kernel.org (Postfix) with ESMTP id D19D5FA372C for ; Thu, 7 Nov 2019 02:26:50 +0000 (UTC) Received: from gabe.freedesktop.org (gabe.freedesktop.org [131.252.210.177]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by mail.kernel.org (Postfix) with ESMTPS id A79202067B for ; Thu, 7 Nov 2019 02:26:50 +0000 (UTC) DMARC-Filter: OpenDMARC Filter v1.3.2 mail.kernel.org A79202067B Authentication-Results: mail.kernel.org; dmarc=fail (p=none dis=none) header.from=intel.com Authentication-Results: mail.kernel.org; spf=none smtp.mailfrom=dri-devel-bounces@lists.freedesktop.org Received: from gabe.freedesktop.org (localhost [127.0.0.1]) by gabe.freedesktop.org (Postfix) with ESMTP id 0B9F96EE6E; Thu, 7 Nov 2019 02:26:50 +0000 (UTC) Received: from mga17.intel.com (mga17.intel.com [192.55.52.151]) by gabe.freedesktop.org (Postfix) with ESMTPS id 0AA866EE6E for ; Thu, 7 Nov 2019 02:26:49 +0000 (UTC) X-Amp-Result: UNKNOWN X-Amp-Original-Verdict: FILE UNKNOWN X-Amp-File-Uploaded: False Received: from fmsmga004.fm.intel.com ([10.253.24.48]) by fmsmga107.fm.intel.com with ESMTP/TLS/DHE-RSA-AES256-GCM-SHA384; 06 Nov 2019 18:26:48 -0800 X-ExtLoop1: 1 X-IronPort-AV: E=Sophos;i="5.68,276,1569308400"; d="scan'208";a="227685256" Received: from iweiny-desk2.sc.intel.com ([10.3.52.157]) by fmsmga004.fm.intel.com with ESMTP; 06 Nov 2019 18:26:48 -0800 Date: Wed, 6 Nov 2019 18:26:48 -0800 From: Ira Weiny To: Jason Gunthorpe Subject: Re: [PATCH v2 07/18] infiniband: set FOLL_PIN, FOLL_LONGTERM via pin_longterm_pages*() Message-ID: <20191107022647.GC32084@iweiny-DESK2.sc.intel.com> References: <20191103211813.213227-1-jhubbard@nvidia.com> <20191103211813.213227-8-jhubbard@nvidia.com> <20191104203346.GF30938@ziepe.ca> <578c1760-7221-4961-9f7d-c07c22e5c259@nvidia.com> <20191104205738.GH30938@ziepe.ca> MIME-Version: 1.0 Content-Disposition: inline In-Reply-To: <20191104205738.GH30938@ziepe.ca> User-Agent: Mutt/1.11.1 (2018-12-01) X-BeenThere: dri-devel@lists.freedesktop.org X-Mailman-Version: 2.1.23 Precedence: list List-Id: Direct Rendering Infrastructure - Development List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Cc: Michal Hocko , Jan Kara , kvm@vger.kernel.org, linux-doc@vger.kernel.org, David Airlie , Dave Chinner , dri-devel@lists.freedesktop.org, LKML , linux-mm@kvack.org, Paul Mackerras , linux-kselftest@vger.kernel.org, Shuah Khan , Jonathan Corbet , linux-rdma@vger.kernel.org, Michael Ellerman , Christoph Hellwig , Vlastimil Babka , =?iso-8859-1?Q?Bj=F6rn_T=F6pel?= , linux-media@vger.kernel.org, John Hubbard , linux-block@vger.kernel.org, =?iso-8859-1?B?Suly9G1l?= Glisse , Al Viro , Dan Williams , Mauro Carvalho Chehab , bpf@vger.kernel.org, Magnus Karlsson , Jens Axboe , netdev@vger.kernel.org, Alex Williamson , linux-fsdevel@vger.kernel.org, Andrew Morton , linuxppc-dev@lists.ozlabs.org, "David S . Miller" , Mike Kravetz Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Errors-To: dri-devel-bounces@lists.freedesktop.org Sender: "dri-devel" Message-ID: <20191107022648.hosLdVIckRg1d0ye0WsO1LbATJB23kStgRRgyzCG0_Y@z> T24gTW9uLCBOb3YgMDQsIDIwMTkgYXQgMDQ6NTc6MzhQTSAtMDQwMCwgSmFzb24gR3VudGhvcnBl IHdyb3RlOgo+IE9uIE1vbiwgTm92IDA0LCAyMDE5IGF0IDEyOjQ4OjEzUE0gLTA4MDAsIEpvaG4g SHViYmFyZCB3cm90ZToKPiA+IE9uIDExLzQvMTkgMTI6MzMgUE0sIEphc29uIEd1bnRob3JwZSB3 cm90ZToKPiA+IC4uLgo+ID4gPj4gZGlmZiAtLWdpdCBhL2RyaXZlcnMvaW5maW5pYmFuZC9jb3Jl L3VtZW0uYyBiL2RyaXZlcnMvaW5maW5pYmFuZC9jb3JlL3VtZW0uYwo+ID4gPj4gaW5kZXggMjQy NDRhMmY2OGNjLi5jNWE3OGQzZTY3NGIgMTAwNjQ0Cj4gPiA+PiArKysgYi9kcml2ZXJzL2luZmlu aWJhbmQvY29yZS91bWVtLmMKPiA+ID4+IEBAIC0yNzIsMTEgKzI3MiwxMCBAQCBzdHJ1Y3QgaWJf dW1lbSAqaWJfdW1lbV9nZXQoc3RydWN0IGliX3VkYXRhICp1ZGF0YSwgdW5zaWduZWQgbG9uZyBh ZGRyLAo+ID4gPj4gIAo+ID4gPj4gIAl3aGlsZSAobnBhZ2VzKSB7Cj4gPiA+PiAgCQlkb3duX3Jl YWQoJm1tLT5tbWFwX3NlbSk7Cj4gPiA+PiAtCQlyZXQgPSBnZXRfdXNlcl9wYWdlcyhjdXJfYmFz ZSwKPiA+ID4+ICsJCXJldCA9IHBpbl9sb25ndGVybV9wYWdlcyhjdXJfYmFzZSwKPiA+ID4+ICAJ CQkJICAgICBtaW5fdCh1bnNpZ25lZCBsb25nLCBucGFnZXMsCj4gPiA+PiAgCQkJCQkgICBQQUdF X1NJWkUgLyBzaXplb2YgKHN0cnVjdCBwYWdlICopKSwKPiA+ID4+IC0JCQkJICAgICBndXBfZmxh Z3MgfCBGT0xMX0xPTkdURVJNLAo+ID4gPj4gLQkJCQkgICAgIHBhZ2VfbGlzdCwgTlVMTCk7Cj4g PiA+PiArCQkJCSAgICAgZ3VwX2ZsYWdzLCBwYWdlX2xpc3QsIE5VTEwpOwo+ID4gPiAKPiA+ID4g RldJVywgdGhpcyBvbmUgc2hvdWxkIGJlIGNvbnZlcnRlZCB0byBmYXN0IGFzIHdlbGwsIEkgdGhp bmsgd2UgZmluYWxseQo+ID4gPiBnb3QgcmlkIG9mIGFsbCB0aGUgYmxvY2tlcnMgZm9yIHRoYXQ/ Cj4gPiA+IAo+ID4gCj4gPiBJJ20gbm90IGF3YXJlIG9mIGFueSBibG9ja2VycyBvbiB0aGUgZ3Vw LmMgZW5kLCBhbnl3YXkuIFRoZSBvbmx5IGJyb2tlbiB0aGluZyB3ZQo+ID4gaGF2ZSB0aGVyZSBp cyAiZ3VwIHJlbW90ZSArIEZPTExfTE9OR1RFUk0iLiBCdXQgd2UgY2FuIGRvICJndXAgZmFzdCAr IExPTkdURVJNIi4gCj4gCj4gSSBtZWFuIHRoZSB1c2Ugb2YgdGhlIG1tYXBfc2VtIGhlcmUgaXMg ZmluYWxseSBpbiBhIHdheSB3aGVyZSB3ZSBjYW4KPiBqdXN0IGRlbGV0ZSB0aGUgbW1hcF9zZW0g YW5kIHVzZSBfZmFzdAoKWWF5ISAgSSBhZ3JlZSBpZiB3ZSBjYW4gZG8gdGhpcyB3ZSBzaG91bGQu CgpUaGFua3MsCklyYQoKPiAgCj4gaWUsIEFGQUlLIHRoZXJlIGlzIG5vIG5lZWQgZm9yIHRoZSBt bWFwX3NlbSB0byBiZSBoZWxkIGR1cmluZwo+IGliX3VtZW1fYWRkX3NnX3RhYmxlKCkKPiAKPiBU aGlzIHNob3VsZCBwcm9iYWJseSBiZSBhIHN0YW5kYWxvbmUgcGF0Y2ggaG93ZXZlcgo+IAo+IEph c29uCl9fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fCmRyaS1k ZXZlbCBtYWlsaW5nIGxpc3QKZHJpLWRldmVsQGxpc3RzLmZyZWVkZXNrdG9wLm9yZwpodHRwczov L2xpc3RzLmZyZWVkZXNrdG9wLm9yZy9tYWlsbWFuL2xpc3RpbmZvL2RyaS1kZXZlbA==