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 2B1D8C282DE for ; Thu, 13 Mar 2025 18:29:01 +0000 (UTC) Received: by kanga.kvack.org (Postfix) id D5112280007; Thu, 13 Mar 2025 14:28:58 -0400 (EDT) Received: by kanga.kvack.org (Postfix, from userid 40) id CD97A280001; Thu, 13 Mar 2025 14:28:58 -0400 (EDT) X-Delivered-To: int-list-linux-mm@kvack.org Received: by kanga.kvack.org (Postfix, from userid 63042) id B7C03280007; Thu, 13 Mar 2025 14:28:58 -0400 (EDT) X-Delivered-To: linux-mm@kvack.org Received: from relay.hostedemail.com (smtprelay0017.hostedemail.com [216.40.44.17]) by kanga.kvack.org (Postfix) with ESMTP id 99198280001 for ; Thu, 13 Mar 2025 14:28:58 -0400 (EDT) Received: from smtpin13.hostedemail.com (a10.router.float.18 [10.200.18.1]) by unirelay05.hostedemail.com (Postfix) with ESMTP id 0DEC753410 for ; Thu, 13 Mar 2025 18:29:00 +0000 (UTC) X-FDA: 83217364440.13.010EE99 Received: from foss.arm.com (foss.arm.com [217.140.110.172]) by imf25.hostedemail.com (Postfix) with ESMTP id 35A1FA0017 for ; Thu, 13 Mar 2025 18:28:58 +0000 (UTC) Authentication-Results: imf25.hostedemail.com; dkim=none; dmarc=pass (policy=none) header.from=arm.com; spf=pass (imf25.hostedemail.com: domain of dev.jain@arm.com designates 217.140.110.172 as permitted sender) smtp.mailfrom=dev.jain@arm.com ARC-Seal: i=1; s=arc-20220608; d=hostedemail.com; t=1741890538; a=rsa-sha256; cv=none; b=LQiVUjfOFGFxJV86qss3lbQ96rIhstX59owvPbi9b1sNb+pIGlgXoWsrvsaI2YImvcjEoj VT0UWRxDkBNZUYJ7PlaXOnBgJRIBvF1J/NxuwmL11vI3gyzKbE9JA9tfNwUBdoFR2o81Bx 2pjeKLC5/SzRfms/lnXiRZm8CCp/7aU= ARC-Authentication-Results: i=1; imf25.hostedemail.com; dkim=none; dmarc=pass (policy=none) header.from=arm.com; spf=pass (imf25.hostedemail.com: domain of dev.jain@arm.com designates 217.140.110.172 as permitted sender) smtp.mailfrom=dev.jain@arm.com ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=hostedemail.com; s=arc-20220608; t=1741890538; 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; bh=hwmORLe6uxYGg1jwDj7th7vogtT2UVLIStkp1600EUg=; b=ngbmqSfoc0bgmgMo5ZBJMXyvbYZroEhckuSgthVvviPCIUEsNtpfLP0cfJ7vi0hvx6JiFv GN0OMSg9kNo+Z0Bcf31vZkxc4rzNdt5PR5D7ulhF43yJjOy0a6131+8nzru/HuLzHeMezi WuucDGeazvacV2xI+7CX5LcF704KF9s= Received: from usa-sjc-imap-foss1.foss.arm.com (unknown [10.121.207.14]) by usa-sjc-mx-foss1.foss.arm.com (Postfix) with ESMTP id 99AB01477; Thu, 13 Mar 2025 11:29:07 -0700 (PDT) Received: from [10.163.42.238] (unknown [10.163.42.238]) by usa-sjc-imap-foss1.foss.arm.com (Postfix) with ESMTPSA id 2F3953F694; Thu, 13 Mar 2025 11:28:52 -0700 (PDT) Message-ID: <495ec80f-6cf1-4be8-bc2a-9115562fe60d@arm.com> Date: Thu, 13 Mar 2025 23:58:48 +0530 MIME-Version: 1.0 User-Agent: Mozilla Thunderbird Subject: Re: [PATCH] mm: Update mask post pxd_clear_bad() To: jroedel@suse.de, akpm@linux-foundation.org Cc: ryan.roberts@arm.com, david@redhat.com, willy@infradead.org, hch@lst.de, linux-mm@kvack.org, linux-kernel@vger.kernel.org, stable@vger.kernel.org References: <20250313181414.78512-1-dev.jain@arm.com> Content-Language: en-US From: Dev Jain In-Reply-To: <20250313181414.78512-1-dev.jain@arm.com> Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 7bit X-Stat-Signature: 775dn8nwnm3qjjw8149o6nusfbsxi1s8 X-Rspamd-Server: rspam12 X-Rspamd-Queue-Id: 35A1FA0017 X-Rspam-User: X-HE-Tag: 1741890538-417766 X-HE-Meta: U2FsdGVkX19tuG5UaQ/Hxye/wL4klBpcp4NAUVTaxtknRP7SXA1PcTgh8nk0aKQgZjljLEicuBLla7JU+HI4VICWybdWKv+fAUi/ohYA83naDK4lmDAg9IHJf2gimH5oRfvowle55Q0yYulenHlgHouNSjuKmHE3QEKWAXAZxXNtQlekhmzZjJrPvSTNgzH1xAW179FcKLlZMoG3lkE+Bj63Yye2M72LntkFqYEnviY40ybnDC/W+g7wpaHIX6mPmfLqBqSr1PbQMtgTxkt49X+UC2r2UepL/HpqMv4oZdKcO8mcQIfG8ZE+vNU6uPNLtAzMuEG5T/8zPguBr0tZPQnC5nBMCAWMx74JGw9lEfXs/kO89kT4d4sUUHdZkwCJwVUxni5WiyxyV4VoUoN7c5UwVLlzUcxs2p1B43x3EmY0iBNfqSljtO1+ugyrrz75UJkdu2VSF9v5vEWiJWd3Y70Hh0Eos3UyWTvEZyYqbpN4WJwg2OGlzDMAHUZZnBVwuuX4s5W9DkdlD4AQU3zkVRtUi7f/achsNCuz7+Y++wYCVB0qAGGLsPlILJ8DaOfccfWUiFG53+VL0FmMNygZB/fgDSZUdsC8Mkl0bsqf+KMYFzp0JxyeWgO+IYvn4uyPag4PIIrKWSq0n+6CWLThQT4reylstmqiKaD0UKdPCiL92DPtNtL+kSug6qCgk2h8nENPWSrqhUEJYmQt9NWKSbq5xZYzYkGeJDMlPPB/1uJwygDgJHdh9hbTgUsLWk2CJQ/DDpWLTXbmx6sNxVzKIsqIONR3vbdowHxc7XdX0sI9elDZ2Tj71xKnDeMpymsdnGQIy/SOCcHHCzqvHIEElvocX+kfra42Y3RlxgpSpHPXZ09U+BvGgwrxiunm31tT7+LN3MkBA6bBJXpyHBNvWjRk5RwKHMncckc0fZ7YGz1Vm45oA6e7t+Ys8IMylRrK1UUY0S7VYeoWwAP3bgc GDEZ+ztM TfiK6iapHAF3cHkN8bFbXce4VyZwvMDQIXomsBzReJdUwLmAUZu9aLolG3ydXSGeJwFiyIPi1xqZJTXw//XbHCcnHVY6/oFcWmXh7Mhf+DIfSwyXew6Eo1HXkKfHqwlQljAA0SXJBbnKcVg37EEQxgMrToWLV/9f9GJxAC4YqfeH3KHWkwiPgaaOCqaqnBhFZu5JTF6qhrVIIuzUYtokniRJf9tb1za79F4DrpRrDc2YaWmyZpzwSUtgWsLSLgJAjpUAvx7GtaG+wyo8= 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: On 13/03/25 11:44 pm, Dev Jain wrote: > Since pxd_clear_bad() is an operation changing the state of the page tables, > we should call arch_sync_kernel_mappings() post this. > > Fixes: e80d3909be42 ("mm: track page table modifications in __apply_to_page_range()") > Cc: > Signed-off-by: Dev Jain > --- > mm/memory.c | 4 ++++ > 1 file changed, 4 insertions(+) > > diff --git a/mm/memory.c b/mm/memory.c > index 78c7ee62795e..9a4a8c710be0 100644 > --- a/mm/memory.c > +++ b/mm/memory.c > @@ -2987,6 +2987,7 @@ static int apply_to_pmd_range(struct mm_struct *mm, pud_t *pud, > if (!create) > continue; > pmd_clear_bad(pmd); > + *mask = PGTBL_PMD_MODIFIED; Oh well, I guess these should have been *mask |= PGTBL_PMD_MODIFIED. > } > err = apply_to_pte_range(mm, pmd, addr, next, > fn, data, create, mask); > @@ -3023,6 +3024,7 @@ static int apply_to_pud_range(struct mm_struct *mm, p4d_t *p4d, > if (!create) > continue; > pud_clear_bad(pud); > + *mask = PGTBL_PUD_MODIFIED; > } > err = apply_to_pmd_range(mm, pud, addr, next, > fn, data, create, mask); > @@ -3059,6 +3061,7 @@ static int apply_to_p4d_range(struct mm_struct *mm, pgd_t *pgd, > if (!create) > continue; > p4d_clear_bad(p4d); > + *mask = PGTBL_P4D_MODIFIED; > } > err = apply_to_pud_range(mm, p4d, addr, next, > fn, data, create, mask); > @@ -3095,6 +3098,7 @@ static int __apply_to_page_range(struct mm_struct *mm, unsigned long addr, > if (!create) > continue; > pgd_clear_bad(pgd); > + mask = PGTBL_PGD_MODIFIED; > } > err = apply_to_p4d_range(mm, pgd, addr, next, > fn, data, create, &mask);