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 41A71C7618E for ; Mon, 24 Apr 2023 22:53:35 +0000 (UTC) Received: by kanga.kvack.org (Postfix) id B07C36B0075; Mon, 24 Apr 2023 18:53:34 -0400 (EDT) Received: by kanga.kvack.org (Postfix, from userid 40) id A8FD46B0078; Mon, 24 Apr 2023 18:53:34 -0400 (EDT) X-Delivered-To: int-list-linux-mm@kvack.org Received: by kanga.kvack.org (Postfix, from userid 63042) id 8E25A6B007B; Mon, 24 Apr 2023 18:53:34 -0400 (EDT) X-Delivered-To: linux-mm@kvack.org Received: from relay.hostedemail.com (smtprelay0013.hostedemail.com [216.40.44.13]) by kanga.kvack.org (Postfix) with ESMTP id 797076B0075 for ; Mon, 24 Apr 2023 18:53:34 -0400 (EDT) Received: from smtpin17.hostedemail.com (a10.router.float.18 [10.200.18.1]) by unirelay04.hostedemail.com (Postfix) with ESMTP id 3FDF01A0415 for ; Mon, 24 Apr 2023 22:53:34 +0000 (UTC) X-FDA: 80717787948.17.6D3834A Received: from NAM02-BN1-obe.outbound.protection.outlook.com (mail-bn1nam02on2081.outbound.protection.outlook.com [40.107.212.81]) by imf01.hostedemail.com (Postfix) with ESMTP id 6D9C240011 for ; Mon, 24 Apr 2023 22:53:30 +0000 (UTC) Authentication-Results: imf01.hostedemail.com; dkim=pass header.d=Nvidia.com header.s=selector2 header.b=EKu5smBz; spf=pass (imf01.hostedemail.com: domain of jgg@nvidia.com designates 40.107.212.81 as permitted sender) smtp.mailfrom=jgg@nvidia.com; arc=pass ("microsoft.com:s=arcselector9901:i=1"); dmarc=pass (policy=reject) header.from=nvidia.com ARC-Message-Signature: i=2; a=rsa-sha256; c=relaxed/relaxed; d=hostedemail.com; s=arc-20220608; t=1682376811; 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=+gMjttjyVWGIkGTsOTDAB5kkziD272xbAfNnCdW1+rA=; b=L1Wf662uQnJuztNK0V63reD87YM9gz6Fl/RnbJQOsFNksxDH/z8Ux6kth6DdYYQQvx0miZ X4YoKnqK0qeayfshd2VpruXuJpaXidsMbbuXTELTfd4VHJVU59ozhNHUUYieFuNXFimGGQ 20syCl0yfkZCh11Jz/w4qnmrFFDjBu0= ARC-Authentication-Results: i=2; imf01.hostedemail.com; dkim=pass header.d=Nvidia.com header.s=selector2 header.b=EKu5smBz; spf=pass (imf01.hostedemail.com: domain of jgg@nvidia.com designates 40.107.212.81 as permitted sender) smtp.mailfrom=jgg@nvidia.com; arc=pass ("microsoft.com:s=arcselector9901:i=1"); dmarc=pass (policy=reject) header.from=nvidia.com ARC-Seal: i=2; s=arc-20220608; d=hostedemail.com; t=1682376811; a=rsa-sha256; cv=pass; b=dfaqBXss/diZ9KDFz0QXCwEDP+A1fQi+/s/58ZccHbUd5KWOCKyCTCd5cubhRzuUgyHjwn t0q+Bqak1pzLhgWb0hUEnt3tbW7NyacS58xoZiW/9/Bdjh0bX53xEjcTwk1ue8KoufpuNT Q0U7m3mIGMlWF7bp2wz9qZ7GUngJZOc= ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=YTzt31VDdhaKHRIpPk0MUGsEi6KBpNMrdhZXCUbeR1+eB78b8JpiP0/wzvv4UR3TTLpV4jIkDEvmR2W2USb7s+ddZqpccsIutq40Mg9M7CuC/pwSJv01gH+25AN3kCgOhdKwetl/DkRl2JerpyDOFFhl7PtQq0QOX1uTaSKsEda3bXzdxsauq/Lk6TOBCm7S+5hAZb5h62zWZi/D3ot+6GyhppnNDBv5snB/ekYJ35t25alnX6NNuZiuFfQi6CZNdzBlqN+FANv98w1abyaWbiG97/1vwoNw79k8SQN7/lG/rGKLsJbzSlfpyP95zljkXqNe/5x9Ma71YvS0dV+VTQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1; bh=+gMjttjyVWGIkGTsOTDAB5kkziD272xbAfNnCdW1+rA=; b=fV3bYZzz6TtS1qGHRVV3R9gh0+t8Rs4JgGmHMTTMlt+RHaHGpYKpG/204hTS3H8y5oqwcOyzFKGhwZMH4fRHzdMp2N1/2zkvt3WrWDlqqMn9bGljlCoNroD2R5nkuQaFSwomrcPQx8Q/bx7tl84iJut/z3u5oEDFyQM01BumSww1v71ikV1F91Iltm5HSJYgsKiioxoa5yl9cfk8acruEXFqE6k26v/2sZDILOL5/YwPD87tsMLiy1TnyNNwUM8662ZvQXMBtDg46+XVswHi1V0pUF28GAvc8p4qXebCn5THnZU7m5mOVEVuiMeeIYGjbUadRZ5sek+0jxnvfw3Isw== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=nvidia.com; dmarc=pass action=none header.from=nvidia.com; dkim=pass header.d=nvidia.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=Nvidia.com; s=selector2; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=+gMjttjyVWGIkGTsOTDAB5kkziD272xbAfNnCdW1+rA=; b=EKu5smBzYrnz4oWmc5xMY1oT5LCStxJukR/4dxPlKhyCTFH78363a4JFsmjqk/rqIAqTk6Ncf69i26xfJdkGkQq/x4C5IWMD/Cl3FExlIk18gE5RGuFGzNKRmwH3lRGMN0E4BW0SqHWLlk/Qmokz4Grptn4kh/BX72P0b6X81zYEGsMumJUoanTPMekXCJoqJNXn9ITGaNFohZp+drpRXAUIXL8bgHPs+Enh5gv0OCtwpBFN1ooALI4K0rQoBkgVe59seaxJNzpwHpSwre4pEHJybSxX2az59+xy0ZwyECOx3BbgHuVQXNBdC93XX09Epo0pCEqtcIIt7bbUJwKpDw== Received: from LV2PR12MB5869.namprd12.prod.outlook.com (2603:10b6:408:176::16) by MN0PR12MB6269.namprd12.prod.outlook.com (2603:10b6:208:3c3::14) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6319.22; Mon, 24 Apr 2023 22:53:28 +0000 Received: from LV2PR12MB5869.namprd12.prod.outlook.com ([fe80::f7a7:a561:87e9:5fab]) by LV2PR12MB5869.namprd12.prod.outlook.com ([fe80::f7a7:a561:87e9:5fab%5]) with mapi id 15.20.6319.033; Mon, 24 Apr 2023 22:53:28 +0000 Date: Mon, 24 Apr 2023 19:53:26 -0300 From: Jason Gunthorpe To: Lorenzo Stoakes Cc: Christoph Hellwig , linux-mm@kvack.org, linux-kernel@vger.kernel.org, Andrew Morton , Jens Axboe , Matthew Wilcox , Dennis Dalessandro , Leon Romanovsky , Christian Benvenuti , Nelson Escobar , Bernard Metzler , Peter Zijlstra , Ingo Molnar , Arnaldo Carvalho de Melo , Mark Rutland , Alexander Shishkin , Jiri Olsa , Namhyung Kim , Ian Rogers , Adrian Hunter , Bjorn Topel , Magnus Karlsson , Maciej Fijalkowski , Jonathan Lemon , "David S . Miller" , Eric Dumazet , Jakub Kicinski , Paolo Abeni , Christian Brauner , Richard Cochran , Alexei Starovoitov , Daniel Borkmann , Jesper Dangaard Brouer , John Fastabend , linux-fsdevel@vger.kernel.org, linux-perf-users@vger.kernel.org, netdev@vger.kernel.org, bpf@vger.kernel.org, Oleg Nesterov Subject: Re: [PATCH v2] mm/gup: disallow GUP writing to file-backed mappings by default Message-ID: References: <90a54439-5d30-4711-8a86-eba816782a66@lucifer.local> Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: X-ClientProxiedBy: BLAPR03CA0150.namprd03.prod.outlook.com (2603:10b6:208:32e::35) To LV2PR12MB5869.namprd12.prod.outlook.com (2603:10b6:408:176::16) MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: LV2PR12MB5869:EE_|MN0PR12MB6269:EE_ X-MS-Office365-Filtering-Correlation-Id: c6c033db-f2ce-473b-96f1-08db4516b7aa X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: 2CX1YcVODM7u8wia4NmuuanB44MCuOfBER4zJmFV5sBCQ9yW7FuoZO0m/8T3mxdK4AVAOUx7dpcI1jw5jIjdtUK1EXU27obXht8zG+ZKy1/8sb+zDsXrw3FM+f6OMBX/AtVf74UzCHdImIADG0jPgKBYEmFygctinDperNT+ms2R5RJTbQRW5G3SKvqSOQjlaI1ztE+sOn1T81WzHGTStmS58+me2cZxUBZUsDIHw3tgsm8ZkPiFnnoCcv1q7ydwGHNb0NSSPFq9xcWAO4xeCaAreJ+Z3tGLdfG1YGLu0xweo/ZIWkg9dUPSo/s/0+7zVTKkroOA59UaWnNiRFUENffdlaJlyZcrSvRIssL+6kc0HUL0e7Jhmt55E3vJSlYHbNuDECmMiBM1m3CijLEZaY8ZTYk8qUjav2dvkAEX9Uj63dtYKLAXOQCAeCNxVtTnUEL+hsc6KqOUv/lDDjIgrM52H2K+yHKKIrpI/STNQJP1FwW6QPhwl3IYyXqegnYYsJ9/Ccq5FWCBRssGl4j8RbH9MWUPjc2j+nvl476mjxb6I2srfznBUKbpeKatM/cQ X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:LV2PR12MB5869.namprd12.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230028)(4636009)(346002)(396003)(136003)(39860400002)(376002)(366004)(451199021)(186003)(6506007)(26005)(6512007)(6486002)(4744005)(66556008)(5660300002)(66946007)(2616005)(38100700002)(6916009)(4326008)(41300700001)(7416002)(8676002)(8936002)(66476007)(7406005)(2906002)(54906003)(478600001)(316002)(86362001)(36756003);DIR:OUT;SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?us-ascii?Q?EcRyB6RaRLMENvnfrGriy0+hRLoo+38zLtuHUjuX9gdIXbMiHpeLnF8xhEAU?= =?us-ascii?Q?yF9v/r+Y1Dr5DAMfzYntmB+xLt3GBUr1di8TS053Ctly12dQ+ObI+auT4m+n?= =?us-ascii?Q?05ewclsn+00IS7Whydil4sIS6nh/RejQ3TYQxwAGAQ9c69SBV4na6kAVioVw?= =?us-ascii?Q?PFutE33tjyDnoAyvekTiKkd6YCcFq3VubozoOb6+lAedptZ/AjBQIwWY9WkZ?= =?us-ascii?Q?sIkHXSsxkAM2n4sG8QT6vrbjP5i7xq0Qy72wzdlhtoFDuxwxJeVKV2oCQfwI?= =?us-ascii?Q?s3hI6P420ITze8DIG/OLdEeXsTDKfArY050HhP5Ox8yfwb3LSeoUkuzFtjmu?= =?us-ascii?Q?Trjy829l9bz72uVqlulMycg0xdlw1kaQjall/sX0oYMavzRrSFBpKnorPTTJ?= =?us-ascii?Q?dUgKinueEbTgZhyjcRYqVZ6o4jd7kH8ksltIPKGRWlixLE3U8ICvSwcSI87F?= =?us-ascii?Q?Lg3odLHq499TaFg8QTSKmxAq/l65XHoOHyYirZCw8W4wazlbDEWrjmAyuc5d?= =?us-ascii?Q?tyxbgspa4lz5Nej8S0zUg83zOJ/bmNYHayJnCwY1PDl1cmi37D5sTap0T4Ia?= =?us-ascii?Q?EsbrtdCMSdQvAMAom/8j+yA8+c5onbrgRBvYf2Ty/fMTAVJ+Wpv8ADadbrEK?= =?us-ascii?Q?SLDfK0pBO8uH3B2uachFWeYFjODq1m7/1LUt4wk8Ozuy4i/0g2Jt7wDflPtQ?= =?us-ascii?Q?F4YCka2q+rFz9Uk+dMXiap1//3M3xPOZAIKltWch07BXg5ojm3+I7xbiZ21G?= =?us-ascii?Q?N1CfIoKqnPClh2YH3Ew1rcJontdpoEBfjC+3ztMlc7B1sUxvcWkm2AMeyC3R?= =?us-ascii?Q?xRnLKqAxmeNb2hC3ULlRzgub11utC7H7FF3yPDM3y6MibZLOh5rwdyJq6Owl?= =?us-ascii?Q?EO3nmmWSwSCEmFvpm57apLrByOfUPnFMNGFCKeHvpqtMNA3rsQxmFBATH+jA?= =?us-ascii?Q?a4h+N3C2WWQWvPW/upVGNlgrl5U1bS5f8yNjLCANyuY8T8gzmZ/JjKJlya9j?= =?us-ascii?Q?60aIJCKGj9WrGkMn5lM80DdkJe6b3XF4P3r3Vt3tYvzMjUDe3QdDQf7koaI/?= =?us-ascii?Q?dctAslhOr4p6/BiBvkci98aZxanskgbE2bED9GBvNlX83fLhmcCTUdSaCBi5?= =?us-ascii?Q?zNXpuki89tzzWtmvHj2yrMGXLIG7QBrv9aJbtxNzNwtq/pAM8gKj72l0Z0RS?= =?us-ascii?Q?4JdSeaWF9Q5XmvBmpVLoYx4Y9UGG63F605zpaNNrXLRQNe37JS/quyf1M+ja?= =?us-ascii?Q?GaDPUVlBov3Fw8I9iJyNCjzuK+dPuyLTUlg5xCCxIp0Jr43MG5Mq9dpEbQ88?= =?us-ascii?Q?Zy4P6KzHRcy+63UqKoHllf82oO1BGUu53B2Z50r5OrOdVn4dQRz1dV9OOQcg?= =?us-ascii?Q?qm4vAAz63fivi5MJ0w3pthyJv1Zmi7WhRoqAnslrNI/MAVJN/zstdUp1eg6I?= =?us-ascii?Q?mh1Xf2BkVilHVRk7+YIvONAvj4b24DJ481TSC0PqxRBPdYUDHRai0WqIrGol?= =?us-ascii?Q?PCcAWru8dMg/Sf5IP2nk66OmKwqr8FawwZTN5BZF+SoiQ5EB0t9UyMCbujDl?= =?us-ascii?Q?7ynNcQBgmYsgXdpjLijAa4RO9EkOMAndB+wF9l6Z?= X-OriginatorOrg: Nvidia.com X-MS-Exchange-CrossTenant-Network-Message-Id: c6c033db-f2ce-473b-96f1-08db4516b7aa X-MS-Exchange-CrossTenant-AuthSource: LV2PR12MB5869.namprd12.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 24 Apr 2023 22:53:27.9604 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: 43083d15-7273-40c1-b7db-39efd9ccc17a X-MS-Exchange-CrossTenant-MailboxType: HOSTED X-MS-Exchange-CrossTenant-UserPrincipalName: e2qaO/vQ9CmG46IZKDQOC76JaRXEzK3LP4Af7oS2U693mi56h3E+x6qP9midZSmC X-MS-Exchange-Transport-CrossTenantHeadersStamped: MN0PR12MB6269 X-Rspam-User: X-Rspamd-Server: rspam04 X-Rspamd-Queue-Id: 6D9C240011 X-Stat-Signature: w8iqoa67unmou3sjgawr7sezjiufxeir X-HE-Tag: 1682376810-891327 X-HE-Meta: U2FsdGVkX1+Lk/9xzCmweeuiTX1I0g8Iy20ipftCtNvllkC9Rt9s99u93HCBGYCXOzbk6kB3i+9sZbeRZwxLRqE3j7EqPpNf1XNISQ+wpLX1YENoBGnZDjtR/mNQ1a5yTr/7mxd1+n/MGrTjqCjjV/qkrY2kdQSh40XHa8mLbOTy7xxgCeMbKGXbKDYJgFFtjNCdXvNTOsVlpVuH7NpoI9ZEKokAZ7nKt5R0JgkVq7hmQEcoyfU1H4tQyLcZsi96PzNR+IIghQXKBOuUGKgs+B+hpA2iavGZhCLnNh+v4vNd4qkoqrB0z0aM1epbYbn8dtZ5DcFvZWkAyckbG7zzaHb0STRCLt1N2UYy33ORryRS2z47yrmgBzIsMz+FvonJncGGHdzjTZVGne3SmuSN2tXcoDK57eLcmyqCx97RnT6DrF95C819vmlP4uTNR9BP7oi8ULlC+qJZtBoa/UWSB7uodtSh6cUkoEBiNzVduvgyceXt1N5FDAKUUA/vFW9GnNVshbNqP1qtVzbYZwnkdcbNY/XN/eEzmkpa4F+p4moSPthOjTs1uXMWi5xf+ac5y4CqlKoEvI1HcSrYvcl2GzxhvOqzeVpJSJy5aHYu9q1v/h7/kNdqdWm/Pyw26SPyhuN4mfL9hpqGPj6plB9l6GAgBH/8ukPj5wjgDs75RvEfzfzmz6jdrRIC+ksnh4nfHv1HY4qm8NxzjuZQK3LItEwfbISVCqcD+GWLHwhmhKqgABxmckIVj8PJZNp3K0+95wksT+JQChlCv469D6O8KNDk3drPcKoM88RYVifPrTa5K8BPLY980Mq9+hWlZ2/aGAWNhgYNvpnYcmr4Z5ep4yIYjIKF0KD0uGcuTEr+ts9BpkxqhrpeBD0QlDWLyWObqp5bnKJThe6H6BkgrPx5EwYbyA+ND058ST8guzPYAdpYluixqPbBIO107ZtkTp6Z2OpcUk9V37Rzj+rH+wx 2ZzWg+G1 6OjcBtjY4kPeipm+hjxzaBDXBbPsdYccINjydKEYg4pS2CK593oPC88dqxMvSPl2u6uCt67PTelvy2gOiqY2BCez0vj9OkkjHzv1gAychREzPpskFBgagTH1M0Be3Y9nqk0+w4UqyKLlaO0Hj7bveJWSWiimABs7Dz4ISvVbG+8w4bubYoJkM5nzwPOTNLYEqy9Zks1woeuysuDssoAS7i2jghNdfVOJFJe6x0ZlbBYjn0+3EZ9U0mK954LHZVPQPFodEKc9GNbSc5yl5g1Kw7/hCXUONpBqCqpee 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 Mon, Apr 24, 2023 at 08:18:33PM +0100, Lorenzo Stoakes wrote: > I think this patch suggestion has scope crept from 'incremental > improvement' to 'major rework of GUP' at this point. I don't really expect to you clean up all the callers - but we are trying to understand what is actually wrong here to come up with the right FOLL_ names and overall strategy. Leave behind a comment, for instance. I don't think anyone has really thought about the ptrace users too much till now, we were all thinking about DMA use cases, it shows we still have some areas that need attention. > Also surely you'd want to obtain the PTL of all mappings to a file? No, just one is fine. If you do the memcpy under a single PTL that points at a writable copy of the page then everything is trivially fine because it is very similar to what the CPU itself would do, which is fine by definition.. Jason