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 3F895C83029 for ; Mon, 30 Jun 2025 14:42:30 +0000 (UTC) Received: by kanga.kvack.org (Postfix) id 00D3B6B009E; Mon, 30 Jun 2025 10:42:28 -0400 (EDT) Received: by kanga.kvack.org (Postfix, from userid 40) id EFF516B00C3; Mon, 30 Jun 2025 10:42:27 -0400 (EDT) X-Delivered-To: int-list-linux-mm@kvack.org Received: by kanga.kvack.org (Postfix, from userid 63042) id CB6728D0001; Mon, 30 Jun 2025 10:42:27 -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 BA78E6B00C3 for ; Mon, 30 Jun 2025 10:42:27 -0400 (EDT) Received: from smtpin05.hostedemail.com (a10.router.float.18 [10.200.18.1]) by unirelay10.hostedemail.com (Postfix) with ESMTP id 79C44C05C4 for ; Mon, 30 Jun 2025 14:42:27 +0000 (UTC) X-FDA: 83612332734.05.6BBDCA4 Received: from smtp-out2.suse.de (smtp-out2.suse.de [195.135.223.131]) by imf26.hostedemail.com (Postfix) with ESMTP id 4C7F2140012 for ; Mon, 30 Jun 2025 14:42:25 +0000 (UTC) Authentication-Results: imf26.hostedemail.com; dkim=pass header.d=suse.de header.s=susede2_rsa header.b=fNw2Cazx; dkim=pass header.d=suse.de header.s=susede2_ed25519 header.b=rdJ1dDrX; dkim=pass header.d=suse.de header.s=susede2_rsa header.b=fNw2Cazx; dkim=pass header.d=suse.de header.s=susede2_ed25519 header.b=rdJ1dDrX; dmarc=pass (policy=none) header.from=suse.de; spf=pass (imf26.hostedemail.com: domain of osalvador@suse.de designates 195.135.223.131 as permitted sender) smtp.mailfrom=osalvador@suse.de ARC-Seal: i=1; s=arc-20220608; d=hostedemail.com; t=1751294545; a=rsa-sha256; cv=none; b=AVuv4NSa1WtHxYNgvl3eYrHOyRJH/uhZkx8c7DzfWEJOicCju/tTh2w2tfOjGGN3tUw5+a 7EFs+6Ltl8hDMdB5jzB7/hhqG7/tIQGYK7n8N20qV7Pfs0/i1m4qyK3Eg+62JUbKkdtIUS jvQzUV/Qk6arrYGDD+a4bHs1QxKJ6IQ= ARC-Authentication-Results: i=1; imf26.hostedemail.com; dkim=pass header.d=suse.de header.s=susede2_rsa header.b=fNw2Cazx; dkim=pass header.d=suse.de header.s=susede2_ed25519 header.b=rdJ1dDrX; dkim=pass header.d=suse.de header.s=susede2_rsa header.b=fNw2Cazx; dkim=pass header.d=suse.de header.s=susede2_ed25519 header.b=rdJ1dDrX; dmarc=pass (policy=none) header.from=suse.de; spf=pass (imf26.hostedemail.com: domain of osalvador@suse.de designates 195.135.223.131 as permitted sender) smtp.mailfrom=osalvador@suse.de ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=hostedemail.com; s=arc-20220608; t=1751294545; 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-transfer-encoding:content-transfer-encoding: in-reply-to:in-reply-to:references:references:dkim-signature; bh=lswS/npHHg2FpDwDpRgpwsvZxZdHN4e8MQowvC+BDOQ=; b=IY0gSXiSx0OddY3jrNxaBu1KGPYDt+y7wZWEsG/rkNf0H81xJ4yJp33CzxsCAOCqcv9RH8 CSHrLZ57/KNY5VttPm+eXTAwr3mOxsJmmV8JU3V7C2p/X0D88ThCGzLbRTIMQ4AFdDH+XQ zVe2enCME2UGPnBv/EGqP5fubqX6Iyc= Received: from imap1.dmz-prg2.suse.org (unknown [10.150.64.97]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (No client certificate requested) by smtp-out2.suse.de (Postfix) with ESMTPS id BC94A1F393; Mon, 30 Jun 2025 14:42:18 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.de; s=susede2_rsa; t=1751294538; h=from:from:reply-to:date:date:message-id:message-id:to:to:cc:cc: mime-version:mime-version: content-transfer-encoding:content-transfer-encoding: in-reply-to:in-reply-to:references:references; bh=lswS/npHHg2FpDwDpRgpwsvZxZdHN4e8MQowvC+BDOQ=; b=fNw2CazxDou2e5Lf3A6ZpxG208/WtbJYxDUzNf/EmvLIOgHbGYNuPbMbFnGGoXzcc8KbqJ TCcwNkI1krvkJ0Y9wBqNCvhAEPZ57ed397g9O8o5IzrU5jPxFEgYuQ8Wirhicq+8ZOvGM6 waztCYLASagVbGBicUFfrf6loAKUWOw= DKIM-Signature: v=1; a=ed25519-sha256; c=relaxed/relaxed; d=suse.de; s=susede2_ed25519; t=1751294538; h=from:from:reply-to:date:date:message-id:message-id:to:to:cc:cc: mime-version:mime-version: content-transfer-encoding:content-transfer-encoding: in-reply-to:in-reply-to:references:references; bh=lswS/npHHg2FpDwDpRgpwsvZxZdHN4e8MQowvC+BDOQ=; b=rdJ1dDrXteqCeY+23etpuh5UTIjzLFA3F0g9luhVSs3raT3CwR8xP9Ucfx5ctWcSh9UPhg n6GhkTkAZBXbbLAA== DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.de; s=susede2_rsa; t=1751294538; h=from:from:reply-to:date:date:message-id:message-id:to:to:cc:cc: mime-version:mime-version: content-transfer-encoding:content-transfer-encoding: in-reply-to:in-reply-to:references:references; bh=lswS/npHHg2FpDwDpRgpwsvZxZdHN4e8MQowvC+BDOQ=; b=fNw2CazxDou2e5Lf3A6ZpxG208/WtbJYxDUzNf/EmvLIOgHbGYNuPbMbFnGGoXzcc8KbqJ TCcwNkI1krvkJ0Y9wBqNCvhAEPZ57ed397g9O8o5IzrU5jPxFEgYuQ8Wirhicq+8ZOvGM6 waztCYLASagVbGBicUFfrf6loAKUWOw= DKIM-Signature: v=1; a=ed25519-sha256; c=relaxed/relaxed; d=suse.de; s=susede2_ed25519; t=1751294538; h=from:from:reply-to:date:date:message-id:message-id:to:to:cc:cc: mime-version:mime-version: content-transfer-encoding:content-transfer-encoding: in-reply-to:in-reply-to:references:references; bh=lswS/npHHg2FpDwDpRgpwsvZxZdHN4e8MQowvC+BDOQ=; b=rdJ1dDrXteqCeY+23etpuh5UTIjzLFA3F0g9luhVSs3raT3CwR8xP9Ucfx5ctWcSh9UPhg n6GhkTkAZBXbbLAA== Received: from imap1.dmz-prg2.suse.org (localhost [127.0.0.1]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (No client certificate requested) by imap1.dmz-prg2.suse.org (Postfix) with ESMTPS id 46BB11399F; Mon, 30 Jun 2025 14:42:18 +0000 (UTC) Received: from dovecot-director2.suse.de ([2a07:de40:b281:106:10:150:64:167]) by imap1.dmz-prg2.suse.org with ESMTPSA id 2LmWDkqiYmjqdAAAD6G6ig (envelope-from ); Mon, 30 Jun 2025 14:42:18 +0000 From: Oscar Salvador To: Andrew Morton Cc: David Hildenbrand , Muchun Song , Peter Xu , Gavin Guo , linux-mm@kvack.org, linux-kernel@vger.kernel.org, Oscar Salvador Subject: [PATCH v4 4/5] mm,hugetlb: drop obsolete comment about non-present pte and second faults Date: Mon, 30 Jun 2025 16:42:11 +0200 Message-ID: <20250630144212.156938-5-osalvador@suse.de> X-Mailer: git-send-email 2.49.0 In-Reply-To: <20250630144212.156938-1-osalvador@suse.de> References: <20250630144212.156938-1-osalvador@suse.de> MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-Stat-Signature: pco78ukb4gkdqqcdibemdxrbs6csra8y X-Rspamd-Server: rspam01 X-Rspamd-Queue-Id: 4C7F2140012 X-Rspam-User: X-HE-Tag: 1751294545-37347 X-HE-Meta: U2FsdGVkX18vhuDqmhskoTMFlrytlrmprWMqmAJwl8BbhxCPy7o4lXmpdncCPLbebZbl4eMYprirVogSdh5HehyeUKPNN9yKSJtqy74Bk6IlFWeIIyy5vyuz19GrZuz8tgzu/cTCb/jnz8hMNaRQRMkr5qipZj3qDEE/sVZPERuCivMD+wquxcHHXBvFjJztgLfXDMGHPkyuDDV5zuS/dztp2f0Sd731xjsexC98/kNamffLBj4HI4RctlbH3KD75KBWqwzHLQModNOckr2m25rV7M4NIdZoMvlNqyBbkdA+tvLNA3MByc+2FW6ZkwdIefmS0QVjRxyxioWIPlxq2G0mbGbpYqnoJ9vdVPY3tQkLbORmHZ6DuoMzWk9p8k+qya4JrN5amh4/ZLW+vuPKK9c5tV/SffyCzo6r04kWfP2QOW9Q1ugjY2f8w8d9KktwVX+PPXJ6OWdzuQw4Obeiqf63wABmyBS9PoPy7LhXttuVTXPcAwg7qWH1ip82mgsS2ipxS8FxFW2Fp3q8tlsJJ+OueJrDue38+GB4+VE6rkNkqetm7FtCkUx5O3U+f96J2g2Ja5DpzkPtDZU8osCqzOH/VU9WSnBNATLKKuj+uxhPhNKGo5+F03OrnG42H6nz/9kFZwekiYOIOi2crWnxLAkiz9114oijTKXrpTMNUVipAPMQ+XISnMhoY3012HiSS7H7au3BCGULqZStDipdYBEiq1u9IJEpMS/bkB6x1aJsRgWKRJg0hTvFF+drSd8qo0RwD5rrkoO4z0vsTfJJk8kCxZpm5tZKWeQ5/qnW593g3mw7sPkTdS7AODIxhl2VPpHE0CVi1G9Vq60FR08fzbF0cxvbw0z6wyM19AI3gIcy6e0ZwOqD3JhRgjlpVDUtRJRfQaL8MJOuqenSOouJOErERiMQqyS2SnRhlXiqz9qvLK0FJgNNNncuftMBMB4rIu8W9qycfc+HvFMiCSD ESApRfLU NUSPTehaD2rl9RLDviz8WT8f3AhPUiY8lCjBbCp5iExhRsvwDGoRJcHkFNaQHAg6f8Pct139wh6ylLy4VITdr+VtYdaw/lRLG2DtqHpORdbFEf6Li7i9/nslJaSe24t+2ztvNCzzc9rGwDRsYY3khfpOpXdqS8kt8iVoRiwLDlQHMqoEkIuhptZJaYtDX5T1Bavwm57/7XstkPgkNLrcrVPAikq7+IrZZBl5Gm5AAbQj+jxuYsFh/wHsd4DIa86w/oQphZ0das8gbTKgFkk0cDp2v8OoLDWBywuJjAoCGq/5YW1VIkIXdrXZRDVYrEBCUgKnoiO815wnzxNJGyf1aOowqI5c92jIHpPnUTlTdLxI08oXJrc27ScP9w/wFmW/I7Xw944zqnm4/UnMPKEVit0kcQtM5OAOvhypv9Qh1aM8oecoTLyM7lwXCLnF2z/hetXEiZ0T5O8JQ7LU= 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: There is a comment in hugetlb_fault() that does not hold anymore. This one: /* * vmf.orig_pte could be a migration/hwpoison vmf.orig_pte at this * point, so this check prevents the kernel from going below assuming * that we have an active hugepage in pagecache. This goto expects * the 2nd page fault, and is_hugetlb_entry_(migration|hwpoisoned) * check will properly handle it. */ This was written because back in the day we used to do: hugetlb_fault () { ptep = huge_pte_offset(...) if (ptep) { entry = huge_ptep_get(ptep) if (unlikely(is_hugetlb_entry_migration(entry)) ... else if (unlikely(is_hugetlb_entry_hwpoisoned(entry))) ... } ... ... /* * entry could be a migration/hwpoison entry at this point, so this * check prevents the kernel from going below assuming that we have * a active hugepage in pagecache. This goto expects the 2nd page fault, * and is_hugetlb_entry_(migration|hwpoisoned) check will properly * handle it. */ if (!pte_present(entry)) goto out_mutex; ... } The code was designed to check for hwpoisoned/migration entries upfront, and then bail out if further down the pte was not present anymore, relying on the second fault to properly handle migration/hwpoison entries that time around. The way we handle this is different nowadays, so drop the misleading comment. Link: https://lkml.kernel.org/r/20250627102904.107202-5-osalvador@suse.de Signed-off-by: Oscar Salvador Cc: David Hildenbrand Cc: Gavin Guo Cc: Muchun Song Cc: Peter Xu Signed-off-by: Andrew Morton --- mm/hugetlb.c | 8 +------- 1 file changed, 1 insertion(+), 7 deletions(-) diff --git a/mm/hugetlb.c b/mm/hugetlb.c index 67f3c9c16348..ba078aa1cb96 100644 --- a/mm/hugetlb.c +++ b/mm/hugetlb.c @@ -6745,13 +6745,7 @@ vm_fault_t hugetlb_fault(struct mm_struct *mm, struct vm_area_struct *vma, ret = 0; - /* - * vmf.orig_pte could be a migration/hwpoison vmf.orig_pte at this - * point, so this check prevents the kernel from going below assuming - * that we have an active hugepage in pagecache. This goto expects - * the 2nd page fault, and is_hugetlb_entry_(migration|hwpoisoned) - * check will properly handle it. - */ + /* Not present, either a migration or a hwpoisoned entry */ if (!pte_present(vmf.orig_pte)) { if (unlikely(is_hugetlb_entry_migration(vmf.orig_pte))) { /* -- 2.50.0