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 9CDA8C83029 for ; Mon, 30 Jun 2025 14:42:22 +0000 (UTC) Received: by kanga.kvack.org (Postfix) id 22FC16B00D7; Mon, 30 Jun 2025 10:42:22 -0400 (EDT) Received: by kanga.kvack.org (Postfix, from userid 40) id 2078D6B00D8; Mon, 30 Jun 2025 10:42:22 -0400 (EDT) X-Delivered-To: int-list-linux-mm@kvack.org Received: by kanga.kvack.org (Postfix, from userid 63042) id 0CF856B00D9; Mon, 30 Jun 2025 10:42:21 -0400 (EDT) X-Delivered-To: linux-mm@kvack.org Received: from relay.hostedemail.com (smtprelay0012.hostedemail.com [216.40.44.12]) by kanga.kvack.org (Postfix) with ESMTP id E50CA6B00D7 for ; Mon, 30 Jun 2025 10:42:21 -0400 (EDT) Received: from smtpin27.hostedemail.com (a10.router.float.18 [10.200.18.1]) by unirelay09.hostedemail.com (Postfix) with ESMTP id B602C80563 for ; Mon, 30 Jun 2025 14:42:21 +0000 (UTC) X-FDA: 83612332482.27.82F60FA Received: from smtp-out2.suse.de (smtp-out2.suse.de [195.135.223.131]) by imf19.hostedemail.com (Postfix) with ESMTP id 92F661A0005 for ; Mon, 30 Jun 2025 14:42:19 +0000 (UTC) Authentication-Results: imf19.hostedemail.com; dkim=pass header.d=suse.de header.s=susede2_rsa header.b=ZMJScKrT; dkim=pass header.d=suse.de header.s=susede2_ed25519 header.b=QtkyIMBV; dkim=pass header.d=suse.de header.s=susede2_rsa header.b=ZMJScKrT; dkim=pass header.d=suse.de header.s=susede2_ed25519 header.b=QtkyIMBV; dmarc=pass (policy=none) header.from=suse.de; spf=pass (imf19.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=1751294539; a=rsa-sha256; cv=none; b=1S4D7liYu+inBgNITAT+wW4ACFfnZFpKCq1CihGh5zqGfX7gS9o0GZjYdoDuiodSz7hb5Y b4c3OLBMykxzIE3mmTbkHjsOLflIyvxbVoswqHY6i1ONhNbO9iQaI6VaAWH/BDvtjmcXaH TxbO9Jm80mHMXUx/cJ0Bzl556tay9QQ= ARC-Authentication-Results: i=1; imf19.hostedemail.com; dkim=pass header.d=suse.de header.s=susede2_rsa header.b=ZMJScKrT; dkim=pass header.d=suse.de header.s=susede2_ed25519 header.b=QtkyIMBV; dkim=pass header.d=suse.de header.s=susede2_rsa header.b=ZMJScKrT; dkim=pass header.d=suse.de header.s=susede2_ed25519 header.b=QtkyIMBV; dmarc=pass (policy=none) header.from=suse.de; spf=pass (imf19.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=1751294539; 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=gsLGeQz2/SShAFkpABjfAB43POxq1/nuiPdGozgEwRs=; b=yDz0DTJ/tjSU6L6DyU1zxTVy9MJrp/IN76f3MO/l99npgJsOX5yMPHZ2DXpwBnft5DK8QE CnVuTMY5DjSsSVPWPUsYc5d0u6/VOG22VIUOQWHss7+1rQ++O/g/u9ik/06O/lkAiR7nQN T9Kznk0S8SGGdjrPAvtRuY/jpVyKhJU= Received: from imap1.dmz-prg2.suse.org (imap1.dmz-prg2.suse.org [IPv6:2a07:de40:b281:104: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 3486A1F397; 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=gsLGeQz2/SShAFkpABjfAB43POxq1/nuiPdGozgEwRs=; b=ZMJScKrT8yorsK3Vj9zd64X+typK2lYc7GQW8OLO7nYZhPyW2/wD2wi9tGeCXVdarZ2o1u PIVIcuoF9nQwXOJgkeevzLaCcrmP9+Nr3cvtxn31ws2l5r15NDkeDkozpggFTWzJUyOl7a yZNYpaDQNEHQvHBkZVhB4UvQiUT/XFg= 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=gsLGeQz2/SShAFkpABjfAB43POxq1/nuiPdGozgEwRs=; b=QtkyIMBVLmCC4OsJ6FIpnFovcR/ThV82z9Wsq+vnqW5os+8C2p5B7/WDbKKVGlBW94ZPCi zYlnneRRBv5lDIBg== 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=gsLGeQz2/SShAFkpABjfAB43POxq1/nuiPdGozgEwRs=; b=ZMJScKrT8yorsK3Vj9zd64X+typK2lYc7GQW8OLO7nYZhPyW2/wD2wi9tGeCXVdarZ2o1u PIVIcuoF9nQwXOJgkeevzLaCcrmP9+Nr3cvtxn31ws2l5r15NDkeDkozpggFTWzJUyOl7a yZNYpaDQNEHQvHBkZVhB4UvQiUT/XFg= 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=gsLGeQz2/SShAFkpABjfAB43POxq1/nuiPdGozgEwRs=; b=QtkyIMBVLmCC4OsJ6FIpnFovcR/ThV82z9Wsq+vnqW5os+8C2p5B7/WDbKKVGlBW94ZPCi zYlnneRRBv5lDIBg== 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 AFDCD13A24; Mon, 30 Jun 2025 14:42:17 +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 4M0uKEmiYmjqdAAAD6G6ig (envelope-from ); Mon, 30 Jun 2025 14:42:17 +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 3/5] mm,hugetlb: rename anon_rmap to new_anon_folio and make it boolean Date: Mon, 30 Jun 2025 16:42:10 +0200 Message-ID: <20250630144212.156938-4-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-Rspamd-Action: no action X-Stat-Signature: aptdskuu9ni6pnzwn8bei36z4fspo7r1 X-Rspamd-Server: rspam01 X-Rspamd-Queue-Id: 92F661A0005 X-Rspam-User: X-HE-Tag: 1751294539-881878 X-HE-Meta: U2FsdGVkX1928/SqV8Sr0Wr/iUshF1JMcATL0hgBaK7Jk1JEMsd2t927tVmYrxaDf9YHWAMohbeCckkakJjQ+quJx0PEw927lffOBRjSzshUF96gHclrOwS9Jz+Wwbi9iGPbkEvkFlOdryvg6GUcYa2uVCsM0xZfK9pCjW0y0UE3yJvSDoNrnWw/6uarIC/aqgKe0oJ8RG1I4ALfVAV2rtPshkUBird7+DUU8Beg5PbXZB7rLg95A8u1o1kXesDt1x23LQd0ys5d+FdyssuH/zeiTgaiRCdkyIUQt+C5umpR34j0bOYKOsktV+sj3Sp9z7qTRRCzj2k1wQQ0SVTC7cLnEWynO4/ls8JaMznVKNBk0O1kO8un1ERmxfwLt/drxhrDj2WkcetnunEops36v7+ISAAYVgMrIx/Cggy3hkCAJ858rB6JbR7KyoxyDWFqEUFARh9GU80ClbD1bAEyzuiSKtVm7EPE8foBgAdotlLjcjtaMp5SYB5/ng3qBqgW+V9o0AekvmD5qGEAjy4WUzEf+fzkGvE42DfPGqc9drpa5t+o8im3BHHlxyk3hb8fWTgqrVXY9w4IY0m1civ3qUDU9NOeq+WcujoJDlrmL26P72z5Tv4etUJQx4hpgRqoNdMcFKqoWrDx8eG/4amHSt9Tp1hVOhjzqrBbWshU3AnQh2Dzwq+T4hO9rLb6DvPE/NM4w1qzZFpz0PEI4jPaF5fJ8EHoaCIv87htomY812HRGQKaNGjh+8bNOxlln+zneey6KDJMvqqZqGyNkYWgurk0x4Bp6G1tFCXcaTS+nI5+eSj94oqPhsrBmXHIzCUYnE3vaAmu3qrm1UBMy9PPsKPZglfLEHSHMwlWY0cpUVJK9ws0Pvk6oFfPCDPvGQfaNmdu1w7T7FWDHvx0cg2HYoarg9VH4M/vTIoy4EiaX7WjcpsEBEj1GPxiYRliPVl+aaAB0vkaljhPnyQSQmy vOKx8fRb JcmTVIvIBYUqAtEsF0sWwlXgBzrAevw4/xz7UoXVUlez6+mqx0v5fS5wLRLTvQS8cnvtyBSuM+jwwn5Dy0pE39IkdyRWn9mqXym83BqapMHRMpqbh6zdkg/CPFVuTSuHfMaT4uz/luWgar6oNZQoZTZoxMMHwCDZzx3xc+XYCnqZrVsZoZuin+e8uetDJODaXrEy32iXLtTPvH34nZTw5azxv+gg+5IlBsT/8m3VATiosY/N+KKsZGz2W7LuenXZbSdCyuAflvvjdjuuwM8/aSMGWajF15M52fZlsw/7HzsKFNYIQvTOqi8dHXX+JS/QqL+2uloANLjytTqVOg0KJEgWCS7tvUysR5Vji/FMgQshyEIAARBzIAYuP8yGEVusRNu/dfkklpOasjaWz+slr8rj7QQBm4W58QlPDH/g5Pb8rUXwzRSnAh0jGJsKeEnP1LMtXCXWbr7ImVJ02T8173pLR5Os3dYNh0pV6QtUUdJwbnZ66fELFXNpv+g== 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: anon_rmap is used to determine whether the new allocated folio is anonymous. Rename it to something more meaningul like new_anon_folio and make it boolean, as we use it like that. While we are at it, drop 'new_pagecache_folio' as 'new_anon_folio' is enough to check whether we need to restore the consumed reservation. Link: https://lkml.kernel.org/r/20250627102904.107202-4-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 | 19 +++++++++---------- 1 file changed, 9 insertions(+), 10 deletions(-) diff --git a/mm/hugetlb.c b/mm/hugetlb.c index 31d39e2a0879..67f3c9c16348 100644 --- a/mm/hugetlb.c +++ b/mm/hugetlb.c @@ -6424,17 +6424,16 @@ static bool hugetlb_pte_stable(struct hstate *h, struct mm_struct *mm, unsigned static vm_fault_t hugetlb_no_page(struct address_space *mapping, struct vm_fault *vmf) { + u32 hash = hugetlb_fault_mutex_hash(mapping, vmf->pgoff); + bool new_folio, new_anon_folio = false; struct vm_area_struct *vma = vmf->vma; struct mm_struct *mm = vma->vm_mm; struct hstate *h = hstate_vma(vma); vm_fault_t ret = VM_FAULT_SIGBUS; - int anon_rmap = 0; - unsigned long size; + bool folio_locked = true; struct folio *folio; + unsigned long size; pte_t new_pte; - bool new_folio, new_pagecache_folio = false; - u32 hash = hugetlb_fault_mutex_hash(mapping, vmf->pgoff); - bool folio_locked = true; /* * Currently, we are forced to kill the process in the event the @@ -6533,10 +6532,9 @@ static vm_fault_t hugetlb_no_page(struct address_space *mapping, ret = VM_FAULT_SIGBUS; goto out; } - new_pagecache_folio = true; } else { + new_anon_folio = true; folio_lock(folio); - anon_rmap = 1; } } else { /* @@ -6585,7 +6583,7 @@ static vm_fault_t hugetlb_no_page(struct address_space *mapping, if (!pte_same(huge_ptep_get(mm, vmf->address, vmf->pte), vmf->orig_pte)) goto backout; - if (anon_rmap) + if (new_anon_folio) hugetlb_add_new_anon_rmap(folio, vma, vmf->address); else hugetlb_add_file_rmap(folio); @@ -6604,7 +6602,7 @@ static vm_fault_t hugetlb_no_page(struct address_space *mapping, * No need to keep file folios locked. See comment in * hugetlb_fault(). */ - if (!anon_rmap) { + if (!new_anon_folio) { folio_locked = false; folio_unlock(folio); } @@ -6640,7 +6638,8 @@ static vm_fault_t hugetlb_no_page(struct address_space *mapping, backout: spin_unlock(vmf->ptl); backout_unlocked: - if (new_folio && !new_pagecache_folio) + /* We only need to restore reservations for private mappings */ + if (new_anon_folio) restore_reserve_on_error(h, vma, vmf->address, folio); folio_unlock(folio); -- 2.50.0