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 A733FC5AE59 for ; Fri, 30 May 2025 01:25:08 +0000 (UTC) Received: by kanga.kvack.org (Postfix) id 42A406B007B; Thu, 29 May 2025 21:25:08 -0400 (EDT) Received: by kanga.kvack.org (Postfix, from userid 40) id 3DCEC6B0082; Thu, 29 May 2025 21:25:08 -0400 (EDT) X-Delivered-To: int-list-linux-mm@kvack.org Received: by kanga.kvack.org (Postfix, from userid 63042) id 2F2036B0083; Thu, 29 May 2025 21:25:08 -0400 (EDT) X-Delivered-To: linux-mm@kvack.org Received: from relay.hostedemail.com (smtprelay0016.hostedemail.com [216.40.44.16]) by kanga.kvack.org (Postfix) with ESMTP id 16C186B007B for ; Thu, 29 May 2025 21:25:08 -0400 (EDT) Received: from smtpin08.hostedemail.com (a10.router.float.18 [10.200.18.1]) by unirelay03.hostedemail.com (Postfix) with ESMTP id AC928BFA3E for ; Fri, 30 May 2025 01:25:07 +0000 (UTC) X-FDA: 83497830654.08.31B8822 Received: from dggsgout12.his.huawei.com (dggsgout12.his.huawei.com [45.249.212.56]) by imf05.hostedemail.com (Postfix) with ESMTP id ED8FE100006 for ; Fri, 30 May 2025 01:25:02 +0000 (UTC) Authentication-Results: imf05.hostedemail.com; dkim=none; dmarc=none; spf=pass (imf05.hostedemail.com: domain of pulehui@huaweicloud.com designates 45.249.212.56 as permitted sender) smtp.mailfrom=pulehui@huaweicloud.com ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=hostedemail.com; s=arc-20220608; t=1748568306; 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=L+ci5jTNAT4RsHrS9Sehgl/Sj0CJxdGa83ZDej1M/Mg=; b=j7RiMKO3p38L6D3L5ea5jFSY0Z4YHSNyblNjd0CBPzn4q7X1PLqL0ZyQ6UzKdnZ+USpVqv y/daztlsI8UPANkJJGH+xIqX3mmaDsgvnznMeotsHbjAokxh5eDpisXyHlRmiUGoUVDTLH //viJCJdQTQxxaYWIiPhp04WeAqJcAw= ARC-Seal: i=1; s=arc-20220608; d=hostedemail.com; t=1748568306; a=rsa-sha256; cv=none; b=pt5UhmpGcy6EEl+Kgu1LTx37Ed3Wj7FQv+F+BKzIaVV482VOze0kc8pbIdZTI011ephhrd 0pRu0edUsQo6I1BgHfKodwJ0BwSTH8xc+xESLpBuUI4qfzJamTqEQL1jEZXonVe4Dj5jOn 3A6CCkZ40iqP2pHoQoe5JFk67NphLAE= ARC-Authentication-Results: i=1; imf05.hostedemail.com; dkim=none; dmarc=none; spf=pass (imf05.hostedemail.com: domain of pulehui@huaweicloud.com designates 45.249.212.56 as permitted sender) smtp.mailfrom=pulehui@huaweicloud.com Received: from mail.maildlp.com (unknown [172.19.163.216]) by dggsgout12.his.huawei.com (SkyGuard) with ESMTPS id 4b7lsP5sDBzKHN0S for ; Fri, 30 May 2025 09:24:57 +0800 (CST) Received: from mail02.huawei.com (unknown [10.116.40.252]) by mail.maildlp.com (Postfix) with ESMTP id 397B71A1BD7 for ; Fri, 30 May 2025 09:24:56 +0800 (CST) Received: from [10.67.109.184] (unknown [10.67.109.184]) by APP3 (Coremail) with SMTP id _Ch0CgAHpsDmCDlojyTiNg--.49967S2; Fri, 30 May 2025 09:24:56 +0800 (CST) Message-ID: <263929f5-bde6-48fb-a162-298a9f83bf5b@huaweicloud.com> Date: Fri, 30 May 2025 09:24:54 +0800 MIME-Version: 1.0 User-Agent: Mozilla Thunderbird Subject: Re: [PATCH v1 2/4] mm: Expose abnormal new_pte during move_ptes Content-Language: en-US To: Andrew Morton Cc: mhiramat@kernel.org, oleg@redhat.com, peterz@infradead.org, Liam.Howlett@oracle.com, lorenzo.stoakes@oracle.com, vbabka@suse.cz, jannh@google.com, pfalcato@suse.de, linux-mm@kvack.org, linux-kernel@vger.kernel.org, stable@vger.kernel.org, pulehui@huawei.com References: <20250529155650.4017699-1-pulehui@huaweicloud.com> <20250529155650.4017699-3-pulehui@huaweicloud.com> <20250529121944.3612511aa540b9711657e05a@linux-foundation.org> From: Pu Lehui In-Reply-To: <20250529121944.3612511aa540b9711657e05a@linux-foundation.org> Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 8bit X-CM-TRANSID:_Ch0CgAHpsDmCDlojyTiNg--.49967S2 X-Coremail-Antispam: 1UD129KBjvJXoW7Xw18Jw4rury8trWUZFW3Awb_yoW8Jryrpa y0ga45Wa1UtF17Gr97Zr1qqrZYyws7tFyUG3srZr4YkasYkrnagF9FkayFvFZ5CFWDK3y5 tFWUGr93Ga4DJaDanT9S1TB71UUUUU7qnTZGkaVYY2UrUUUUjbIjqfuFe4nvWSU5nxnvy2 9KBjDU0xBIdaVrnRJUUUv0b4IE77IF4wAFF20E14v26r4j6ryUM7CY07I20VC2zVCF04k2 6cxKx2IYs7xG6rWj6s0DM7CIcVAFz4kK6r1j6r18M28lY4IEw2IIxxk0rwA2F7IY1VAKz4 vEj48ve4kI8wA2z4x0Y4vE2Ix0cI8IcVAFwI0_Ar0_tr1l84ACjcxK6xIIjxv20xvEc7Cj xVAFwI0_Gr1j6F4UJwA2z4x0Y4vEx4A2jsIE14v26rxl6s0DM28EF7xvwVC2z280aVCY1x 0267AKxVW0oVCq3wAS0I0E0xvYzxvE52x082IY62kv0487Mc02F40EFcxC0VAKzVAqx4xG 6I80ewAv7VC0I7IYx2IY67AKxVWUJVWUGwAv7VC2z280aVAFwI0_Jr0_Gr1lOx8S6xCaFV Cjc4AY6r1j6r4UM4x0Y48IcVAKI48JM4IIrI8v6xkF7I0E8cxan2IY04v7MxkF7I0En4kS 14v26r1q6r43MxAIw28IcxkI7VAKI48JMxC20s026xCaFVCjc4AY6r1j6r4UMI8I3I0E5I 8CrVAFwI0_Jr0_Jr4lx2IqxVCjr7xvwVAFwI0_JrI_JrWlx4CE17CEb7AF67AKxVWUtVW8 ZwCIc40Y0x0EwIxGrwCI42IY6xIIjxv20xvE14v26r1j6r1xMIIF0xvE2Ix0cI8IcVCY1x 0267AKxVW8JVWxJwCI42IY6xAIw20EY4v20xvaj40_Jr0_JF4lIxAIcVC2z280aVAFwI0_ Jr0_Gr1lIxAIcVC2z280aVCY1x0267AKxVW8JVW8JrUvcSsGvfC2KfnxnUUI43ZEXa7IU1 7KsUUUUUU== X-CM-SenderInfo: psxovxtxl6x35dzhxuhorxvhhfrp/ X-Rspamd-Server: rspam10 X-Rspamd-Queue-Id: ED8FE100006 X-Stat-Signature: tdoxnyxnueuwu86176k59yuh4r8ymjs9 X-Rspam-User: X-HE-Tag: 1748568302-800456 X-HE-Meta: U2FsdGVkX19UtUQiH7tNYkDTI7NB6Y8OURxgZcG95O84UQv2xbVm43WccJ2kgoUkNDWYcyszB2IgOJ7ZxRN0h/sIAM6JwmtZkHvwk2C4wnB9I5mjO8LWub/1SZBsMWjf26Y9IPnt88TGhdXSCc9ocar0lfMiPULDwQtUMySp4PHwxPAwiMddJMrbkbyGvWvjCGmnejU7XCJhHCyukoIlu8o/+RCwgdXppJZXe4L+SxqwoylABz+jXh1l5eBz6+l0B8YDAzIhPqSKVcvPw3gx3zJWofzCM7dp/WTKrG+wY6mxaFv3n8bb+/ckuHnuZJDvDEZyvn3Hjk86CgpgcTRdashXAb61evPPutuAoARfs3qK4RPnHqXobq6FTHK5GTgQ2GQu/BwGH7KiY1Wkf3V9D2JuZ+4WX3tImsgDPX1Y2GjDwmmchuE5WnUpH2cRL19jAf9jHIwGQcNKVcb5Ni83EekYko7BRMbJ19Heq3+Ev5aHN/zaIFgz+AoDUcIaAZWO1xWEFyuOApiGyxanOW2SAakJ9x4RpCzPw6cAe0rEl36pLByIhXtgN8TM4O5Yf0gP5jbMVNp/DBOwc7G0Ux1BNy4Qs8rGDZ3O0wQ87fvr+ozElcVmWO/XXlftPKrUatLF06c/2+JJmRv+uaKuyr7SwctttagExkVrnl2dDWItRbGMOhgHxUupknMMCx/grpj9lwxJn+V2zlBxt54BFjYrGgNBw1S99vgi3HAxKfSAp9PDeHiKsfVQtKvLfwT3D85gdAHT3fpxxzpAay6ihBKXosKX7j6WePa8ADRFm2Qj4cC+1cbWxn5d80fCaVG4GyesxCqRgF2b7Hu341c/d59yaZzsVOPl8D5GtImas88WNOhNbYo06BL7cddE94z7TvSFFuDl19DpCKs6Z/dJOSBP5Cb2hzsT0ufz 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 2025/5/30 3:19, Andrew Morton wrote: > On Thu, 29 May 2025 15:56:48 +0000 Pu Lehui wrote: > >> From: Pu Lehui >> >> When executing move_ptes, the new_pte must be NULL, otherwise it will be >> overwritten by the old_pte, and cause the abnormal new_pte to be leaked. >> In order to make this problem to be more explicit, let's add >> WARN_ON_ONCE when new_pte is not NULL. >> >> ... >> >> --- a/mm/mremap.c >> +++ b/mm/mremap.c >> @@ -237,6 +237,8 @@ static int move_ptes(struct pagetable_move_control *pmc, >> >> for (; old_addr < old_end; old_pte++, old_addr += PAGE_SIZE, >> new_pte++, new_addr += PAGE_SIZE) { >> + WARN_ON_ONCE(!pte_none(*new_pte)); >> + >> if (pte_none(ptep_get(old_pte))) >> continue; >> > > We now have no expectation that this will trigger, yes? It's a sanity Hi Andrew, This can sanitize abnormal new_pte. It is expected that uprobe would not come in later, but others, uncertainšŸ¤”? So it will be a good alert. And after patch 1 it will not trigger WARNING. > check that patch [1/4] is working? Perhaps VM_WARN_ON_ONCE() would be Agree, should I respin one more? > more appropriate. And maybe even a comment: > > /* temporary, remove this one day */ >