From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from mail-ej1-f44.google.com (mail-ej1-f44.google.com [209.85.218.44]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id 693C43C1978 for ; Thu, 25 Jun 2026 09:58:49 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=209.85.218.44 ARC-Seal:i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1782381530; cv=none; b=nLzih0UdxiOhU8yKMP02w987gg3id4p1agCo7nlXYRNP1vf1tiZigeVz19Uu8VP86z5ICionhZHdEKWPXCslL0b5teO6OAg7rxCOx6NPZhEjcOztQlBJnlXAycWMWgYrx68FDul2IUk0R0ACCrG+kf5PNwAErUH4RIgMdPIyGsM= ARC-Message-Signature:i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1782381530; c=relaxed/simple; bh=56E+FebNvMKxidMmbFtTsTIg23gI/NFgi7vyIqoBN1k=; h=Date:From:To:Cc:Subject:Message-ID:References:MIME-Version: Content-Type:Content-Disposition:In-Reply-To; b=s18P5S/8QlugYzICtCzbGXQhBjBOEfBedq9Ig1zGqMI6EMa77sLCPy85l0REWbozPuSlkQTJsjDTwo9D2FAjwbZ9lqE7bHnWnX7UWni6EL3QwZntJr9daLADj3nL7YAxfGRT1vWZxNY+VuIi1fFbvQ32LcWcL0XUAQ7yPVlwIb4= ARC-Authentication-Results:i=1; smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=gmail.com; spf=pass smtp.mailfrom=gmail.com; dkim=pass (2048-bit key) header.d=gmail.com header.i=@gmail.com header.b=pg1vye7Y; arc=none smtp.client-ip=209.85.218.44 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=gmail.com Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=gmail.com Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=gmail.com header.i=@gmail.com header.b="pg1vye7Y" Received: by mail-ej1-f44.google.com with SMTP id a640c23a62f3a-c0c41ff84a6so442011766b.1 for ; Thu, 25 Jun 2026 02:58:49 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20251104; t=1782381528; x=1782986328; darn=vger.kernel.org; h=user-agent:in-reply-to:content-disposition:mime-version:references :reply-to:message-id:subject:cc:to:from:date:from:to:cc:subject:date :message-id:reply-to; bh=B+mgaYB1zk7FVDo1slH3uPPqS1c5uJ+o/ELPZE4pSZw=; b=pg1vye7YgvzSlLFKBUUegAHCUt386dmq47Q6Acczy/MyBzBFL2d0KoR6PbBMmOrVg6 C8zXt7mHQTOoKRWaSMXE1Sn2ujWZjPwiL+IGl647DCWW6jHvq3CjFr3YraNapyJ5pnjT QVijm6kwnvb6zlxlxa/tgITwFdeSlzBmHd7SQPYS0h2gXvbKo9qf8rAXUawSdkd9Ajwh gii7Mz4XUEEC8F5b0S+Jflz+RXVO98mUvmSWetg4LMgtNDbOlEOhJqlQX6D4bUf/dMnO DFDUorvTBD8NwwkZznxah2FOh7hCcJjgoxcB7K19vlcx9wDtw7RxERr9qq4H3xH14Qrq cVPg== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20251104; t=1782381528; x=1782986328; h=user-agent:in-reply-to:content-disposition:mime-version:references :reply-to:message-id:subject:cc:to:from:date:x-gm-gg :x-gm-message-state:from:to:cc:subject:date:message-id:reply-to; bh=B+mgaYB1zk7FVDo1slH3uPPqS1c5uJ+o/ELPZE4pSZw=; b=g0rOtgRNICOYOAIBzGp9fYGgbaEpxM8BQlIu2kQG8ATIDQ4liMNdTcnUyPwKvPp+cF TQdYk5YrbPnTshO0PtkflOUVmVFuqXjDNGKCL/cIVQLkp2N8huZgkHxfBGCXhP81lt4p 1EXpzKmbOOKts1nJkjK+FvDwoQymiYONG99yFsy9lB9exHFUA1jTRidz5q5fP8J6VZcA J7VK14ecOwoxahi7PLpa+vbyMfS6gDwdfz6Uvk1rduXaIy2KIsUcHCgqMYrAtZHc0s0c YofZWuYpL+5aTvUWnEhbuu0JFSJu4B2iHRNQC/dHbPXbfWAgherKuZ1squ8trnnptVNo vnTQ== X-Forwarded-Encrypted: i=1; AHgh+Rp4qDpIv2qnmZkKprM+40BA9YItS0KH3RmAY/reFp1crAzJEd1e91vE+L3ZZQ1ihs9fE786bww7UmliIJo=@vger.kernel.org X-Gm-Message-State: AOJu0Yx1qwY2+RWTjOR7Ib5I5P8hAOaSg0lsBiRrmhiolSocPVVxK9Mr RpKBIv2usNZ4M4FpTfunFYS+Uegkk4S+eiJTsFB4IyfYM/G7htHZJ6rw X-Gm-Gg: AfdE7cnSMuwWF83FrFDrIw49EIL8MbBlmVDvoNBNKXei50BAD5uQHv3nGQziM58j7g3 mdhDt/wj8ctFr4gX+G4oqUP5twz5aC34HPdYBzUVvzgIeGFJmIJATCzxrKkLiAga3BvCoR3SWpQ g/Xzil7eCgNZmpn6vJe7QR1RwIce0m4XP5SFnACbGEjPNYMhn9QFFR4AvjwA84WKhPLzhRh2MhC D0b3V+pVfuGWl4wYd+Pc/yX6A1+855UkxrF71CfYT8kAtu0tzUfSOiZfo1+Bn+eH3ESCQBRhRpc wn7dtJbImfS+udAKok4r0rkHwsLao+MX+zK7MEIKevPPc5DgVQd/9ls0UGug+g78HuVN8LXuqve UQkx+a48NbIvHhGF1kN8KBLtMFoZ8fOAm8UF+Df7LLuk+2UZDYmyeFl1fOeEanD+uUuYarvJfeL ddAl+z1SYIp1g= X-Received: by 2002:a17:907:c084:b0:bfe:fa65:771b with SMTP id a640c23a62f3a-c1205eb808dmr113755466b.26.1782381527769; Thu, 25 Jun 2026 02:58:47 -0700 (PDT) Received: from localhost ([185.92.221.13]) by smtp.gmail.com with ESMTPSA id a640c23a62f3a-c11fbc27e76sm149199566b.27.2026.06.25.02.58.47 (version=TLS1_2 cipher=ECDHE-ECDSA-CHACHA20-POLY1305 bits=256/256); Thu, 25 Jun 2026 02:58:47 -0700 (PDT) Date: Thu, 25 Jun 2026 09:58:47 +0000 From: Wei Yang To: Mike Rapoport Cc: linux-mm@kvack.org, Andrew Morton , David Hildenbrand , Taku Izumi , Wei Yang , Yuan Liu , linux-kernel@vger.kernel.org Subject: Re: [PATCH 2/2] mm/mm_init: drop overlap_memmap_init() Message-ID: <20260625095846.4e2tl3fbduc24erg@master> Reply-To: Wei Yang References: <20260625073941.145014-1-rppt@kernel.org> <20260625073941.145014-3-rppt@kernel.org> Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <20260625073941.145014-3-rppt@kernel.org> User-Agent: NeoMutt/20170113 (1.7.2) On Thu, Jun 25, 2026 at 10:39:40AM +0300, Mike Rapoport wrote: >From: "Mike Rapoport (Microsoft)" > >When ZONE_NORMAL and ZONE_MOVABLE could overlap because kernelcore=mirror >didn't reduce the span of ZONE_NORMAL, initialization of the memory map had >to skip overlapping pages during initialization of ZONE_MOVABLE to avoid >double initialization of the same struct pages. > >Since kernelcore=mirror works now the same way as other variants of >kernelcore=/movablecore=, and adjusts the span of ZONE_NORMAL, there can't >be an overlap between ZONE_NORMAL and ZONE_MOVABLE. > >Remove overlap_memmap_init(). > Hi, Mike Do you think this is valuable to mention the double init for the overlapped range? >Co-developed-by: Wei Yang >Signed-off-by: Wei Yang >Signed-off-by: Mike Rapoport (Microsoft) >--- > mm/mm_init.c | 24 ------------------------ > 1 file changed, 24 deletions(-) > >diff --git a/mm/mm_init.c b/mm/mm_init.c >index dce9dc9f2302..6f0a71ccca30 100644 >--- a/mm/mm_init.c >+++ b/mm/mm_init.c >@@ -783,28 +783,6 @@ void __meminit init_deferred_page(unsigned long pfn, int nid) > __init_deferred_page(pfn, nid); > } > >-/* If zone is ZONE_MOVABLE but memory is mirrored, it is an overlapped init */ >-static bool __meminit >-overlap_memmap_init(unsigned long zone, unsigned long *pfn) >-{ >- static struct memblock_region *r __meminitdata; >- >- if (mirrored_kernelcore && zone == ZONE_MOVABLE) { >- if (!r || *pfn >= memblock_region_memory_end_pfn(r)) { >- for_each_mem_region(r) { >- if (*pfn < memblock_region_memory_end_pfn(r)) >- break; >- } >- } >- if (*pfn >= memblock_region_memory_base_pfn(r) && >- memblock_is_mirror(r)) { >- *pfn = memblock_region_memory_end_pfn(r); >- return true; >- } >- } >- return false; >-} >- > /* > * Only struct pages that correspond to ranges defined by memblock.memory > * are zeroed and initialized by going through __init_single_page() during >@@ -891,8 +869,6 @@ void __meminit memmap_init_range(unsigned long size, int nid, unsigned long zone > * function. They do not exist on hotplugged memory. > */ > if (context == MEMINIT_EARLY) { >- if (overlap_memmap_init(zone, &pfn)) >- continue; > if (defer_init(nid, pfn, zone_end_pfn)) { > deferred_struct_pages = true; > break; >-- >2.53.0 -- Wei Yang Help you, Help me