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 945F0C369D3 for ; Wed, 23 Apr 2025 09:36:21 +0000 (UTC) Received: by kanga.kvack.org (Postfix) id 3ABED6B00A5; Wed, 23 Apr 2025 05:36:19 -0400 (EDT) Received: by kanga.kvack.org (Postfix, from userid 40) id 331726B00A7; Wed, 23 Apr 2025 05:36:19 -0400 (EDT) X-Delivered-To: int-list-linux-mm@kvack.org Received: by kanga.kvack.org (Postfix, from userid 63042) id 1D16E6B00A6; Wed, 23 Apr 2025 05:36:19 -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 ED6866B0083 for ; Wed, 23 Apr 2025 05:36:18 -0400 (EDT) Received: from smtpin25.hostedemail.com (a10.router.float.18 [10.200.18.1]) by unirelay01.hostedemail.com (Postfix) with ESMTP id 654F61D0783 for ; Wed, 23 Apr 2025 09:36:20 +0000 (UTC) X-FDA: 83364802920.25.C13884E Received: from pku.edu.cn (mx18.pku.edu.cn [162.105.129.181]) by imf15.hostedemail.com (Postfix) with ESMTP id DDBABA0006 for ; Wed, 23 Apr 2025 09:36:16 +0000 (UTC) Authentication-Results: imf15.hostedemail.com; dkim=pass header.d=pku.edu.cn header.s=dkim header.b=R6v5uWdF; dmarc=pass (policy=none) header.from=pku.edu.cn; spf=pass (imf15.hostedemail.com: domain of lrh2000@pku.edu.cn designates 162.105.129.181 as permitted sender) smtp.mailfrom=lrh2000@pku.edu.cn ARC-Seal: i=1; s=arc-20220608; d=hostedemail.com; t=1745400978; a=rsa-sha256; cv=none; b=1wC9jroJ5pYC6GpEdW29RDaU+vFLqzrAQnReZTEP1Ixlt059mus4aIL4+iIYgnKXYoYQJo mgafsytdkb2Q1HBDPiL14IPvuQkLH1c6SVP5Bwpt0TmoF3YAWFCElbtbZXqqneQtpOqm9a mNjZoNhGs7kDUeR3DhiEbqO30D3i5c0= ARC-Authentication-Results: i=1; imf15.hostedemail.com; dkim=pass header.d=pku.edu.cn header.s=dkim header.b=R6v5uWdF; dmarc=pass (policy=none) header.from=pku.edu.cn; spf=pass (imf15.hostedemail.com: domain of lrh2000@pku.edu.cn designates 162.105.129.181 as permitted sender) smtp.mailfrom=lrh2000@pku.edu.cn ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=hostedemail.com; s=arc-20220608; t=1745400978; 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: in-reply-to:in-reply-to:references:references:dkim-signature; bh=sWIxzkYySooPZyA3CWFH2ZhlRFHEL2R7O9gzuhQ4Mr8=; b=cMNM+qDVT6e3wpc9h/JCqO6PhXIuRs0FPNdDfzLJXVtr/7vF0I//53c5xFbnHsWqtCcQaR eJmoKHlTQ781sip3w8pJlKCal2zVCM4c92oxDDYENybQXVGZuEAFw5qq9tjnji67dpH64V uXZcf/yqJKmIJiQSvw3lXHve4MBA3Xw= Received: from pku.edu.cn (unknown [10.7.63.12]) by mtasvr (Coremail) with SMTP id _____7Dw+MyAtAhoV+RkAA--.6301S3; Wed, 23 Apr 2025 17:36:01 +0800 (CST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=pku.edu.cn; s=dkim; h=Received:Date:From:To:Cc:Subject: Message-ID:References:MIME-Version:Content-Type: Content-Disposition:In-Reply-To; bh=sWIxzkYySooPZyA3CWFH2ZhlRFHE L2R7O9gzuhQ4Mr8=; b=R6v5uWdFLnycZ2Hf2rjtf13GADCiUyaKMWCk8hSTyXRt KqZdJCzCQoOHkhBHE/PmWlNWYbaY723xxw4aTOj8/W4BIJIN54wiARiHyHV2J0ZY WCXE73xb28BmzgvmZD49896z9puzaTkDYYPEJjxQhXJ1mij11J5pop232E9M3as= Received: from localhost (unknown [10.7.63.12]) by front01 (Coremail) with SMTP id 5oFpogBHHsh2tAhokn2BAA--.54773S2; Wed, 23 Apr 2025 17:35:58 +0800 (CST) Date: Wed, 23 Apr 2025 17:35:49 +0800 From: Ruihan Li To: David Woodhouse Cc: Mike Rapoport , Andrew Morton , "Sauerwein, David" , Anshuman Khandual , Ard Biesheuvel , Catalin Marinas , David Hildenbrand , Marc Zyngier , Mark Rutland , Mike Rapoport , Will Deacon , kvmarm@lists.cs.columbia.edu, linux-arm-kernel@lists.infradead.org, linux-kernel@vger.kernel.org, linux-mm@kvack.org Subject: Re: [PATCH v3 7/7] mm/mm_init: Use for_each_valid_pfn() in init_unavailable_range() Message-ID: References: <20250423081828.608422-1-dwmw2@infradead.org> <20250423081828.608422-8-dwmw2@infradead.org> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <20250423081828.608422-8-dwmw2@infradead.org> X-CM-TRANSID:5oFpogBHHsh2tAhokn2BAA--.54773S2 X-CM-SenderInfo: yssqiiarrvmko6sn3hxhgxhubq/1tbiAgEIBWf35XUDOwAssa X-CM-DELIVERINFO: =?B?69lGqaaAH6dYjNjDbLdWX9VB7ttaQFyXTaecYZzOeDisy/krtsX5TsLkpeAzENeCPc 0+BDdXjm5Mlm64oODP/CxX7CdEvht9JHZwC6hFgN7SfXBn/8Fy5FcUojCT9CoM+EEp/rxb J1TmFLOdWa1Zk7IYwibDsajPQlM5qU+Ubz9/W9nmylWX+/i+jTphvck2O7OCbg== X-Coremail-Antispam: 1Uk129KBjDUn29KB7ZKAUJUUUUU529EdanIXcx71UUUUU7KY7 ZEXasCq-sGcSsGvfJ3UbIjqfuFe4nvWSU5nxnvy29KBjDU0xBIdaVrnUUvcSsGvfC2Kfnx nUUI43ZEXa7xR_UUUUUUUUU== X-Rspamd-Server: rspam10 X-Rspamd-Queue-Id: DDBABA0006 X-Stat-Signature: mccw5hjdaozy1y6ixdn63boi69jjren4 X-Rspam-User: X-HE-Tag: 1745400976-514667 X-HE-Meta: U2FsdGVkX1/Y7bvMyQwPxonwaulIQCYxdXuIspKZ1+KG/yRN2E6+igJeCKwCkuboTpWaLiHJ+g0vMgM7RWbgzZvoW+4MFM1T49zNMlQ9mDk/XOFoeIE/zXZTynxjgQvwUTypOqKCmunW9gj9i+2xQsmU0xK4iuHogPgcaExqtQiwogqc1Yg6pMh4NU0iNVUkRBF7n4ICpCkAwuZlw6uzSQ/gQ0dwHkw4rTjk3F8nQmujQgQIzNm2kpNQf0AcH3sthDGrh1P3VSxQ4SZllOHrbhP+ITPvkdTL+kqIJX508L0hzLrPMFvQA5Dz5kjGAlF3PGsyZ3dILa0nVOrlyCg5k0aW9/jJAHVMzxFsId0FkivwwewrQ+dnbwgHqo3BSTpinNPodGerBRevy9SaY+gyhCV+OSFeZfY3bxP6GBee5psrPJRqgM1+HXKrOcU91ZVj2j6h4OQ5jAvb3ipdmbRs7IBetgtRjzzKT+HS3d9PVNWQLkUyoCqgSy7a5lK3czoimVZb64ReVOmNzv7D0+nETCEAvaPISnkJq2ZmsKpS6rA0bMyngbLMAuCpmQqqhmJP4U7Y0eq67S3p1K0qe/y3qEPlBco25t6O0T3wki2nnf/BRGcEKtdhmza4/rW1CxqP6AJglx46w+FCDVMDU37E2XV+DU6kyAgkK+innsCU5gV6XqZFYN+A8Y11KvEg0H4jyUdcJd07PP3Pkv+fEsAi0n0gyRJmftP6w+pvlL6YIhFVMt/xgzkWNgGsbp/ujVRIBVOvjkqQ1OuW9RpbXiwzPsczBRSgbGWMteJhkDD+VCiuRnOVa6Dp0JIhd824tkgXigHS376dFhOrHwZlpqIkn9Z5Lsbw3N+CN6LUYypz9CpRNtGP1iiLwZ3AnR7VZlybuHjDfAxglnKHVVVbx27cF34Bjlr0LRXuaWZVkEYkmNLJDDoR6SotYv+AU50n2Hzn6Z1ipRhAK+FhIfQXuD8 9+vanPLG uniJ3Qcozdn/eLXNv5xRXRobOAslOej6KWhTX2WPfwxM0gUbQ67sH96xn+J7DGuLJJMSQWbHB3lmV/GRW/Db68cMVrvMWH8oOUi52dvS37nSOgSaTJJnB5V7OSqKZ/I5J8/awbl2iOFLsBErvGRmUsOIC2WPLMvt1VU7WCOgGQKCin/Pw5C9vG47WLcLrnGgQNdp6xKn6gtYpwvYTfcJnFpo2pK5yrhKKKLZ7XweJh0N4oe7K3nYiQzo0rKOmA2E8W4WFAoloV1RtPlqfS04u4rKHH71+2MUsr8mIXEv9nkCa8ynvrzLy2t8aAGR4gUG8TsulquxNDb7ryryTXZthfA8zABMcZTIohLyAadzWU6F/yQ8ufvLWTSxHFw== 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: Hi David, On Wed, Apr 23, 2025 at 08:52:49AM +0100, David Woodhouse wrote: > From: David Woodhouse > > Currently, memmap_init initializes pfn_hole with 0 instead of > ARCH_PFN_OFFSET. Then init_unavailable_range will start iterating each > page from the page at address zero to the first available page, but it > won't do anything for pages below ARCH_PFN_OFFSET because pfn_valid > won't pass. > > If ARCH_PFN_OFFSET is very large (e.g., something like 2^64-2GiB if the > kernel is used as a library and loaded at a very high address), the > pointless iteration for pages below ARCH_PFN_OFFSET will take a very > long time, and the kernel will look stuck at boot time. > > Use for_each_valid_pfn() to skip the pointless iterations. > > Reported-by: Ruihan Li > Suggested-by: Mike Rapoport > Signed-off-by: David Woodhouse > --- Thanks! I have confirmed that this worked in my scenario and fixed the problem I reported earlier. Tested-by: Ruihan Li > mm/mm_init.c | 6 +----- > 1 file changed, 1 insertion(+), 5 deletions(-) > > diff --git a/mm/mm_init.c b/mm/mm_init.c > index 41884f2155c4..0d1a4546825c 100644 > --- a/mm/mm_init.c > +++ b/mm/mm_init.c > @@ -845,11 +845,7 @@ static void __init init_unavailable_range(unsigned long spfn, > unsigned long pfn; > u64 pgcnt = 0; > > - for (pfn = spfn; pfn < epfn; pfn++) { > - if (!pfn_valid(pageblock_start_pfn(pfn))) { > - pfn = pageblock_end_pfn(pfn) - 1; > - continue; > - } > + for_each_valid_pfn(pfn, spfn, epfn) { > __init_single_page(pfn_to_page(pfn), pfn, zone, node); > __SetPageReserved(pfn_to_page(pfn)); > pgcnt++; > -- > 2.49.0 Thanks, Ruihan Li