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 Received: from kanga.kvack.org (kanga.kvack.org [205.233.56.17]) by smtp.lore.kernel.org (Postfix) with ESMTP id 97644E748E9 for ; Sun, 1 Oct 2023 17:42:33 +0000 (UTC) Received: by kanga.kvack.org (Postfix) id 05E366B01A3; Sun, 1 Oct 2023 13:42:33 -0400 (EDT) Received: by kanga.kvack.org (Postfix, from userid 40) id 00E7B6B01A4; Sun, 1 Oct 2023 13:42:32 -0400 (EDT) X-Delivered-To: int-list-linux-mm@kvack.org Received: by kanga.kvack.org (Postfix, from userid 63042) id DF0E06B01A5; Sun, 1 Oct 2023 13:42:32 -0400 (EDT) X-Delivered-To: linux-mm@kvack.org Received: from relay.hostedemail.com (smtprelay0014.hostedemail.com [216.40.44.14]) by kanga.kvack.org (Postfix) with ESMTP id CD3F26B01A3 for ; Sun, 1 Oct 2023 13:42:32 -0400 (EDT) Received: from smtpin03.hostedemail.com (a10.router.float.18 [10.200.18.1]) by unirelay04.hostedemail.com (Postfix) with ESMTP id A05A51A0196 for ; Sun, 1 Oct 2023 17:42:32 +0000 (UTC) X-FDA: 81297612144.03.52DEB03 Received: from out2-smtp.messagingengine.com (out2-smtp.messagingengine.com [66.111.4.26]) by imf02.hostedemail.com (Postfix) with ESMTP id 93BEF8000A for ; Sun, 1 Oct 2023 17:42:30 +0000 (UTC) Authentication-Results: imf02.hostedemail.com; dkim=pass header.d=arndb.de header.s=fm1 header.b=QDs6lArr; dkim=pass header.d=messagingengine.com header.s=fm2 header.b=Mlk+mgvQ; dmarc=none; spf=pass (imf02.hostedemail.com: domain of arnd@arndb.de designates 66.111.4.26 as permitted sender) smtp.mailfrom=arnd@arndb.de ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=hostedemail.com; s=arc-20220608; t=1696182150; h=from:from:sender:reply-to:subject:subject:date:date: message-id:message-id:to:to:cc:cc:mime-version:mime-version: content-type:content-type:content-transfer-encoding: in-reply-to:in-reply-to:references:references:dkim-signature; bh=69v6fzzEznhsP+iYQxrU1Qq2W/AMcZ2L6Dp2+ptqLDY=; b=qpQn+GrChMTSkOkfLUp7tu3tEeObVq9ye+0c9rM4mG9o0sU55bARTbucxc4Ai8d9k8TukQ 1xJwfP8k5HJi/agfaq/5g/Bl845dQCd1Vfb2eQZqaNvwNeHk48KuUScys9+xKuQa63Uoni VdBZrYDHhXx35Zf0ul6vnAlS/oAYFlo= ARC-Authentication-Results: i=1; imf02.hostedemail.com; dkim=pass header.d=arndb.de header.s=fm1 header.b=QDs6lArr; dkim=pass header.d=messagingengine.com header.s=fm2 header.b=Mlk+mgvQ; dmarc=none; spf=pass (imf02.hostedemail.com: domain of arnd@arndb.de designates 66.111.4.26 as permitted sender) smtp.mailfrom=arnd@arndb.de ARC-Seal: i=1; s=arc-20220608; d=hostedemail.com; t=1696182150; a=rsa-sha256; cv=none; b=HOXLUjBoJ4pGz8vmCT0uHy8DhJfp7iy5Mpdv4B0ImhmRFw5C/6jHjmurLyfVXHmTHTfFfX sfO/+kk9Q7pFBO5gi7sqoMP7XgSbRbjlxjE5J8J2FAyBka/EBP0VmAQvSJPrK2G6h68iCX vGs2xbhl4M9Rmx9WT28jPLxZJBmVkeo= Received: from compute6.internal (compute6.nyi.internal [10.202.2.47]) by mailout.nyi.internal (Postfix) with ESMTP id C17435C2ACD; Sun, 1 Oct 2023 13:42:29 -0400 (EDT) Received: from imap51 ([10.202.2.101]) by compute6.internal (MEProxy); Sun, 01 Oct 2023 13:42:29 -0400 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=arndb.de; h=cc :cc:content-type:content-type:date:date:from:from:in-reply-to :in-reply-to:message-id:mime-version:references:reply-to:sender :subject:subject:to:to; s=fm1; t=1696182149; x=1696268549; bh=69 v6fzzEznhsP+iYQxrU1Qq2W/AMcZ2L6Dp2+ptqLDY=; b=QDs6lArr2g+oCTGhI4 FdS3EHjTfKDRZa/1CPclSEzeK029nE16Xxh2uGtS0QwwJEpz/j0rui8KdK2mqFHi cx8wdu0PF7ZBglgtvDU0Ur6x52aIobahN28iwIm93MCreXzYLG1ACS52gvWg5SdZ Mt0R51mSkQcdtGkByDL+BqXZrN6H4uOBRCBcW+dFirgWvdmtf+GJKIBBdKnWs9AU +CoOfVa5OmKbpLnxeWeHRxjUzUN88bVq7PNQFdIahGz8IinZxtVm1DzV3hsjNeH6 pKa8fTiHG65092UOk440d8UI+moWyGUqZPbTZzzKAwfb30wuz/qA0ZVyjGPONoOW RUEA== DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d= messagingengine.com; h=cc:cc:content-type:content-type:date:date :feedback-id:feedback-id:from:from:in-reply-to:in-reply-to :message-id:mime-version:references:reply-to:sender:subject :subject:to:to:x-me-proxy:x-me-proxy:x-me-sender:x-me-sender :x-sasl-enc; s=fm2; t=1696182149; x=1696268549; bh=69v6fzzEznhsP +iYQxrU1Qq2W/AMcZ2L6Dp2+ptqLDY=; b=Mlk+mgvQQ5xKnM8ipa+N1OsHr584x DM0JT67JB/JJaW/xeEZODjBlnwnfXU1BAzwfsihy3jVjvsm3NrRNzPUyWTjPu6yV BmdBYwHe0dEh9KgFvrbWITxivNpgWJ3FHFYJnjllswi+RAo1ohIEBwA/0tCdRp4u rUfJ0iPzBFv/Yo2wFhf/FhMJZKStdm3Ara5ddobIcUZ5SLzXPSIKCqcegSLa6bHF n/U/X2VCc5viot16M4xsAxsscw0YWfvEHu70ZslCsza0z9zlLEPhTRB1jzZUwkxv FZK9m/gGqpckjcM8cGJ2lDo2fSOgj5dzyGhsUdX4QTcjCyywdyCj4oBpg== X-ME-Sender: X-ME-Proxy-Cause: gggruggvucftvghtrhhoucdtuddrgedvkedrvddvgddvhecutefuodetggdotefrodftvf curfhrohhfihhlvgemucfhrghsthforghilhdpqfgfvfdpuffrtefokffrpgfnqfghnecu uegrihhlohhuthemuceftddtnecusecvtfgvtghiphhivghnthhsucdlqddutddtmdenuc fjughrpefofgggkfgjfhffhffvvefutgesthdtredtreertdenucfhrhhomhepfdetrhhn ugcuuegvrhhgmhgrnhhnfdcuoegrrhhnugesrghrnhgusgdruggvqeenucggtffrrghtth gvrhhnpeffheeugeetiefhgeethfejgfdtuefggeejleehjeeutefhfeeggefhkedtkeet ffenucevlhhushhtvghrufhiiigvpedtnecurfgrrhgrmhepmhgrihhlfhhrohhmpegrrh hnugesrghrnhgusgdruggv X-ME-Proxy: Feedback-ID: i56a14606:Fastmail Received: by mailuser.nyi.internal (Postfix, from userid 501) id B273EB60089; Sun, 1 Oct 2023 13:42:28 -0400 (EDT) X-Mailer: MessagingEngine.com Webmail Interface User-Agent: Cyrus-JMAP/3.9.0-alpha0-958-g1b1b911df8-fm-20230927.002-g1b1b911d MIME-Version: 1.0 Message-Id: In-Reply-To: References: Date: Sun, 01 Oct 2023 13:39:33 -0400 From: "Arnd Bergmann" To: "Lorenzo Stoakes" , linux-mm@kvack.org, linux-kernel@vger.kernel.org, "Andrew Morton" , "Catalin Marinas" , "Will Deacon" , "Peter Zijlstra" , "Ingo Molnar" , "Arnaldo Carvalho de Melo" , "Mark Rutland" Cc: "Alexander Shishkin" , "Jiri Olsa" , "Namhyung Kim" , "Ian Rogers" , "Adrian Hunter" , "Oleg Nesterov" , "Richard Cochran" , "Jason Gunthorpe" , "John Hubbard" Subject: Re: [PATCH 0/4] various improvements to the GUP interface Content-Type: text/plain X-Rspam-User: X-Rspamd-Server: rspam12 X-Rspamd-Queue-Id: 93BEF8000A X-Stat-Signature: xm3ooeezgr6g7y73i4dfgfo9xssnsqjp X-HE-Tag: 1696182150-962883 X-HE-Meta: U2FsdGVkX1+eerF1W9DHm1pFapzKmFWIckrY2PRL3Si+mhwpblUlCibBOdHkFL03PoaryWYx+rH7HE28RZO84fjHQ9/Ct7HvVXjzTH+iEY+IBOUV6Cu8ywSq0YXIJp+7A5BLFALX9vVfuSFw0G/W34ZQH4Q8hZ8D6hHhcjqShRSbznEbUrcZQX/lvGnvx6rzkwgJUnuDuAteVvTQOPncSb+Vh3tj9b0hlARfis2V60vswIrI/JuETJSK/bMGoT9Ffb+S+4XJnUcnAA++Lo8JyApX0+46SPC40/YjG+K1wkokUPJlvDScDY0j/C7Azif1C2oDYeHXcPs6AG+yy36sTRPug6o0WX+O9iiJzvqCSOfFqVt73o93eldW7wTeiDY/GLd7NEgpWw3THspg1Srx04x1VjSWRy+NcfnXyW9VlrufxZhv3TMU1uFgFsU0IjNLqofPmkut2YE5x9hQhiYrP8d68HlNrRKPNySkQ+FRh+p7NPTyEAfvVAb/v2AfO1cQwSp+Jkg/s//gV9a8xKBiT231RUmR9+2n201QT+SPhrXkqqqdhffX97g2UAh9feZICvkEVnutvoy46ou8arbu7D18skczFUZN7m2QI1F94na5RiGPc6v5KVry1xjO8arc0FThwNtCxxGhrTNOREE4AWmqiM8KyZMA2KPJQ3CgDqiVVYTrnk1z3w/ngHwqxNiNrIvu0gFo97VxGDahUlFrGyGvdQVDCKD0SR/u9uU43UiQUYY0oZa2gMpPpolDUBXJQcj4biGaBIagargc8XgPDGrxw5NrhMIgGReUZK2zZn52lU7Sog9QWOtGMoNuYm1MisrwBblDAGVDn3X0g36vE7yO0mNYSVoeWJ6uHzd1+63VVZlakzjpVQ90nXuskd+r9B/qNmVclM8e4SB/+2Q2VBhGzSrjJDEuiVJz5auk1r0j+7uHXNb4a4G6es4MHJO39Lf1h0jA/jDJDPaTnJC 4KY2kRDi Yk9VQb7hpC1m/mFSCPNpuYqyoPSPiubP0FqxFHOFqHUb0yCzBM1jUDNHP0oC2UfSYLmr+NLVDNWwP/4vMVcArmInKI4r16B5AxeCjzP8cSP6C5AbQd3YgX9XDhlTxICZzv4Np/OkOHe8lRvE= 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 Sun, Oct 1, 2023, at 12:00, Lorenzo Stoakes wrote: > A series of fixes to simplify and improve the GUP interface with an eye to > providing groundwork to future improvements:- > > * __access_remote_vm() and access_remote_vm() are functionally identical, > so make the former static such that in future we can potentially change > the external-facing implementation details of this function. > > * Extend is_valid_gup_args() to cover the missing FOLL_TOUCH case, and > simplify things by defining INTERNAL_GUP_FLAGS to check against. > > * Adjust __get_user_pages_locked() to explicitly treat a failure to pin any > pages as an error in all circumstances other than FOLL_NOWAIT being > specified, bringing it in line with the nommu implementation of this > function. > > * (With many thanks to Arnd who suggested this in the first instance) > Update get_user_page_vma_remote() to explicitly only return a page or an > error, simplifying the interface and avoiding the questionable > IS_ERR_OR_NULL() pattern. > > Lorenzo Stoakes (4): > mm: make __access_remote_vm() static > mm/gup: explicitly define and check internal GUP flags, disallow > FOLL_TOUCH > mm/gup: make failure to pin an error if FOLL_NOWAIT not specified > mm/gup: adapt get_user_page_vma_remote() to never return NULL I don't normally review mm patches, but I had a look since it was started by my earlier feedback. It all looks good to me, very nice cleanup! Reviewed-by: Arnd Bergmann