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 093ADC77B7C for ; Mon, 8 May 2023 01:00:59 +0000 (UTC) Received: by kanga.kvack.org (Postfix) id 254A76B007D; Sun, 7 May 2023 21:00:59 -0400 (EDT) Received: by kanga.kvack.org (Postfix, from userid 40) id 205006B007E; Sun, 7 May 2023 21:00:59 -0400 (EDT) X-Delivered-To: int-list-linux-mm@kvack.org Received: by kanga.kvack.org (Postfix, from userid 63042) id 0F4746B0080; Sun, 7 May 2023 21:00:59 -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 02B406B007D for ; Sun, 7 May 2023 21:00:59 -0400 (EDT) Received: from smtpin15.hostedemail.com (a10.router.float.18 [10.200.18.1]) by unirelay02.hostedemail.com (Postfix) with ESMTP id C289B1205AD for ; Mon, 8 May 2023 01:00:58 +0000 (UTC) X-FDA: 80765283396.15.F411503 Received: from dfw.source.kernel.org (dfw.source.kernel.org [139.178.84.217]) by imf08.hostedemail.com (Postfix) with ESMTP id 8A583160004 for ; Mon, 8 May 2023 01:00:56 +0000 (UTC) Authentication-Results: imf08.hostedemail.com; dkim=pass header.d=linux-foundation.org header.s=korg header.b=WOjAd4a7; spf=pass (imf08.hostedemail.com: domain of akpm@linux-foundation.org designates 139.178.84.217 as permitted sender) smtp.mailfrom=akpm@linux-foundation.org; dmarc=none ARC-Seal: i=1; s=arc-20220608; d=hostedemail.com; t=1683507656; a=rsa-sha256; cv=none; b=a8xGo3Nv6CfeolGL/yHETcTFJ6ntTQyTdtB5ZaMHX5qOos/s5RtSVYw/flhrMXyN8rjrK8 Aq6djTKHlP2JScCXzLAr0+TyNPLUFycBWSGqaToVud3rQkycnVfB57XItSPwz6CqtSJpYn dulVWsW0LXyMjhu/ZWL6UBS8EaN1N2Y= ARC-Authentication-Results: i=1; imf08.hostedemail.com; dkim=pass header.d=linux-foundation.org header.s=korg header.b=WOjAd4a7; spf=pass (imf08.hostedemail.com: domain of akpm@linux-foundation.org designates 139.178.84.217 as permitted sender) smtp.mailfrom=akpm@linux-foundation.org; dmarc=none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=hostedemail.com; s=arc-20220608; t=1683507656; 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:content-transfer-encoding: in-reply-to:in-reply-to:references:references:dkim-signature; bh=VU2/m1JGb/+P1WkxbhKLJ10Za95cvurH6mdscU9nt5w=; b=eVRjCB7D25/L2KSmAaHKtKFMYbh1t0swWySCLkWLdXQbHW6ddyhd/IqZu9kFK244IW9KV1 Z6YJM9mauePC3XXSQF2DL03v8LFqX5NA2kDmzsd3cjvK3PmhyqhuBoDsLJkxUxlFz1Dv1X 0PH6baofPmIEEcxsmVxQd6iW2NxXH4s= Received: from smtp.kernel.org (relay.kernel.org [52.25.139.140]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by dfw.source.kernel.org (Postfix) with ESMTPS id 34F1860F19; Mon, 8 May 2023 01:00:55 +0000 (UTC) Received: by smtp.kernel.org (Postfix) with ESMTPSA id 86611C433D2; Mon, 8 May 2023 01:00:54 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=linux-foundation.org; s=korg; t=1683507654; bh=bmMy0QzRm7e6GBM3N6g+m3auRaR95vIAs0QzdR7RIWI=; h=Date:From:To:Cc:Subject:In-Reply-To:References:From; b=WOjAd4a7qAn5tN5OSyPxS7u+ClEN+iweK+3Cjf8gPUZa4nuoawaIKqvc8sc8em/S8 nR1IbaB5n5xQQ7DGaetoap4ZmjLmGajSHTeCtw1lxPm6Ffdvb66v/EoWss/w+WBbRl kMYJvAL+GMHl1tEPkM4AuVHEH5tGP2H9Ip38Ka5k= Date: Sun, 7 May 2023 18:00:53 -0700 From: Andrew Morton To: David Hildenbrand Cc: Lorenzo Stoakes , linux-mm@kvack.org, linux-kernel@vger.kernel.org Subject: Re: [PATCH] mm/gup: add missing gup_must_unshare() check to gup_huge_pgd() Message-Id: <20230507180053.7d47cd3b58c73f3b6fc567e0@linux-foundation.org> In-Reply-To: <2dbc82e9-30dc-5187-cdd6-166fa53213c4@redhat.com> References: <20230507173022.96c9d24cb1aa6f57ed50f5fa@linux-foundation.org> <2dbc82e9-30dc-5187-cdd6-166fa53213c4@redhat.com> X-Mailer: Sylpheed 3.8.0beta1 (GTK+ 2.24.33; x86_64-pc-linux-gnu) Mime-Version: 1.0 Content-Type: text/plain; charset=US-ASCII Content-Transfer-Encoding: 7bit X-Rspam-User: X-Stat-Signature: juwiayby1pwk7nnbnjsia48wsjjek7b4 X-Rspamd-Server: rspam08 X-Rspamd-Queue-Id: 8A583160004 X-HE-Tag: 1683507656-202618 X-HE-Meta: U2FsdGVkX1/tyuFE/cNcRjYP46RWrKd62W44U/DmlIzajulQrZKJfkjLkzMZ3bnSTSQn7URwnK1f9GLrXZGDi8jc/VPthlOvXE422pAzD6YpXWjsuyPzH4grFaK5KQoBYJp6xaSleSsABHvtJbMwyC4PCkW1JfS5e9FoIrk9extucGblUgENWrwPNEl8fWrWBcr0W0G5Hsnn2VYIG6r8FMvtq0gS3D7c/z8eT9o6Teh5unRyKYFHpKuy5gmM2udw3HZHxi/xe46e4d2pxxJ4YfsPWjfXF5O+i0i26Ba9NJpxKtPwuVPe75fAx5AucGcpVqv7BLIFKapxdqWmLBWst6vCWehrWPfgh3H1tYlxfrArtagoOZS32qjDL3fKmwa+aQMzqdATFNh1SEjNoVkkOCwAurs0awtK+td/PSXb6kewdh7YHwCMleKb7SXrKHoPOPAZAfzyIl9fU3Tx8tgL1XWY6t71ItCBiTj74jjnKerahscrxqHwL+6sU8QUm38qi1arvQ1p0Weht0prqp5LR6WvWXVNaBp8/ZpYi3n8s1SczwpjbuzqxltnOIKkIip96K1gyWw50meyyZ+3gWTN1NlujWcNWDNIKXAZL8/WzNvqjKendjdgeTWJSMT3Rlof36HjSnB9fynpDVSXO2MjvOvnl6R75tL3n0UIFEmcQUXLNHXP7JslX0kZUYTwNmUD048esmy36Ad5R055gta5LSv/Y7ptEUyqMKLEhOyXmQ0q5Jnje7t4R8wU15+KW4/NgDOIkc7C64nzAhJiSxUKFjHvjJJpjrs7UllV5HN0ymJ/ghhM4HUE5xE+pprPC7dvMOPhhlokcove3SWgBJMZfmqU8p9lmNOugU7CgYz50G6Yt6MUqWkemzDf2AyPTqCoNatSNwm8v1iTb3iOSWvjZzNpSLm9g+P77nV393jwmNOVyY8YQRb61Di3DsJeObmQNa0mbTqo0+mb71uTwvx 0aWcD5Wz AZcp2L1snwuC43q+xkGIvF9zKBWWxD59wPW8ubBeQg3rWG8uv7EI7o0qzSxMCw88cNb2s+2gqXil5xTFb69KViEtCJKMBaAXMv0inYI8FOadoQIwSI2WffWUqVZk5N/HxZk/lMkHHwnqKJzSXGS7PUdoUXxaD0Sx3HENFjuyoz7ic5QmiBUl4ler12WYz72rrkopsI9itclViz6jLnaZj/eb6+eComta9DVjIRKVC3G15w2+A9dYfNVEuNIP96GcFjmtHwWHMuMMJagNXmpN2mzGdTTk4wFOHQNCCdz14q5hSUvQMdsoEHS8M2pBhVzeKHTt8z+dHZooA4Xisvu7Jogn3C9IGcjIrik3AqAVPuN31gNlTTDGEOthD6nYx7aqVaUAQKfhpeyLUf0PRi5ee5MPOuWCeFZzonZyTqPB7CBznOHw= 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, 8 May 2023 02:45:12 +0200 David Hildenbrand wrote: > On 08.05.23 02:30, Andrew Morton wrote: > > On Sat, 6 May 2023 15:05:25 +0100 Lorenzo Stoakes wrote: > > > >> All other instances of gup_huge_pXd() perform the unshare check, so update > >> the PGD-specific function to do so as well. > >> > >> While checking pgd_write() might seem unusual, this function already > >> performs such a check via pgd_access_permitted() so this is in line with > >> the existing implementation. > > > > Rationale seems strange. "Other sites do it so this should also". Why > > is this a desirable change? Maybe the "other instances" shouldn't be > > performing this check either? > > This change makes unshare handling across all GUP-fast variants consistent, > which is desirable as GUP-fast is complicated enough already even when > consistent :) Thanks, I added the below to the changelog: David said: : This change makes unshare handling across all GUP-fast variants : consistent, which is desirable as GUP-fast is complicated enough : already even when consistent. : : This function was the only one I seemed to have missed (or left out and : forgot why -- maybe because it's really dead code for now). The COW : selftest would identify the problem, so far there was no report. : Either the selftest wasn't run on corresponding architectures with that : hugetlb size, or that code is still dead code and unused by : architectures. : : the original commit(s) that added unsharing explain why we care about : these checks: : : a7f226604170acd6 ("mm/gup: trigger FAULT_FLAG_UNSHARE when R/O-pinning a possibly shared anonymous page") : 84209e87c6963f92 ("mm/gup: reliable R/O long-term pinning in COW mappings")