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 31378C77B7A for ; Wed, 17 May 2023 07:55:33 +0000 (UTC) Received: by kanga.kvack.org (Postfix) id BC028900005; Wed, 17 May 2023 03:55:32 -0400 (EDT) Received: by kanga.kvack.org (Postfix, from userid 40) id B4928900003; Wed, 17 May 2023 03:55:32 -0400 (EDT) X-Delivered-To: int-list-linux-mm@kvack.org Received: by kanga.kvack.org (Postfix, from userid 63042) id 9C3F0900005; Wed, 17 May 2023 03:55:32 -0400 (EDT) X-Delivered-To: linux-mm@kvack.org Received: from relay.hostedemail.com (smtprelay0012.hostedemail.com [216.40.44.12]) by kanga.kvack.org (Postfix) with ESMTP id 88859900003 for ; Wed, 17 May 2023 03:55:32 -0400 (EDT) Received: from smtpin24.hostedemail.com (a10.router.float.18 [10.200.18.1]) by unirelay07.hostedemail.com (Postfix) with ESMTP id 56675160467 for ; Wed, 17 May 2023 07:55:32 +0000 (UTC) X-FDA: 80798987304.24.2715E0E Received: from mail-wr1-f51.google.com (mail-wr1-f51.google.com [209.85.221.51]) by imf16.hostedemail.com (Postfix) with ESMTP id 7EA30180010 for ; Wed, 17 May 2023 07:55:30 +0000 (UTC) Authentication-Results: imf16.hostedemail.com; dkim=pass header.d=gmail.com header.s=20221208 header.b=UV9FWfS8; spf=pass (imf16.hostedemail.com: domain of lstoakes@gmail.com designates 209.85.221.51 as permitted sender) smtp.mailfrom=lstoakes@gmail.com; dmarc=pass (policy=none) header.from=gmail.com ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=hostedemail.com; s=arc-20220608; t=1684310130; 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=3/kfc+tiJ0ZCBOb1GVRxtYgE5lDPgEU5sGHiw/RjZPo=; b=jzEBtt0/UEr3gwWD2a+0aHUZ9ApRFoSYXROucUvkahSIOWa+001e38y17D0153Hox4viwg 5RXEjnaQiSI8V6d+r7UH2FCu9Xo4nvCrof7BcB7QeiiH2xU7Ai2x1Z/SyKS1csUCkiyd/o 6KH445Zq4Lh2H4eTPt2KF08l4Py5QdA= ARC-Seal: i=1; s=arc-20220608; d=hostedemail.com; t=1684310130; a=rsa-sha256; cv=none; b=8S7HaQ2JWH57mUUeivLLTEjIqNlljn8U+1gsTgxI1UAjUjS4lJEOUzZADFmCHnLUP8nUsM kzCDTaTTOHIFo08ybn5CAo+kk6e0LR3BaAU4w+7h64UUdC8LfVCNjvR+A4CR4+C1Y8H1KP aqbVIBUVpWtL7JfJM8agotpTsXd+qpQ= ARC-Authentication-Results: i=1; imf16.hostedemail.com; dkim=pass header.d=gmail.com header.s=20221208 header.b=UV9FWfS8; spf=pass (imf16.hostedemail.com: domain of lstoakes@gmail.com designates 209.85.221.51 as permitted sender) smtp.mailfrom=lstoakes@gmail.com; dmarc=pass (policy=none) header.from=gmail.com Received: by mail-wr1-f51.google.com with SMTP id ffacd0b85a97d-30644c18072so231003f8f.2 for ; Wed, 17 May 2023 00:55:30 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20221208; t=1684310129; x=1686902129; h=in-reply-to:content-disposition:mime-version:references:message-id :subject:cc:to:from:date:from:to:cc:subject:date:message-id:reply-to; bh=3/kfc+tiJ0ZCBOb1GVRxtYgE5lDPgEU5sGHiw/RjZPo=; b=UV9FWfS8aIvYMGLcPcpiWcUdl75X59NHVstTUgr95d6jmEJGTvmJYksKT9XVbcSz0R /uqtlt+EidplmbyZ2bX7/b6E3nTsXJpK97L9rApchZ0lF3T5y9vldo06p44O0HeSnFuq ccgs3QBBJEDmceq6i+YH2t1CFNLUL5N8H4w8ZN8tQl7h1zFBX/tF8MwHfn40MmBFRr62 3dZfQIDLSb3oRoNjfpdbTw52pmWThAAIAxgDegm26qYqZO/3etNtu3SaO5NKSKsj4ROX 3OBTGc1PooOgO1kuA6mIZf+6ZED7DiGxUZxFmPlUjvOvLjM6M4n/KmN93/gTjqLSQD8t EwNQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20221208; t=1684310129; x=1686902129; h=in-reply-to:content-disposition:mime-version:references:message-id :subject:cc:to:from:date:x-gm-message-state:from:to:cc:subject:date :message-id:reply-to; bh=3/kfc+tiJ0ZCBOb1GVRxtYgE5lDPgEU5sGHiw/RjZPo=; b=QT6uCo8BoMmZtXWAkmdUV2LHAXgvtnO76FKvk7k8UDWEtZjLg5ZWDzc9hlvKH+Vzdr kUISvWzpq2MYbQtLr5DIkw8Luj91N6V08jBRRn0G66seYir0ajbupaG2jSRY0cLk46N4 DJU6VgxH613N12m47sysdvhYdBMptglNKyxDLrYo/9531U2VDLEZnOgev8nzo4GHrpgb bMcF1Vgw/DvahzC5elThVIVMu+XpJVe7a+vEcld93oTwBInxywfxi1cMAtWU5+w3+zrR EGs7Zto3JV06v7a1jMWHduWz96ExJZmyP3NSsr3maN8iTOC7gBclljF5iZ9B8Cm6bxa7 i4dA== X-Gm-Message-State: AC+VfDwwySn9LLdkwx+z6TzRKlCgAS+a01STofaY8lkkYRnyM/6Qkc4f UemczW+KVcSuIIBIWPYwYBY= X-Google-Smtp-Source: ACHHUZ7ZXduP0XJibx9YnkNGpPiAha7x3In1oyBZXq6dDd4yPqz/WqdMaDLUZ1dKYA2W1fWzJ30ksQ== X-Received: by 2002:adf:e8c4:0:b0:309:3698:8006 with SMTP id k4-20020adfe8c4000000b0030936988006mr3101357wrn.34.1684310128765; Wed, 17 May 2023 00:55:28 -0700 (PDT) Received: from localhost (host86-156-84-164.range86-156.btcentralplus.com. [86.156.84.164]) by smtp.gmail.com with ESMTPSA id t2-20020a5d5342000000b00307972e46fasm1844942wrv.107.2023.05.17.00.55.27 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Wed, 17 May 2023 00:55:27 -0700 (PDT) Date: Wed, 17 May 2023 08:55:27 +0100 From: Lorenzo Stoakes To: Christoph Hellwig Cc: Jan Kara , Jason Gunthorpe , "Kirill A . Shutemov" , 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 , John Hubbard , Pavel Begunkov , Mika Penttila , David Hildenbrand , Dave Chinner , Theodore Ts'o , Peter Xu , Matthew Rosato , "Paul E . McKenney" , Christian Borntraeger Subject: Re: [PATCH v9 0/3] mm/gup: disallow GUP writing to file-backed mappings by default Message-ID: <503e92f9-fbc2-422b-b0d4-f4cabe3f6802@lucifer.local> References: <20230515110315.uqifqgqkzcrrrubv@box.shutemov.name> <7f6dbe36-88f2-468e-83c1-c97e666d8317@lucifer.local> <20230517072920.bfs7gfo4whdmi6ay@quack3> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: X-Stat-Signature: g49fo7kue4ncno1zthjywur9zsqdx4t1 X-Rspamd-Server: rspam04 X-Rspamd-Queue-Id: 7EA30180010 X-Rspam-User: X-HE-Tag: 1684310130-392706 X-HE-Meta: U2FsdGVkX18jUWEmXbcd6T6OFQI8t/ZG0r07/4B+sIvCSt3CBgEsvY4oLaa/4MCw5tuUIb/CjZBLX+W/18kjIOD4o6XxRibjfYzkULKybu3Lxm6Y6oL+WraoeL3ex5C9VyPNZkst+PC4H6Kfn1g0lCQkb0JZZvs/r9FIqLrs1klNzRdNebKyhJ8y758wj3NJI6R2iFmJk0IqlddxOJG8c0Qbbj0KicMG39p53ApOGZkNHnUmsymgj+D3Rf9SfeNvqMklj74tjai9nfUkMfxqrVvLObznMI87VgQbhM5UU6MwnN92cTxpDMbp3XdTPtztIONfcplH5nHjfqxbntAWCPO1fnOy3gFt02LAS7ga3cbb11NviWCe71SCLVVhyzG+yN2qMj4AULC+gGOTgur8/EsEPwdMg1n1/FNg5fIkIaZpNChDFHsXCAxqn2eIRN6ADHCnps6aC2sNdJyz/6HYD92xasXpIC6Ah9QocBP506i7Fh+nCAuUodcVQ8pVBzVaJO3WoJlY9v5Vw49IxArVMD3WDAzAw4dwyzKIvbOwbPK9DMSmu70ZVtgZZ3OzTl9BXZPax8Pyn8/t/o0dIBEct5Cjvxi25V7Cp3pZF/NaWuL1M26ntcEzy7EsfEp4UkqN1YQXI1YVKMOoqDKBs8bO34tsKdlEqcw42v6ZerxNUwF3TzHzpJEzBvSeyWU4oRwY3d7VMS/z48ZdDQvdvJohY+Ez/raEC2/JmhXn/EHhsY6rHpIlpwgN+HiUq4FYUfqlrQZtYjrHeutIooTS2r8A76Za4wWkMfB8zE4MU1p50Pr1ZT4wRBQ627eI3NQDoauJ1q67+22JF/7yCLEkjM9HmwyAB0G0oPwkJ/2v79E84SycRwPj357pYh6jBmQSx/r/t9cJrzZoOnbsH23aCW7PW0G5KjlqneZzlYGUgIGY5rke+G+ajerwgL7OqQFduzvavCSJR8hrm80AwP9hMaL 392I9jNk yerH/EEMoo1Pk9dlxPLabrb8JLsW2QnsBBGTy/CqgrZcH550Jfks6JRL2LxIKEDsDHcqTMVv7UGC5uI6FOuhhr9hICGNEg42FmFtVFhRIMg1bU6Ygdqb3lI1F111l85Atdp104ucfGoMSEnGQWFNqVnCZUlNIK1WKgNUkkzryqT28lvgogkMhcbPo3yE7xoQcYfCJc5qOZZYmaoxcTfFllapZSqkzouI2nlhPuXSu9Ql3i3mAHGTmCyNWBW3xRStfoa5xlQT1YDnw2kKwNBIFopuq+Hb3EZSpuE7zXB3DXjcKEKQuq1lvjrudIj04eISPa1rkMweaF6YuJflssK2pC5B89XOulKYgsfSRPdiAXrrl+TevmZDGamw3EIsICEJ4C4Amkghq9w+7YOBzehH8rHo03PonZeE3/lpCru7jkRwFnaqE1tm1/TyXRPM9C/ykswELbb5iKXgnMws= 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 Wed, May 17, 2023 at 12:43:34AM -0700, Christoph Hellwig wrote: > On Wed, May 17, 2023 at 08:40:26AM +0100, Lorenzo Stoakes wrote: > > > I'm not sure what you mean by "total flexibility" here. In my opinion it is > > > also about how HW performs checksumming etc. > > > > I mean to say *_ops allow a lot of flexibility in how things are > > handled. Certainly checksumming is a great example but in theory an > > arbitrary filesystem could be doing, well, anything and always assuming > > that only userland mappings should be modifying the underlying data. > > File systems need a wait to track when a page is dirtied so that it can > be written back. Not much to do with flexbility. I'll try to take this in good faith because... yeah. I do get that, I mean I literally created a repro for this situation and referenced in the commit msg and comments this precise problem in my patch series that addresses... this problem :P Perhaps I'm not being clear but it was simply my intent to highlight that yes this is the primary problem but ALSO GUP writing to ostensibly 'clean' pages 'behind the back' of a fs is _also_ a problem. Not least for checksumming (e.g. assume hw-reported checksum for a block == checksum derived from page cache) but, because VFS allows a great deal of flexibility in how filesystems are implemented, perhaps in other respects we haven't considered. So I just wanted to highlight (happy to be corrected if I'm wrong) that the PRIMARY problem is the dirty tracking breaking, but also strikes me that arbitrary writes to 'clean' pages in the background is one too.