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 99DF7C25B75 for ; Mon, 3 Jun 2024 06:25:04 +0000 (UTC) Received: by kanga.kvack.org (Postfix) id 328BF6B00A1; Mon, 3 Jun 2024 02:25:04 -0400 (EDT) Received: by kanga.kvack.org (Postfix, from userid 40) id 2D6EE6B00A3; Mon, 3 Jun 2024 02:25:04 -0400 (EDT) X-Delivered-To: int-list-linux-mm@kvack.org Received: by kanga.kvack.org (Postfix, from userid 63042) id 19FEC6B00A4; Mon, 3 Jun 2024 02:25:04 -0400 (EDT) X-Delivered-To: linux-mm@kvack.org Received: from relay.hostedemail.com (smtprelay0013.hostedemail.com [216.40.44.13]) by kanga.kvack.org (Postfix) with ESMTP id EFD6D6B00A1 for ; Mon, 3 Jun 2024 02:25:03 -0400 (EDT) Received: from smtpin26.hostedemail.com (a10.router.float.18 [10.200.18.1]) by unirelay02.hostedemail.com (Postfix) with ESMTP id 676E71208DE for ; Mon, 3 Jun 2024 06:25:03 +0000 (UTC) X-FDA: 82188589686.26.E30D856 Received: from sin.source.kernel.org (sin.source.kernel.org [145.40.73.55]) by imf09.hostedemail.com (Postfix) with ESMTP id 634C1140003 for ; Mon, 3 Jun 2024 06:25:01 +0000 (UTC) Authentication-Results: imf09.hostedemail.com; dkim=pass header.d=kernel.org header.s=k20201202 header.b="d/pq7Rkq"; dmarc=pass (policy=none) header.from=kernel.org; spf=pass (imf09.hostedemail.com: domain of rppt@kernel.org designates 145.40.73.55 as permitted sender) smtp.mailfrom=rppt@kernel.org ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=hostedemail.com; s=arc-20220608; t=1717395901; 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=0z5WipSJrXt7CxNdoOxbHlBgbcpvgNKj4cMj6ky0jCM=; b=sWIXWAwqdKb2d0HWvVMzjTjz5ia9wrGCAG7se8pkVC6S1WPI9XQt6A+oSdTwEKw+0OMH9f LQlPUQSCddcT/agE2nnikBMfIeCfjeXvvzGYHwah8paLt2BNpggEX0mJgeEWv/cmwj49fx WuZD9Hn0t0qiIMdk0HUgsIaXyGLTDzo= ARC-Seal: i=1; s=arc-20220608; d=hostedemail.com; t=1717395901; a=rsa-sha256; cv=none; b=BnX0mNh/GTB8Pc+9Oq6BDbI+1rYg/6TtZVSaJ7mOsX1VIlI0IkHDkaLw4BiwGzWvHj9SvL dsb3TLgNIUR4+g1gqWwwn7t+hrkvILwAJm3eACH3sru71SE2+KRUZHVSYsqD7L5zlamRYD IMBdXJwKtNV0wOYP5Sqz+tAMrRrRgQs= ARC-Authentication-Results: i=1; imf09.hostedemail.com; dkim=pass header.d=kernel.org header.s=k20201202 header.b="d/pq7Rkq"; dmarc=pass (policy=none) header.from=kernel.org; spf=pass (imf09.hostedemail.com: domain of rppt@kernel.org designates 145.40.73.55 as permitted sender) smtp.mailfrom=rppt@kernel.org Received: from smtp.kernel.org (transwarp.subspace.kernel.org [100.75.92.58]) by sin.source.kernel.org (Postfix) with ESMTP id 83F63CE0A2A; Mon, 3 Jun 2024 06:24:58 +0000 (UTC) Received: by smtp.kernel.org (Postfix) with ESMTPSA id 75DB5C2BD10; Mon, 3 Jun 2024 06:24:56 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=k20201202; t=1717395897; bh=/cFhxPCML3EPA6BPI7DpSpChm7sheGHDfDodLLVYGsU=; h=Date:From:To:Cc:Subject:References:In-Reply-To:From; b=d/pq7RkqbEFZ164GzLDgqW30113xf0vadrO/88WiIe9uADvMOxB0P7gmJv3xDO/6s s5Is/fBl7enAlwLNFxQDzp+ktevdaksadzPM0HyPEH47Gupvmuh0GfOxRpb8vcTyoX 83kg2qv4DEiq7zBBDyo0ieBJIaWy6l4cwDYdTEzRJ+d0EuyI/uZrNyEiqRuiKPZThh YopPF7J7MIKzWCH3TdibLWo3Y0W8Lr4CXxFkwCsLb82xOxQ2/fGBYW3bRSYFcWzOX3 H5gppIhmQyfIheIXg24eAxBOJ3oDidX8Rwax2ZOeYbQLMuZm801ylPtmh+HeNmiQvi o8VEzOtbeFBCQ== Date: Mon, 3 Jun 2024 09:23:03 +0300 From: Mike Rapoport To: Wei Yang Cc: akpm@linux-foundation.org, linux-mm@kvack.org Subject: Re: [PATCH 2/3] mm/mm_init.c: use deferred_init_mem_pfn_range_in_zone() to decide loop condition Message-ID: References: <20240531002613.5231-1-richard.weiyang@gmail.com> <20240531002613.5231-2-richard.weiyang@gmail.com> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <20240531002613.5231-2-richard.weiyang@gmail.com> X-Stat-Signature: zrxayysy3tq416as41wtr9wawfwhfaft X-Rspamd-Queue-Id: 634C1140003 X-Rspam-User: X-Rspamd-Server: rspam01 X-HE-Tag: 1717395901-261849 X-HE-Meta: U2FsdGVkX19LCW5HXPSfkCcm5nc2pK7lzxVy0vqp4EoGRuocuFFWrvQRO3X6RjdGaGDv7bKOFiodtuxSqjHEMK4ib5m1Fh2KSCHyjNbhjQ2ezJ8MfYse2CVAfwvEl5GwWjgfFUcb2bTO7Do375JNe/ExSFj3j+46vomrwP/QAIJsHGYxVSGI2nTcsz8rABKGsV8NKI+OjZ3+Mq2yl2BnmAaRDxQSe9XqIltBeElHxdyf55NQfrDbD7n92e03ehGJxhGizCfXnn8h1KkRTynillRs5bOs/j1fKozc/iYZRLC2PauW9iHR3VzBYoGJJcguR7mOBogJwNrBy28jwKQz2pwp9psUF1iMgG9BV+L0oJEFLUwWq1jGn2gMJ02QDipW62K0HxjdiSQ/RQR3oyhS9rlmh8cPS4l/biUu70n2XYENt3jBmwsuW/qBY2+D7T/AvfBrNLqMFZCJujsjiKYfz7NePinSIBAbK8T4tTlzX8Wxy2/r/c590yqG2pOzOv43fQzGM1UdK18J5Mwhy6/geEJzCnO4LsOLxIa0Mfz+m4aHtwqlZMtEPL2IXSTAp+2R5mo4sAQNLMwRYFixYbkfjblM8DZ74NgVj43tTIU1qhV3V1gHFXPCNSM7OvHnUfTsjaPEqMVvblcpQ393k5PFT/CeLLd20wKseNBJ1xFwrUpJcnN4LIyHSeK541c6MTe4GN1AjO3X4rd0rOlw3kHSB3Gy3RoZ3ocAEieG3BMNFk7H/6sHjDpsZxab1Y4YQrcUl4dgMS+ZkRrFYkq7keyVdks2vbZCPLnJyKtNoiGcnBXebkd2//s66Sh8lcuoP3PjjuAy/9wlwgxsCIFxwpy/Qse/xmK4owsXgAzeCAA6xd4bZe9qynLA0iU7HihfDDy9cTheI4cxSywW4HHlxo4Ry2+CV/FD5q4b97JeUXGoXClPcsy3qs7Mn5MjOORhP+QznwuMMdc3T5FddSq/ALd nYPEBvri 1ojzEJx6GJtJM6WJsihfJRNTxfpTxCwKymh0fFBxkNzK0klrxWoPTxkbDgtXs2EtylSEczdZ3HM6Y49GQRHxsS151I8J3jZmIuIoEzghOMdKNGqG6OtnG8O9I6NOqGwklpQ+Kfb560zKP7GH+YLPMpBMnECCfDOFeg1GeyxeMA2292i+ZwkKOQkSuOVNA7JOJ5PEybddKLF0P/p9sGe89sJJ4wzhfQF2IB29365TzdD2PmK2y4n64LgiI1ou8UZw7RF1qbvH8ajXvVPi4MLVBo4QyHwCOWporHeq5cl4Sy347rj/yMUxJS1YBtDPukNboZf53WZfIvZHaUlToqwKDtyU7cnE4lT2VW4oj 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 Fri, May 31, 2024 at 12:26:12AM +0000, Wei Yang wrote: > If deferred_init_mem_pfn_range_in_zone() return true, we know it finds > some range in (spfn, epfn). Then we can use it directly for the loop > condition. > > Signed-off-by: Wei Yang Reviewed-by: Mike Rapoport (IBM) > --- > mm/mm_init.c | 15 ++++----------- > 1 file changed, 4 insertions(+), 11 deletions(-) > > diff --git a/mm/mm_init.c b/mm/mm_init.c > index 2bcf87eab0c6..d05a4c38310f 100644 > --- a/mm/mm_init.c > +++ b/mm/mm_init.c > @@ -2166,20 +2166,15 @@ static int __init deferred_init_memmap(void *data) > /* Only the highest zone is deferred */ > zone = pgdat->node_zones + pgdat->nr_zones - 1; > > - /* If the zone is empty somebody else may have cleared out the zone */ > - if (!deferred_init_mem_pfn_range_in_zone(&i, zone, &spfn, &epfn, > - first_init_pfn)) > - goto zone_empty; > - > max_threads = deferred_page_init_max_threads(cpumask); > > - while (spfn < epfn) { > - unsigned long epfn_align = ALIGN(epfn, PAGES_PER_SECTION); > + while (deferred_init_mem_pfn_range_in_zone(&i, zone, &spfn, &epfn, first_init_pfn)) { > + first_init_pfn = ALIGN(epfn, PAGES_PER_SECTION); > struct padata_mt_job job = { > .thread_fn = deferred_init_memmap_chunk, > .fn_arg = zone, > .start = spfn, > - .size = epfn_align - spfn, > + .size = first_init_pfn - spfn, > .align = PAGES_PER_SECTION, > .min_chunk = PAGES_PER_SECTION, > .max_threads = max_threads, > @@ -2187,10 +2182,8 @@ static int __init deferred_init_memmap(void *data) > }; > > padata_do_multithreaded(&job); > - deferred_init_mem_pfn_range_in_zone(&i, zone, &spfn, &epfn, > - epfn_align); > } > -zone_empty: > + > /* Sanity check that the next zone really is unpopulated */ > WARN_ON(pgdat->nr_zones < MAX_NR_ZONES && populated_zone(++zone)); > > -- > 2.34.1 > -- Sincerely yours, Mike.