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=-2.4 required=3.0 tests=DKIMWL_WL_HIGH,DKIM_SIGNED, DKIM_VALID,DKIM_VALID_AU,HEADER_FROM_DIFFERENT_DOMAINS,MAILING_LIST_MULTI, SPF_HELO_NONE,SPF_PASS,USER_AGENT_SANE_1 autolearn=no 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 6F967C433E0 for ; Sat, 23 May 2020 22:18:49 +0000 (UTC) Received: from kanga.kvack.org (kanga.kvack.org [205.233.56.17]) by mail.kernel.org (Postfix) with ESMTP id 0717A207FB for ; Sat, 23 May 2020 22:18:48 +0000 (UTC) Authentication-Results: mail.kernel.org; dkim=pass (2048-bit key) header.d=nvidia.com header.i=@nvidia.com header.b="Cwt4TkD+" DMARC-Filter: OpenDMARC Filter v1.3.2 mail.kernel.org 0717A207FB Authentication-Results: mail.kernel.org; dmarc=fail (p=none dis=none) header.from=nvidia.com Authentication-Results: mail.kernel.org; spf=pass smtp.mailfrom=owner-linux-mm@kvack.org Received: by kanga.kvack.org (Postfix) id 6C7F980008; Sat, 23 May 2020 18:18:48 -0400 (EDT) Received: by kanga.kvack.org (Postfix, from userid 40) id 6512080007; Sat, 23 May 2020 18:18:48 -0400 (EDT) X-Delivered-To: int-list-linux-mm@kvack.org Received: by kanga.kvack.org (Postfix, from userid 63042) id 518E080008; Sat, 23 May 2020 18:18:48 -0400 (EDT) X-Delivered-To: linux-mm@kvack.org Received: from forelay.hostedemail.com (smtprelay0204.hostedemail.com [216.40.44.204]) by kanga.kvack.org (Postfix) with ESMTP id 3738C80007 for ; Sat, 23 May 2020 18:18:48 -0400 (EDT) Received: from smtpin03.hostedemail.com (10.5.19.251.rfc1918.com [10.5.19.251]) by forelay01.hostedemail.com (Postfix) with ESMTP id DD254180AD806 for ; Sat, 23 May 2020 22:18:47 +0000 (UTC) X-FDA: 76849399494.03.hate36_2fa4118ba9357 X-HE-Tag: hate36_2fa4118ba9357 X-Filterd-Recvd-Size: 4341 Received: from hqnvemgate26.nvidia.com (hqnvemgate26.nvidia.com [216.228.121.65]) by imf16.hostedemail.com (Postfix) with ESMTP for ; Sat, 23 May 2020 22:18:47 +0000 (UTC) Received: from hqpgpgate101.nvidia.com (Not Verified[216.228.121.13]) by hqnvemgate26.nvidia.com (using TLS: TLSv1.2, DES-CBC3-SHA) id ; Sat, 23 May 2020 15:18:31 -0700 Received: from hqmail.nvidia.com ([172.20.161.6]) by hqpgpgate101.nvidia.com (PGP Universal service); Sat, 23 May 2020 15:18:43 -0700 X-PGP-Universal: processed; by hqpgpgate101.nvidia.com on Sat, 23 May 2020 15:18:43 -0700 Received: from [10.2.58.199] (10.124.1.5) by HQMAIL107.nvidia.com (172.20.187.13) with Microsoft SMTP Server (TLS) id 15.0.1473.3; Sat, 23 May 2020 22:18:42 +0000 Subject: Re: [linux-next RFC] mm/gup.c: Convert to use get_user_pages_fast_only() To: Souptick Joarder , Matthew Wilcox CC: Paul Mackerras , Michael Ellerman , Benjamin Herrenschmidt , Andrew Morton , Peter Zijlstra , Ingo Molnar , , Mark Rutland , Alexander Shishkin , , , Stephen Rothwell , Mike Rapoport , , Aneesh Kumar K.V , , , , Linux-MM , References: <1590252072-2793-1-git-send-email-jrdr.linux@gmail.com> <20200523172519.GA17206@bombadil.infradead.org> From: John Hubbard X-Nvconfidentiality: public Message-ID: Date: Sat, 23 May 2020 15:18:41 -0700 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:68.0) Gecko/20100101 Thunderbird/68.8.0 MIME-Version: 1.0 In-Reply-To: X-Originating-IP: [10.124.1.5] X-ClientProxiedBy: HQMAIL101.nvidia.com (172.20.187.10) To HQMAIL107.nvidia.com (172.20.187.13) Content-Type: text/plain; charset="utf-8"; format=flowed Content-Language: en-US Content-Transfer-Encoding: 7bit DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=nvidia.com; s=n1; t=1590272311; bh=KNeUET6ZqCIyI9UZKaBTYlfqbZe/t6UNks+R9XJfCno=; h=X-PGP-Universal:Subject:To:CC:References:From:X-Nvconfidentiality: Message-ID:Date:User-Agent:MIME-Version:In-Reply-To: X-Originating-IP:X-ClientProxiedBy:Content-Type:Content-Language: Content-Transfer-Encoding; b=Cwt4TkD+SRsndYeDIexNBQBRvg71Jf3carwopFfOFRQZU/XX3jc1s4L8CK6LSvNu9 igcBSKLXoY11kK9llmBoxO0eek+dIVv3AnrfVg7u9UIsrs2+4xhzDbhIKYaJMjeKoB t0zSCJ/ptoyGAvq/C16Ci6KFqzOAvjDaFURLjGXOpuT0cdm+gt/io2ndzf19ZOh61/ lRurd0PF5Yu8vOHYit0KwqIpsCf/RAs3DUsjL8mVarDbe0vKugfltvegoWKrRkQ4sc 8zktnTWWYhN1RvLHLyInM5jcF4L9prlh3S+P8THBuRVyHlobOxYUn+Se5uEwZTR0ic WowIo+tzSmS2w== X-Bogosity: Ham, tests=bogofilter, spamicity=0.000000, version=1.2.4 Sender: owner-linux-mm@kvack.org Precedence: bulk X-Loop: owner-majordomo@kvack.org List-ID: On 2020-05-23 12:35, Souptick Joarder wrote: ... >> Everything you have done here is an improvement, and I'd be happy to >> see it go in (after fixing the bug I note below). >> >> But in reading through it, I noticed almost every user ... >> >>> - if (__get_user_pages_fast(hva, 1, 1, &page) == 1) { >>> + if (get_user_pages_fast_only(hva, 1, FOLL_WRITE, &page) == 1) { >> >> passes '1' as the second parameter. So do we want to add: >> >> static inline bool get_user_page_fast_only(unsigned long addr, >> unsigned int gup_flags, struct page **pagep) >> { >> return get_user_pages_fast_only(addr, 1, gup_flags, pagep) == 1; >> } >> > Yes, this can be added. Does get_user_page_fast_only() naming is fine ? It seems like a good name to me. And I think that the new wrapper call is a good move, too. I did pause and reflect for a moment about the number gup/pup API calls we are building up, but that's merely an indication of the wide usage of this functionality. So it all feels about right. thanks, -- John Hubbard NVIDIA