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 DFE89C54E58 for ; Tue, 26 Mar 2024 08:33:36 +0000 (UTC) Received: by kanga.kvack.org (Postfix) id 6F0DB6B0087; Tue, 26 Mar 2024 04:33:36 -0400 (EDT) Received: by kanga.kvack.org (Postfix, from userid 40) id 6A06E6B0088; Tue, 26 Mar 2024 04:33:36 -0400 (EDT) X-Delivered-To: int-list-linux-mm@kvack.org Received: by kanga.kvack.org (Postfix, from userid 63042) id 567DC6B008A; Tue, 26 Mar 2024 04:33:36 -0400 (EDT) X-Delivered-To: linux-mm@kvack.org Received: from relay.hostedemail.com (smtprelay0011.hostedemail.com [216.40.44.11]) by kanga.kvack.org (Postfix) with ESMTP id 48F0C6B0087 for ; Tue, 26 Mar 2024 04:33:36 -0400 (EDT) Received: from smtpin13.hostedemail.com (a10.router.float.18 [10.200.18.1]) by unirelay03.hostedemail.com (Postfix) with ESMTP id E00CDA0954 for ; Tue, 26 Mar 2024 08:33:35 +0000 (UTC) X-FDA: 81938526390.13.78C41A9 Received: from mail-wm1-f43.google.com (mail-wm1-f43.google.com [209.85.128.43]) by imf04.hostedemail.com (Postfix) with ESMTP id A808A40016 for ; Tue, 26 Mar 2024 08:33:30 +0000 (UTC) Authentication-Results: imf04.hostedemail.com; dkim=pass header.d=gmail.com header.s=20230601 header.b=AB24riEz; dmarc=fail reason="SPF not aligned (relaxed), DKIM not aligned (relaxed)" header.from=kernel.org (policy=none); spf=pass (imf04.hostedemail.com: domain of mingo.kernel.org@gmail.com designates 209.85.128.43 as permitted sender) smtp.mailfrom=mingo.kernel.org@gmail.com ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=hostedemail.com; s=arc-20220608; t=1711442010; h=from:from:sender: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=JyReadztiNYhjf4mOaaDyd5cW+HZXSffA6TTQkELG7U=; b=U6duFQWVEK1yYcZzvHEOaz7+PS4OlXY/4D1lzbOplqpT3HouUjgxGHlYKFDwuL5x7n5ftm vA+iqQjyJ0JN3hLRvpFl3/O2RXrTOC7HY+tesQ/EoDyUdf7pfoTwIA2HNv0p2r/DafEdMg TZl+zvxW3kcysMaLOXw4ctmXJxdOHJ4= ARC-Authentication-Results: i=1; imf04.hostedemail.com; dkim=pass header.d=gmail.com header.s=20230601 header.b=AB24riEz; dmarc=fail reason="SPF not aligned (relaxed), DKIM not aligned (relaxed)" header.from=kernel.org (policy=none); spf=pass (imf04.hostedemail.com: domain of mingo.kernel.org@gmail.com designates 209.85.128.43 as permitted sender) smtp.mailfrom=mingo.kernel.org@gmail.com ARC-Seal: i=1; s=arc-20220608; d=hostedemail.com; t=1711442010; a=rsa-sha256; cv=none; b=Gg4XIB/lZCSDrXOLmlqvelicpcsmG+24OLJ0+8NlnQ2VlTL5l+LMjWEk1aJCyG9dePRcmJ td/fk/nK+DxRDNPcwk8UNc5Ty1dDyH/+funArQiyvx9uEFWGVBmakdbn9mp6mOOHq6z89+ ygaIA59q6/UvA/50FI0jte2cbrB+qVc= Received: by mail-wm1-f43.google.com with SMTP id 5b1f17b1804b1-4148d7b89d9so5251605e9.3 for ; Tue, 26 Mar 2024 01:33:30 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20230601; t=1711442009; x=1712046809; darn=kvack.org; h=in-reply-to:content-disposition:mime-version:references:message-id :subject:cc:to:from:date:sender:from:to:cc:subject:date:message-id :reply-to; bh=JyReadztiNYhjf4mOaaDyd5cW+HZXSffA6TTQkELG7U=; b=AB24riEz4elztQuXthiHZOg8c8bsXUVYaTVSwdsCxiD6g4l/bAwQ0I2fXWu82KH5pn iBJmZX+JdfcvBUBe7yVOu1Bb0GuRkwUrbetTkwSRGyzF48jTsC2qVfuDh117zcy0Mcl2 ytDqqgwBUxv2LX6jNYUAjqpz3U1R6IwZA2qBer1YQcjJoy4i9JmGsYZy90D9xt5JHVnP rFfivf+3pZdfAXyt/Gpcocv3rmeOiTfU2Ua1Uprc8EjAthhWZJ8oWTTHakHxEY6otxV9 FP9k36JC567J3ZTJPbotboOG3O5qMvVdpUgHQcK+0JaUERZdDCTXbDDdMOMsYejVAinD /F9A== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1711442009; x=1712046809; h=in-reply-to:content-disposition:mime-version:references:message-id :subject:cc:to:from:date:sender:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=JyReadztiNYhjf4mOaaDyd5cW+HZXSffA6TTQkELG7U=; b=VidkVTO+Mx6mHCq2Jin+9RgjdU62tQhU6J9F7MlhnLPHWvZZhxwYX+967ZPCXVkD4f WIiSJAA/XtIdZVFhfqTcuuWjhAXo4sgW6GGpOvwsEokTlsWgOVK8vL0B4BFkVvsCCjru K9fFDY7XC406nKEJbDAmrsZ0pDpTPhYk4HFaBaXm45Tg04fCl2bsrBSBs/KpVDczM2e8 t8zYcU8WwgpmvTMDU++hKbdGeXmrVhv0SDbo6lREDki5X6PFg27QZ/q6HkNV9lj73+nL BhrMJTuWsjX8MpBPU2wPTWf1m9ZXmsPkzASTd7/bxYIBG9rMlLlT/5w6GgS4C+2wYGe7 Jjdw== X-Forwarded-Encrypted: i=1; AJvYcCVhB0kAgpMi2JMQ3F8gbd/6OCasI6BvxF9iFqtV3CEi6KkaAxDSxAPVT1k13esSqP3hC05nm2m0r3faqUmSrL5sqf0= X-Gm-Message-State: AOJu0YxrJBnvncMu3mx1MLQNawwxSDAjWEXDyllxB0dYtJxsqFd8b1l6 E3MyPkxW4+P3sdt0eRENNAQzVT8onzMMi7A0Gpeggzi8Xual0GWl X-Google-Smtp-Source: AGHT+IGe/H7uGJpPfItdaEKmFG3qI74BSCeCvlOUtguH+50pCLSbUAekuapcayL/TrWpRTDKkLD5GA== X-Received: by 2002:a05:600c:1553:b0:414:8e02:e441 with SMTP id f19-20020a05600c155300b004148e02e441mr1116601wmg.13.1711442008633; Tue, 26 Mar 2024 01:33:28 -0700 (PDT) Received: from gmail.com (1F2EF63C.nat.pool.telekom.hu. [31.46.246.60]) by smtp.gmail.com with ESMTPSA id u16-20020a05600c19d000b0041408e16e6bsm10932841wmq.25.2024.03.26.01.33.27 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Tue, 26 Mar 2024 01:33:28 -0700 (PDT) Date: Tue, 26 Mar 2024 09:33:26 +0100 From: Ingo Molnar To: David Hildenbrand Cc: Matthew Wilcox , linux-kernel@vger.kernel.org, linux-mm@kvack.org, x86@kernel.org, Wupeng Ma , Dave Hansen , Andy Lutomirski , Peter Zijlstra , Thomas Gleixner , Ingo Molnar , Borislav Petkov , "H. Peter Anvin" , Andrew Morton Subject: Re: [PATCH v1] x86/mm/pat: fix VM_PAT handling in COW mappings Message-ID: References: <20240312181118.318701-1-david@redhat.com> <5bc9de2f-c3ba-46e7-a234-3d3a46e53ba1@redhat.com> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <5bc9de2f-c3ba-46e7-a234-3d3a46e53ba1@redhat.com> X-Rspamd-Queue-Id: A808A40016 X-Rspam-User: X-Rspamd-Server: rspam05 X-Stat-Signature: eo9aut4mazj8qusbj4xpz5eweh61o8kd X-HE-Tag: 1711442010-307255 X-HE-Meta: U2FsdGVkX1/G568BFoY27cyVgnOm/SK9MA+kIpEAnmlESTSCEwZgEL6UpL/vvM7Enpu4SrP9SWhPkKxk3W6NV9uZvuL7xDYWwRX8MnA9kpCeZmPkTuQphJniWCY7rx+N9dJarvZJ327XIK6nYbyuyS5WedoJ/FxpNtn939Yz0b//k3/i52mQySCsjCtBjYztnO8xbIlJJjh1x7bh4pW2gS+dgGBo6IgA2ff2aR76UrEBmgZG4b4kCxJzAUgCTHsn/AvPySWFaWc0xEk+j6sTO9RoGZkBTuOCQDOgka9Xths+nLD5u5+tLmKqW1FX2MtHuLengdgrCNaLua054NtA8DkOl4YC+zyj28iffrss5lTSyLNn8JE0fLNBoDf5yeVQm00CCSPb7aHQiozrLwW5dAuFuL6PReIF6aFhYE5kvFFwGc9jkEIG3DJkEJlDzCKaYLV0RC6s5AZ211Nhkkb2vL+c+CKDTVKf9OktXrlepmnT6FUB1E7mF+Ppu/4pSqdjBMmJW9NJ2UqiwCdomMvQfJnH7ivxjaIIjpFchOyuSXjfdr3582RpR6wzNdSSex0KQ21Q8sPL3i8ad9TEjOKSHrztr3Qh7d6jQtCu5bCRNttw+4XTSLmMJLseGhkwdhU4GqlLFSQfRb9Lj2sgI5fQ3kdsVRMlcpzV6k1H5HoynGlklGu7IVjwKxu3HqVFx65KSgu7jFnxQdCxbIjXdgPlVk/zij2X8XKOxgAgIdoRxwjO4b/jUHzJvUrHj4NZ19SCTtPCfv4gkal5fo7X42W/l0QiVnCXFunS6M2HkWkEaPRuotZ+54NPQWmuJCs/8WONvSwANSh0YdwrP/vAShjSe1O4u77d+xfwbJ3Q+jR1RYR/ZJiStkQHonGMYlqZIk6xAXpwUhKoPh6QlPjsLMWyGFoSIT0wjUKQbDOmd6LLato+oSVNfVqUD0HbtaVzaVvZ1ofHmVRHXgasrNVp66Z Ws6GJaxh EYZhzhNlqHjvWp00oGXesI+orNaKaAkF+KGWmwEATG9AMatu0if8C1CWROmXb6QvE8U5DGNf6KaCBM/0zzjuQq1QSZ9G/MPjsSZSYmdY+12zN+7ExhG2vppENbxKSQw8FQ+D8S2jf/vEtlEpSpHNS/y8yLuqSoE/gah4ZuWWjsBq3RjWbVPZ6MG2C8XZA3+yWDmLRY6KpQBZc3ZtpxfYQ66IrTpwRqHtp3NjuMweR2HUfQeGZQ1oWs1Gb7iNNgsJm198qXNgNeB1Fhe389Q2WOQvztZXY94IK17ILRrAEsnr4xGPFWmznpwgovxbnGftKZOjf9p0SwGFxs5lCMmIOhgfo7TgY/hQJ61rSmkY6mrgoakDBgFruzpMpiYRcwXgp4xE5Ka4fqvkC0ChyDs+APjpgjOb1IQlvkmryKsQ/SHtR3+rQuivc1edg6Jyfqdk9IZVelLJbDJdbYddU05ewwcsBpl7mT/I6MCToaUi1QEGhaWQJmoEb5NWWdRkmQCxlAlG/wTCP96la5ABbqkxcLN70mna+AehQo3H9pJFZi3N7xiu/W0vY6e6E6jf226kQrdzVjSoXisnLI014I+3H816RwQ== 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: List-Subscribe: List-Unsubscribe: * David Hildenbrand wrote: > On 12.03.24 20:22, Matthew Wilcox wrote: > > On Tue, Mar 12, 2024 at 07:11:18PM +0100, David Hildenbrand wrote: > > > PAT handling won't do the right thing in COW mappings: the first PTE > > > (or, in fact, all PTEs) can be replaced during write faults to point at > > > anon folios. Reliably recovering the correct PFN and cachemode using > > > follow_phys() from PTEs will not work in COW mappings. > > > > I guess the first question is: Why do we want to support COW mappings > > of VM_PAT areas? What breaks if we just disallow it? > > Well, that was my first approach. Then I decided to be less radical (IOW > make my life easier by breaking less user space) and "fix it" with > minimal effort. > > Chances of breaking some weird user space is possible, although I believe > for most such mappings MAP_PRIVATE doesn't make too much sense sense. > > Nasty COW support for VM_PFNMAP mappings dates back forever. So does PAT > support. > > I can try finding digging through some possible user space users > tomorrow. I'd much prefer restricting VM_PAT areas than expanding support. Could we try the trivial restriction approach first, and only go with your original patch if that fails? Thanks, Ingo