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=-0.6 required=3.0 tests=DKIM_SIGNED,DKIM_VALID, DKIM_VALID_AU,FREEMAIL_FORGED_FROMDOMAIN,FREEMAIL_FROM, HEADER_FROM_DIFFERENT_DOMAINS,MAILING_LIST_MULTI,SPF_HELO_NONE,SPF_PASS 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 2B49CC433DF for ; Mon, 18 May 2020 20:36:04 +0000 (UTC) Received: from kanga.kvack.org (kanga.kvack.org [205.233.56.17]) by mail.kernel.org (Postfix) with ESMTP id B5C0220643 for ; Mon, 18 May 2020 20:36:03 +0000 (UTC) Authentication-Results: mail.kernel.org; dkim=pass (2048-bit key) header.d=gmail.com header.i=@gmail.com header.b="SmZaZsDy" DMARC-Filter: OpenDMARC Filter v1.3.2 mail.kernel.org B5C0220643 Authentication-Results: mail.kernel.org; dmarc=fail (p=none dis=none) header.from=gmail.com Authentication-Results: mail.kernel.org; spf=pass smtp.mailfrom=owner-linux-mm@kvack.org Received: by kanga.kvack.org (Postfix) id 0B2CD900003; Mon, 18 May 2020 16:36:03 -0400 (EDT) Received: by kanga.kvack.org (Postfix, from userid 40) id 06329900002; Mon, 18 May 2020 16:36:03 -0400 (EDT) X-Delivered-To: int-list-linux-mm@kvack.org Received: by kanga.kvack.org (Postfix, from userid 63042) id EB9F5900003; Mon, 18 May 2020 16:36:02 -0400 (EDT) X-Delivered-To: linux-mm@kvack.org Received: from forelay.hostedemail.com (smtprelay0192.hostedemail.com [216.40.44.192]) by kanga.kvack.org (Postfix) with ESMTP id D1907900002 for ; Mon, 18 May 2020 16:36:02 -0400 (EDT) Received: from smtpin29.hostedemail.com (10.5.19.251.rfc1918.com [10.5.19.251]) by forelay03.hostedemail.com (Postfix) with ESMTP id 8BBF8824556B for ; Mon, 18 May 2020 20:36:02 +0000 (UTC) X-FDA: 76830996564.29.cloud06_179c0461d6b05 X-HE-Tag: cloud06_179c0461d6b05 X-Filterd-Recvd-Size: 4070 Received: from mail-lj1-f196.google.com (mail-lj1-f196.google.com [209.85.208.196]) by imf40.hostedemail.com (Postfix) with ESMTP for ; Mon, 18 May 2020 20:36:02 +0000 (UTC) Received: by mail-lj1-f196.google.com with SMTP id z6so337505ljm.13 for ; Mon, 18 May 2020 13:36:01 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=mime-version:references:in-reply-to:from:date:message-id:subject:to :cc; bh=3L59nRthiFfkytay0hS/vHEY6X7pgsTeIQ+1Fo4gUXg=; b=SmZaZsDyw7GcMLk81eBDm80EPCTMBbXKR9C3yTzJwxSO01tUBrvmpyoFK1EIYATfw7 vlcIOZgFCAqWgZFgvkxhXt4QYMKxCUTF1cv+i3B7/VToVBSDKPvauPxraf1h3Q0U6LwI wgk0/VVMKdLDTxOuI8VsdAYYkYI7r8kikf+YcONg9Gb0XW9lWTFUnIXjBFPt03J9tIEk X3OFi4LVEPVgtCuzZGTRvzu7JGInPPNZjkXFSPaQ/K70GBaom5acNi3+/EHqjbhOHIgg ft0/dZxDJyZyrmn76Ai2Fard59qXKbiWriyRtYhh+0WIGvqz+QmM/Roq97E7dAWcG3S4 JDvA== 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=3L59nRthiFfkytay0hS/vHEY6X7pgsTeIQ+1Fo4gUXg=; b=kSdugfTiVIXfMj0z3LQ2heT8AKrn2f7LLd4TSZvKUfAZ/NS9HAPn3/7SOfpYTVUFVg /PIQxHyOQ6JtEhmC+NvciFrSNTsnTDVJnb6+cb95H8A0X3RAACS0hqm1Wag89N+ebYz1 r49u6yA+xgKpHsQJMWoDBpSEBJ1G/SHWtCw8ieF9L+v3bZMxIXVzAWO7ewBETv4T8NbB /yZE/O4EzxoGPT2tMAlK4F8PpJWbHCRW2FiERRXe0WTYtWgSQAf+wilHRXriV9vFL/nM Do4zRg/vqNIOSjI0N/9Tl7b0v01bIAtr17FUlGfiXSaW1gT6Aw+SCN5cG7dF+yMxMat5 LODg== X-Gm-Message-State: AOAM531K0M3grfQl99WcSMGnK4e4pC2pNXbMEH71xOZBQx3NHDCJnS+d Im4h2ometItE/UMkCm1hFao0B7zho0pjHhCnxPw= X-Google-Smtp-Source: ABdhPJwphy4mnxySWsCfrCGpUDbuyK5wlVe+z53mZjWJjOpJ2rJ0VcCksH6Fuhxx0vqcUdLwwOACQcy6cEKrSvg24CU= X-Received: by 2002:a05:651c:50e:: with SMTP id o14mr11720435ljp.52.1589834160491; Mon, 18 May 2020 13:36:00 -0700 (PDT) MIME-Version: 1.0 References: <1589831903-27800-1-git-send-email-jrdr.linux@gmail.com> <20200518201737.GV16070@bombadil.infradead.org> In-Reply-To: <20200518201737.GV16070@bombadil.infradead.org> From: Souptick Joarder Date: Tue, 19 May 2020 02:14:01 +0530 Message-ID: Subject: Re: [RFC] mm/gup.c: Use gup_flags as parameter instead of passing write flag To: Matthew Wilcox Cc: Andrew Morton , Linux-MM , linux-kernel@vger.kernel.org Content-Type: text/plain; charset="UTF-8" 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 Tue 19 May, 2020, 1:47 AM Matthew Wilcox, wrote: > > On Tue, May 19, 2020 at 01:28:23AM +0530, Souptick Joarder wrote: > > The idea is to get rid of write parameter. Instead caller will pass > > FOLL_WRITE to __get_user_pages_fast(). This will not change any > > functionality of the API. Once it is upstream all the callers will > > be changed to pass FOLL_WRITE. > > Uhh ... until you change all the callers, haven't you just broken all > the callers? All the callers have called the API with either 1 or 0. I think, it's not going to break any of the callers. > > > -int __get_user_pages_fast(unsigned long start, int nr_pages, int write, > > - struct page **pages) > > +int __get_user_pages_fast(unsigned long start, int nr_pages, > > + unsigned int gup_flags, struct page **pages) > > { > > unsigned long len, end; > > unsigned long flags; > > @@ -2685,10 +2692,7 @@ int __get_user_pages_fast(unsigned long start, int nr_pages, int write, > > * Internally (within mm/gup.c), gup fast variants must set FOLL_GET, > > * because gup fast is always a "pin with a +1 page refcount" request. > > */ > > - unsigned int gup_flags = FOLL_GET; > > - > > - if (write) > > - gup_flags |= FOLL_WRITE; > > + gup_flags |= FOLL_GET;