From patchwork Mon Mar 25 14:56:41 2024 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Baoquan He X-Patchwork-Id: 13602376 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 EBFC4C54E58 for ; Mon, 25 Mar 2024 14:57:27 +0000 (UTC) Received: by kanga.kvack.org (Postfix) id 7D6276B00A3; Mon, 25 Mar 2024 10:57:27 -0400 (EDT) Received: by kanga.kvack.org (Postfix, from userid 40) id 786D66B00A4; Mon, 25 Mar 2024 10:57:27 -0400 (EDT) X-Delivered-To: int-list-linux-mm@kvack.org Received: by kanga.kvack.org (Postfix, from userid 63042) id 675A86B00A5; Mon, 25 Mar 2024 10:57:27 -0400 (EDT) X-Delivered-To: linux-mm@kvack.org Received: from relay.hostedemail.com (smtprelay0014.hostedemail.com [216.40.44.14]) by kanga.kvack.org (Postfix) with ESMTP id 570206B00A3 for ; Mon, 25 Mar 2024 10:57:27 -0400 (EDT) Received: from smtpin21.hostedemail.com (a10.router.float.18 [10.200.18.1]) by unirelay08.hostedemail.com (Postfix) with ESMTP id 299451401FE for ; Mon, 25 Mar 2024 14:57:27 +0000 (UTC) X-FDA: 81935864934.21.E149DC2 Received: from us-smtp-delivery-124.mimecast.com (us-smtp-delivery-124.mimecast.com [170.10.133.124]) by imf12.hostedemail.com (Postfix) with ESMTP id 4598D40006 for ; Mon, 25 Mar 2024 14:57:24 +0000 (UTC) Authentication-Results: imf12.hostedemail.com; dkim=pass header.d=redhat.com header.s=mimecast20190719 header.b=IuXen+Ps; spf=pass (imf12.hostedemail.com: domain of bhe@redhat.com designates 170.10.133.124 as permitted sender) smtp.mailfrom=bhe@redhat.com; dmarc=pass (policy=none) header.from=redhat.com ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=hostedemail.com; s=arc-20220608; t=1711378644; 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:content-transfer-encoding: in-reply-to:in-reply-to:references:references:dkim-signature; bh=+c4yPtzG9SnjpO3Ux0abr18tbqf9XDz5JHpLVv3vCHY=; b=O2KyYDWJEAhvCJreGZic84VYZBG0w3VDFOQqpMyQR9jglzQMNsuZWXPFWBnV1lI1LSt7Cv zLw2jQe4l4+ujQ9/5b7vPPPv77PZIpIPbPAq9ZiNXswtlnHYQHzXGAhkXPP/l9CFixfclu OtSZQAu+virDiIC/6nAReug3mVTAc1g= ARC-Authentication-Results: i=1; imf12.hostedemail.com; dkim=pass header.d=redhat.com header.s=mimecast20190719 header.b=IuXen+Ps; spf=pass (imf12.hostedemail.com: domain of bhe@redhat.com designates 170.10.133.124 as permitted sender) smtp.mailfrom=bhe@redhat.com; dmarc=pass (policy=none) header.from=redhat.com ARC-Seal: i=1; s=arc-20220608; d=hostedemail.com; t=1711378644; a=rsa-sha256; cv=none; b=4nsNxYIIrz5VYgUR+QMBM8XhdwqUux4tLxQWPY6soQx7JovxS3Sz2RhjQc8NeXja0e3oaI dgeEW6m1XxHmx0xCw+44kQFs7feJFKYZt8Dxm4UQ5zXrgskIs5nV6DyDp260wtX0Znopqf C1ATaRdd3e+N5ODbEgxu/mJbuO9Y98A= DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=redhat.com; s=mimecast20190719; t=1711378643; h=from:from: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:content-transfer-encoding: in-reply-to:in-reply-to:references:references; bh=+c4yPtzG9SnjpO3Ux0abr18tbqf9XDz5JHpLVv3vCHY=; b=IuXen+Ps+82pqkmdcS51jd72Eel/JLa2CfMGp2BJw7gqX6Epv3H4u4dAZMhZXG2KehBF7I n1VyvI+7RVDuqZ7f7XolRyFpj3Z3TXT6IHaLSmdkY0j9sZUC+cfDXOY5xc3lI9+vctdcY2 8py+gE9359dVLZukczhX8z6/uvAez2Y= Received: from mimecast-mx02.redhat.com (mimecast-mx02.redhat.com [66.187.233.88]) by relay.mimecast.com with ESMTP with STARTTLS (version=TLSv1.3, cipher=TLS_AES_256_GCM_SHA384) id us-mta-252-_uq44HFeMq6xtpdXzT6_XA-1; Mon, 25 Mar 2024 10:57:20 -0400 X-MC-Unique: _uq44HFeMq6xtpdXzT6_XA-1 Received: from smtp.corp.redhat.com (int-mx01.intmail.prod.int.rdu2.redhat.com [10.11.54.1]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (2048 bits) server-digest SHA256) (No client certificate requested) by mimecast-mx02.redhat.com (Postfix) with ESMTPS id ACF061869C65; Mon, 25 Mar 2024 14:57:19 +0000 (UTC) Received: from MiWiFi-R3L-srv.redhat.com (unknown [10.72.116.12]) by smtp.corp.redhat.com (Postfix) with ESMTP id 30A953C20; Mon, 25 Mar 2024 14:57:15 +0000 (UTC) From: Baoquan He To: linux-mm@kvack.org Cc: linux-kernel@vger.kernel.org, x86@kernel.org, linuxppc-dev@lists.ozlabs.org, akpm@linux-foundation.org, rppt@kernel.org, Baoquan He Subject: [PATCH v2 1/6] x86: remove unneeded memblock_find_dma_reserve() Date: Mon, 25 Mar 2024 22:56:41 +0800 Message-ID: <20240325145646.1044760-2-bhe@redhat.com> In-Reply-To: <20240325145646.1044760-1-bhe@redhat.com> References: <20240325145646.1044760-1-bhe@redhat.com> MIME-Version: 1.0 Content-type: text/plain X-Scanned-By: MIMEDefang 3.4.1 on 10.11.54.1 X-Rspamd-Queue-Id: 4598D40006 X-Rspam-User: X-Stat-Signature: 99tpc1sjgphyezeifzubnp8ii44gq1mz X-Rspamd-Server: rspam01 X-HE-Tag: 1711378644-755540 X-HE-Meta: U2FsdGVkX1/5ydIpEEOzVUw3JzkDxUAFyQvVkM0id7L3yOQ6KF2O0v3C4XN2Z0bsx6hHpzACsolZ4zNTLEjn/S6SSb0WVpZMnZbO1wQ5qESMnZAhjYLiljTlx1y31DLxtDAVCreU/QEaJlXcGDiDVTi8Aeh7ghB2IvDro8qVdwFFQYxteIE2LdUWtoCJNvG8oRnwaK+Wz7eCFsLKETFQPMfeMOMm71FLZyCN+YMNjGsP+sGKMsZ+5aDuqTlJMmjSPnVgKjH0zRqwmZOu99mqq3iSsvp2sEQwB0+PnFuCRcYKyiHLcWjw/LGPSg3Pqu6wFOrJgXCouXp+EzQmrh8qRmIktfyqn8apth21ZT5WY6I9AHW5FGTgunVVD+IljHy33Ny5+EK4D5+I/ibHSasNIJvWN33Z+2aV03ZQ5adFza7C/9vg8sd4c1Y5a9psGseTsBAG1KshhXIRz2kHm1bK2LnssySkaREXSjR1yKezwzyMUXqCLHvfj//Ez/tanVg72UIRUuQUsQ+XXh5Fy+HlAjzoCRMt59qTTGWBlKMComtguFNmaqfNpxSdO4UV4PV2UWh8JbvQWGwM37H8t+DNV44Za5fRc0p0cuVxfIPZjjo/Zxzoas/z4s37fAmcJ5rkUn06gLy+O9n55uWpOAFMCG4MEhQNkEvjvsPE3FB1siRY0ZOPik7PChkSYu86V/fHBMC69Bu8euNCUa0dhiX3TTkv/nfQoGqtpD0a+i09ivmlw9c9/BIdhVa9opLYxtwVx6xnwKYn+5wV8th93QHnhRLbIK2s6sh+tkKGIuEaboOBavBp4kFfgJmSOBIQw9o5P/DCZgJDR7AYPjKMdzbxYyL5pHMK6IaqbQEuvD9Zt4IBT7qH3UWm7L+qkxJ9yLjEccD9GhDwTocnlPOE3KymPW1QIJe5rmGbij+Wj0Tzow2dQ7BPR4a7tj8jCATgFEGzdpoOY5MbsjVLOjxNt9V A4yO1mXe uQjP/ULmnhnBP/LOxG/S37XsjxKtGw68VLA5ABhrBo+hNi8hnZUspGpsEQ3NQrVGYiFpo6XRD0Y5FPI3ufeTc9EpQXHprnbOACHMxnQk6C2Tsi8NdfBulWZyvEhoFBRhsXrJ2JhQtTnFiU4LXJ8GqU3ZnTGLiED/tZWWAaMSnOCLRi3YvjnUmoIVi8Z3B3Fq7rl8b9nOSFbOsjayerDceIKXH7A== 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: Variable dma_reserve and its usage was introduced in commit 0e0b864e069c ("[PATCH] Account for memmap and optionally the kernel image as holes"). Its original purpose was to accounting for the reserved pages in DMA zone to make DMA zone's watermarks calculation more accurate on x86. However, currently there's zone->managed_pages to account for all available pages for buddy, zone->present_pages to account for all present physical pages in zone. What is more important, on x86, calculating and setting the zone->managed_pages is a temporary move, all zone's managed_pages will be zeroed out and reset to the actual value according to how many pages are added to buddy allocator in mem_init(). Before mem_init(), no buddy alloction is requested. And zone's pcp and watermark setting are all done after mem_init(). So, no need to worry about the DMA zone's setting accuracy during free_area_init(). Hence, remove memblock_find_dma_reserve() to stop calculating and setting dma_reserve. Signed-off-by: Baoquan He Reviewed-by: Mike Rapoport (IBM) --- arch/x86/include/asm/pgtable.h | 1 - arch/x86/kernel/setup.c | 2 -- arch/x86/mm/init.c | 47 ---------------------------------- 3 files changed, 50 deletions(-) diff --git a/arch/x86/include/asm/pgtable.h b/arch/x86/include/asm/pgtable.h index 315535ffb258..cefc7a84f7a4 100644 --- a/arch/x86/include/asm/pgtable.h +++ b/arch/x86/include/asm/pgtable.h @@ -1200,7 +1200,6 @@ static inline int pgd_none(pgd_t pgd) extern int direct_gbpages; void init_mem_mapping(void); void early_alloc_pgt_buf(void); -extern void memblock_find_dma_reserve(void); void __init poking_init(void); unsigned long init_memory_mapping(unsigned long start, unsigned long end, pgprot_t prot); diff --git a/arch/x86/kernel/setup.c b/arch/x86/kernel/setup.c index ef206500ed6f..74873bd04ad1 100644 --- a/arch/x86/kernel/setup.c +++ b/arch/x86/kernel/setup.c @@ -1106,8 +1106,6 @@ void __init setup_arch(char **cmdline_p) */ arch_reserve_crashkernel(); - memblock_find_dma_reserve(); - if (!early_xdbc_setup_hardware()) early_xdbc_register_console(); diff --git a/arch/x86/mm/init.c b/arch/x86/mm/init.c index 679893ea5e68..615f0bf4bda6 100644 --- a/arch/x86/mm/init.c +++ b/arch/x86/mm/init.c @@ -990,53 +990,6 @@ void __init free_initrd_mem(unsigned long start, unsigned long end) } #endif -/* - * Calculate the precise size of the DMA zone (first 16 MB of RAM), - * and pass it to the MM layer - to help it set zone watermarks more - * accurately. - * - * Done on 64-bit systems only for the time being, although 32-bit systems - * might benefit from this as well. - */ -void __init memblock_find_dma_reserve(void) -{ -#ifdef CONFIG_X86_64 - u64 nr_pages = 0, nr_free_pages = 0; - unsigned long start_pfn, end_pfn; - phys_addr_t start_addr, end_addr; - int i; - u64 u; - - /* - * Iterate over all memory ranges (free and reserved ones alike), - * to calculate the total number of pages in the first 16 MB of RAM: - */ - nr_pages = 0; - for_each_mem_pfn_range(i, MAX_NUMNODES, &start_pfn, &end_pfn, NULL) { - start_pfn = min(start_pfn, MAX_DMA_PFN); - end_pfn = min(end_pfn, MAX_DMA_PFN); - - nr_pages += end_pfn - start_pfn; - } - - /* - * Iterate over free memory ranges to calculate the number of free - * pages in the DMA zone, while not counting potential partial - * pages at the beginning or the end of the range: - */ - nr_free_pages = 0; - for_each_free_mem_range(u, NUMA_NO_NODE, MEMBLOCK_NONE, &start_addr, &end_addr, NULL) { - start_pfn = min_t(unsigned long, PFN_UP(start_addr), MAX_DMA_PFN); - end_pfn = min_t(unsigned long, PFN_DOWN(end_addr), MAX_DMA_PFN); - - if (start_pfn < end_pfn) - nr_free_pages += end_pfn - start_pfn; - } - - set_dma_reserve(nr_pages - nr_free_pages); -#endif -} - void __init zone_sizes_init(void) { unsigned long max_zone_pfns[MAX_NR_ZONES]; From patchwork Mon Mar 25 14:56:42 2024 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Baoquan He X-Patchwork-Id: 13602377 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 29D5AC54E58 for ; Mon, 25 Mar 2024 14:57:33 +0000 (UTC) Received: by kanga.kvack.org (Postfix) id B0ABE6B00A5; Mon, 25 Mar 2024 10:57:32 -0400 (EDT) Received: by kanga.kvack.org (Postfix, from userid 40) id ABA6C6B00A6; Mon, 25 Mar 2024 10:57:32 -0400 (EDT) X-Delivered-To: int-list-linux-mm@kvack.org Received: by kanga.kvack.org (Postfix, from userid 63042) id 982546B00A7; Mon, 25 Mar 2024 10:57:32 -0400 (EDT) X-Delivered-To: linux-mm@kvack.org Received: from relay.hostedemail.com (smtprelay0017.hostedemail.com [216.40.44.17]) by kanga.kvack.org (Postfix) with ESMTP id 84C7C6B00A5 for ; Mon, 25 Mar 2024 10:57:32 -0400 (EDT) Received: from smtpin06.hostedemail.com (a10.router.float.18 [10.200.18.1]) by unirelay02.hostedemail.com (Postfix) with ESMTP id 4D5CD120837 for ; Mon, 25 Mar 2024 14:57:32 +0000 (UTC) X-FDA: 81935865144.06.17D326F Received: from us-smtp-delivery-124.mimecast.com (us-smtp-delivery-124.mimecast.com [170.10.129.124]) by imf17.hostedemail.com (Postfix) with ESMTP id B555940018 for ; Mon, 25 Mar 2024 14:57:30 +0000 (UTC) Authentication-Results: imf17.hostedemail.com; dkim=pass header.d=redhat.com header.s=mimecast20190719 header.b=UAARgC5L; dmarc=pass (policy=none) header.from=redhat.com; spf=pass (imf17.hostedemail.com: domain of bhe@redhat.com designates 170.10.129.124 as permitted sender) smtp.mailfrom=bhe@redhat.com ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=hostedemail.com; s=arc-20220608; t=1711378650; 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:content-transfer-encoding: in-reply-to:in-reply-to:references:references:dkim-signature; bh=/wvoO9gMxnE/h+72mDdUoxwDkamBxujn5JY0mQMrkk8=; b=fBY9Qn5dAM52Z3U1ldME0RZsZjxQQcjlSmWCP4hFMiBbkfFiLnkZPWQeUAsyucO/kdSsHI zjNhOdeQtSjrDuFweSzy0NFoeB2+hcZrK6HbTfGiy1OaH1CqVhWt1ESDsWMqB7YE5OEHKh 9Zibe6MYhUwmX5q4il42jCHcaHnfPA8= ARC-Authentication-Results: i=1; imf17.hostedemail.com; dkim=pass header.d=redhat.com header.s=mimecast20190719 header.b=UAARgC5L; dmarc=pass (policy=none) header.from=redhat.com; spf=pass (imf17.hostedemail.com: domain of bhe@redhat.com designates 170.10.129.124 as permitted sender) smtp.mailfrom=bhe@redhat.com ARC-Seal: i=1; s=arc-20220608; d=hostedemail.com; t=1711378650; a=rsa-sha256; cv=none; b=5henHslIlckUXnzYuAHfLSgaLeFyFGI95Ll+FK9Z8NFXIr9TZXG1WOgg/YiP5GTgF9ELe9 D8zZXFs1DEWBYFWmchJq4q8z7ZUhtsb5rNbAbj13PqFi8tdP6zZ6xwXgeR8pnFwwg6cXaD lDWuiDiBB1LW+smIgGdB1wuqu84Azpc= DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=redhat.com; s=mimecast20190719; t=1711378650; h=from:from: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:content-transfer-encoding: in-reply-to:in-reply-to:references:references; bh=/wvoO9gMxnE/h+72mDdUoxwDkamBxujn5JY0mQMrkk8=; b=UAARgC5Lq9+648tqMb7yuqXxLB4mJ30U1QL8wqpXUssmUz6it4xMVXfK6dAoMR6JOJAK2A 66BBS0TDcjNT8Hd2KScmB1trlAF1zE6Bo38iff7G54s5dZOtP325bduj4+mLs7G/p1+UeP kKvwzBUCF5hqWJZLS9nwaAU/0OoO0IQ= Received: from mimecast-mx02.redhat.com (mimecast-mx02.redhat.com [66.187.233.88]) by relay.mimecast.com with ESMTP with STARTTLS (version=TLSv1.3, cipher=TLS_AES_256_GCM_SHA384) id us-mta-207-ioNvZiFePKuhU6aVg6cs7g-1; Mon, 25 Mar 2024 10:57:25 -0400 X-MC-Unique: ioNvZiFePKuhU6aVg6cs7g-1 Received: from smtp.corp.redhat.com (int-mx01.intmail.prod.int.rdu2.redhat.com [10.11.54.1]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (2048 bits) server-digest SHA256) (No client certificate requested) by mimecast-mx02.redhat.com (Postfix) with ESMTPS id 38444185A783; Mon, 25 Mar 2024 14:57:25 +0000 (UTC) Received: from MiWiFi-R3L-srv.redhat.com (unknown [10.72.116.12]) by smtp.corp.redhat.com (Postfix) with ESMTP id 4E4133C22; Mon, 25 Mar 2024 14:57:20 +0000 (UTC) From: Baoquan He To: linux-mm@kvack.org Cc: linux-kernel@vger.kernel.org, x86@kernel.org, linuxppc-dev@lists.ozlabs.org, akpm@linux-foundation.org, rppt@kernel.org, Baoquan He Subject: [PATCH v2 2/6] mm/mm_init.c: remove the useless dma_reserve Date: Mon, 25 Mar 2024 22:56:42 +0800 Message-ID: <20240325145646.1044760-3-bhe@redhat.com> In-Reply-To: <20240325145646.1044760-1-bhe@redhat.com> References: <20240325145646.1044760-1-bhe@redhat.com> MIME-Version: 1.0 Content-type: text/plain X-Scanned-By: MIMEDefang 3.4.1 on 10.11.54.1 X-Rspam-User: X-Stat-Signature: 6wjhhctm7yk9jdixuk11y9p6pywekz1s X-Rspamd-Server: rspam07 X-Rspamd-Queue-Id: B555940018 X-HE-Tag: 1711378650-969852 X-HE-Meta: U2FsdGVkX18dZpEYqkRRHzhqMPB6tMES1PGOqcN6bXmIKJIrTgrSDuHaJkgp1VrMeL2ZbWXfufp/eZ5s+FI8x0aOlINP7n6+Cn9Btk87moXhiGiES7V33zZyBA6LSvHt+UX2IrZ1sSx7IOyJpaPvOsw0IvqY1/aDqMn1KzDOYueDE+myr1VbBGRuE4i1B/6y5g75VwSq+eLOMmIJ7hmLtjYgaGxDtKOC8KB7BFtmn3P0TUYD9kkr29egh1YTcdLK7j+q4inxahNfwQ44qq+dAvYpAP6gXiDqBG9irGYKpE78TaWz5tRRXq2FDvYvSMG1J1gsu0t89ppNDbsQbvA+y9qzCl1cDGAOrxMISybzQ79GWqokRvgrZwHVnlJ9tGjSstQJ8RloqhSzgmcO63gzphHNdPBV6k02fesaF/UQjSDJnLIhM7Wk59o70n1JZDCie4ea0rUHGEgzu99mutUtRrCPQ3aSKrMi49VLZtex902g+VhbgQ1rh8r2suz+LQ8MP5l9q0BlXGdjMwH885y0mw+rzE650fH8tihxOkJQ49lU/+6qhpTe7UhF0EWHhTaMLaxPJazcyUz9MURz5oHK7H9pGPFiWIflXeEPWDPC81C37oXCp9nW17IrY4N/oM8i572RuCRWx78oG/mAYE989JOEt5y0R5byRpSpaAZKGnKLSRgQ1Ksescv2b1mRvJ3S5/aE0MiCvoy5bFQwcegSyKIVxQDq333GeJxtRsnVsXy4fZvmlYeODFTFAvhetSmA1tew5dAV3kVXEpWLfK+eNGaA/rct8ZDZRNX6Rx7Bp0Cs7hcIY0c96rTPCo1tc11I/hrh1GyJMzj1zMEICTy2XvCSobrEKfQAM5GN01Spc/ODcvkYBJKLQl/yvkW6UNvdG4k86RAsiuqmoo9VvvIqsxXEF8b+KmreJg+n1ixANuWwWmxW5r00aGPeBZxO4vmU 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: Now nobody calls set_dma_reserve() to set value for dma_reserve, remove set_dma_reserve(), global variable dma_reserve and the codes using it. Signed-off-by: Baoquan He Reviewed-by: Mike Rapoport (IBM) --- include/linux/mm.h | 1 - mm/mm_init.c | 23 ----------------------- 2 files changed, 24 deletions(-) diff --git a/include/linux/mm.h b/include/linux/mm.h index 0436b919f1c7..ad19350e1538 100644 --- a/include/linux/mm.h +++ b/include/linux/mm.h @@ -3210,7 +3210,6 @@ static inline int early_pfn_to_nid(unsigned long pfn) extern int __meminit early_pfn_to_nid(unsigned long pfn); #endif -extern void set_dma_reserve(unsigned long new_dma_reserve); extern void mem_init(void); extern void __init mmap_init(void); diff --git a/mm/mm_init.c b/mm/mm_init.c index 549e76af8f82..153fb2dc666f 100644 --- a/mm/mm_init.c +++ b/mm/mm_init.c @@ -226,7 +226,6 @@ static unsigned long required_movablecore_percent __initdata; static unsigned long nr_kernel_pages __initdata; static unsigned long nr_all_pages __initdata; -static unsigned long dma_reserve __initdata; static bool deferred_struct_pages __meminitdata; @@ -1583,12 +1582,6 @@ static void __init free_area_init_core(struct pglist_data *pgdat) zone_names[j], memmap_pages, freesize); } - /* Account for reserved pages */ - if (j == 0 && freesize > dma_reserve) { - freesize -= dma_reserve; - pr_debug(" %s zone: %lu pages reserved\n", zone_names[0], dma_reserve); - } - if (!is_highmem_idx(j)) nr_kernel_pages += freesize; /* Charge for highmem memmap if there are enough kernel pages */ @@ -2547,22 +2540,6 @@ void *__init alloc_large_system_hash(const char *tablename, return table; } -/** - * set_dma_reserve - set the specified number of pages reserved in the first zone - * @new_dma_reserve: The number of pages to mark reserved - * - * The per-cpu batchsize and zone watermarks are determined by managed_pages. - * In the DMA zone, a significant percentage may be consumed by kernel image - * and other unfreeable allocations which can skew the watermarks badly. This - * function may optionally be used to account for unfreeable pages in the - * first zone (e.g., ZONE_DMA). The effect will be lower watermarks and - * smaller per-cpu batchsize. - */ -void __init set_dma_reserve(unsigned long new_dma_reserve) -{ - dma_reserve = new_dma_reserve; -} - void __init memblock_free_pages(struct page *page, unsigned long pfn, unsigned int order) { From patchwork Mon Mar 25 14:56:43 2024 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Baoquan He X-Patchwork-Id: 13602378 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 31726C54E64 for ; Mon, 25 Mar 2024 14:57:38 +0000 (UTC) Received: by kanga.kvack.org (Postfix) id BCD5E6B00A7; Mon, 25 Mar 2024 10:57:37 -0400 (EDT) Received: by kanga.kvack.org (Postfix, from userid 40) id B7ED16B00A8; Mon, 25 Mar 2024 10:57:37 -0400 (EDT) X-Delivered-To: int-list-linux-mm@kvack.org Received: by kanga.kvack.org (Postfix, from userid 63042) id A483D6B00A9; Mon, 25 Mar 2024 10:57:37 -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 91CB36B00A7 for ; Mon, 25 Mar 2024 10:57:37 -0400 (EDT) Received: from smtpin28.hostedemail.com (a10.router.float.18 [10.200.18.1]) by unirelay07.hostedemail.com (Postfix) with ESMTP id 5751B160693 for ; Mon, 25 Mar 2024 14:57:37 +0000 (UTC) X-FDA: 81935865354.28.E9647F4 Received: from us-smtp-delivery-124.mimecast.com (us-smtp-delivery-124.mimecast.com [170.10.133.124]) by imf16.hostedemail.com (Postfix) with ESMTP id B700E180002 for ; Mon, 25 Mar 2024 14:57:35 +0000 (UTC) Authentication-Results: imf16.hostedemail.com; dkim=pass header.d=redhat.com header.s=mimecast20190719 header.b=cC6WiVML; spf=pass (imf16.hostedemail.com: domain of bhe@redhat.com designates 170.10.133.124 as permitted sender) smtp.mailfrom=bhe@redhat.com; dmarc=pass (policy=none) header.from=redhat.com ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=hostedemail.com; s=arc-20220608; t=1711378655; 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:content-transfer-encoding: in-reply-to:in-reply-to:references:references:dkim-signature; bh=1Ez2QF5MYw9LVg300C2Oo4I1YSujmhzgBkyBgmFJgxw=; b=sPPW5VVreE1Ib3VynS6K8dmgbq6JEFIrhfImht3BXI0tji2S0Tsg85kNG1RI9cddp4r58B djhQ0wZ2j1OUz1SrAFoIgOXkB4bH41YLcFgKz4ejPPmMqWweUYPs8nhSmjZdHjoNJybf2V D5k6Yg8udajRcUQUoEDdGErNmwFodKo= ARC-Seal: i=1; s=arc-20220608; d=hostedemail.com; t=1711378655; a=rsa-sha256; cv=none; b=hAyxmBNK41mJE/fLR0eaGYukqpGAXtvNlpdGxzdSM/4VHEyzsMFzkSlqfl5XzN1jRJdp1T 2zHR54DO7yqV9CVTliNcisbtDoWuUpykuBBegAZG4aMzQ6k/uyOZipyz+8CqgC5Eka7oVq 6wo02NmlQVTA02zOXSb9v5bsg9siMSU= ARC-Authentication-Results: i=1; imf16.hostedemail.com; dkim=pass header.d=redhat.com header.s=mimecast20190719 header.b=cC6WiVML; spf=pass (imf16.hostedemail.com: domain of bhe@redhat.com designates 170.10.133.124 as permitted sender) smtp.mailfrom=bhe@redhat.com; dmarc=pass (policy=none) header.from=redhat.com DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=redhat.com; s=mimecast20190719; t=1711378655; h=from:from: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:content-transfer-encoding: in-reply-to:in-reply-to:references:references; bh=1Ez2QF5MYw9LVg300C2Oo4I1YSujmhzgBkyBgmFJgxw=; b=cC6WiVMLRtYjQ8sFwri1SzQq6RDiCgJ+rkrfcfgMprim78TNmgRYy3wK0ufPjexfqMjIxk +s2xHJIRmcDRrD+c4nUVwv4hc+KIPOzHLqLBGahO2Fk+UTEPVyE/f/HXJkTC31NkFbnUFq 121G6NunzmhmrzpnlquQd+wqs/tXYp0= Received: from mimecast-mx02.redhat.com (mimecast-mx02.redhat.com [66.187.233.88]) by relay.mimecast.com with ESMTP with STARTTLS (version=TLSv1.3, cipher=TLS_AES_256_GCM_SHA384) id us-mta-556-UPy8WchcPpKKNZJqlR81mg-1; Mon, 25 Mar 2024 10:57:29 -0400 X-MC-Unique: UPy8WchcPpKKNZJqlR81mg-1 Received: from smtp.corp.redhat.com (int-mx01.intmail.prod.int.rdu2.redhat.com [10.11.54.1]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (2048 bits) server-digest SHA256) (No client certificate requested) by mimecast-mx02.redhat.com (Postfix) with ESMTPS id 0BBCA800267; Mon, 25 Mar 2024 14:57:29 +0000 (UTC) Received: from MiWiFi-R3L-srv.redhat.com (unknown [10.72.116.12]) by smtp.corp.redhat.com (Postfix) with ESMTP id D78C43C22; Mon, 25 Mar 2024 14:57:25 +0000 (UTC) From: Baoquan He To: linux-mm@kvack.org Cc: linux-kernel@vger.kernel.org, x86@kernel.org, linuxppc-dev@lists.ozlabs.org, akpm@linux-foundation.org, rppt@kernel.org, Baoquan He Subject: [PATCH v2 3/6] mm/mm_init.c: add new function calc_nr_all_pages() Date: Mon, 25 Mar 2024 22:56:43 +0800 Message-ID: <20240325145646.1044760-4-bhe@redhat.com> In-Reply-To: <20240325145646.1044760-1-bhe@redhat.com> References: <20240325145646.1044760-1-bhe@redhat.com> MIME-Version: 1.0 Content-type: text/plain X-Scanned-By: MIMEDefang 3.4.1 on 10.11.54.1 X-Stat-Signature: b4eoyuxo4a58juzkjze85ghtn7pp9wj6 X-Rspamd-Server: rspam10 X-Rspamd-Queue-Id: B700E180002 X-Rspam-User: X-HE-Tag: 1711378655-174842 X-HE-Meta: U2FsdGVkX1/T5mW8q9FGzNWV15skb5Vx1mOcSPCAXLhw6dW7k19E/XTzO2naEadN20nRWeLMdgSkXoHIvNvMRxjqtg0IXtcEd+RkYAeNBw3g+JgD4iOu5eAK0zXNTq3G9TUokfUIM+CJFe0zm1GY+7ONWyb/yvKEWAjYEiUJBjo/6NgyIkdl+9fDvk8lQLq5EtBVEIEcK2YXOZY3G8M9+lvniDbF+FSAYBtIOCVDRQVC3ubUS5MT/z29sitNYAb0uA8skyuir79qMMm28ADrPJ3fd2Pr9UYernbvt3hA1uh8gayYhBZq5iGt7lFrR7lomHZp8zH/dYZzS2TGfCc6REi1WKn3PvJEhzW9txH93eylUYtyfcegfPsbgGiC3rOv8h+XJR2ZArLZzNUIOUBCMnvHF9mOz5iJUbOIgjyiVQl1M+ivBS/Ag/8cnsnrTpGrXd3VBku47dSm50NWvY42pKgMovvjqWPpkVdrjRbERpudppcz3+sxcRN4ytVqV6gO55sgvtQs/17Vcqm75tiXrC9XlhttQ3ziWxuUSK8apW2+eLvKkv+egRDANqaHZuCrGbSoRivmmm31RIntOzKmQqtzXocj3rFHAUkOHItuyt3mjP+dSOsp+MfdhSi1oa7bogNod6OdXj8wf9b+nq13A/cjfAz+8ZovXq7xgOA3WXaIenS+7Z/ArZQgYNC0SiRdgLkTFiz4y8QZjnp8DItJ7oqLB/fm3+MAsZHIiLSBuCxtG0ulkCCz3OMRDKXgLl7uZ0rcmp256NwigyfSfKvVIW5KlSl9qykQXgF2YETPtY7aWV0JIZCKVixCrqLnWlK8h7W9dVtgxRJcY9eTQSaMXuxLy7HvyWBFJMjvyUn+Czf50gx4zjJdyXs4qAzDsjV6YVuBzwcypY9+VbMp6pYJrH4lGdpLQZM9Mos76ZvfDfAjX2IUnBvxWDrSnHfnoo2B 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: This is a preparation to calculate nr_kernel_pages and nr_all_pages, both of which will be used later in alloc_large_system_hash(). nr_all_pages counts up all free but not reserved memory in memblock allocator, including HIGHMEM memory. While nr_kernel_pages counts up all free but not reserved low memory in memblock allocator, excluding HIGHMEM memory. Signed-off-by: Baoquan He Reviewed-by: Mike Rapoport (IBM) --- mm/mm_init.c | 24 ++++++++++++++++++++++++ 1 file changed, 24 insertions(+) diff --git a/mm/mm_init.c b/mm/mm_init.c index 153fb2dc666f..c57a7fc97a16 100644 --- a/mm/mm_init.c +++ b/mm/mm_init.c @@ -1264,6 +1264,30 @@ static void __init reset_memoryless_node_totalpages(struct pglist_data *pgdat) pr_debug("On node %d totalpages: 0\n", pgdat->node_id); } +static void __init calc_nr_kernel_pages(void) +{ + unsigned long start_pfn, end_pfn; + phys_addr_t start_addr, end_addr; + u64 u; +#ifdef CONFIG_HIGHMEM + unsigned long high_zone_low = arch_zone_lowest_possible_pfn[ZONE_HIGHMEM]; +#endif + + for_each_free_mem_range(u, NUMA_NO_NODE, MEMBLOCK_NONE, &start_addr, &end_addr, NULL) { + start_pfn = PFN_UP(start_addr); + end_pfn = PFN_DOWN(end_addr); + + if (start_pfn < end_pfn) { + nr_all_pages += end_pfn - start_pfn; +#ifdef CONFIG_HIGHMEM + start_pfn = clamp(start_pfn, 0, high_zone_low); + end_pfn = clamp(end_pfn, 0, high_zone_low); +#endif + nr_kernel_pages += end_pfn - start_pfn; + } + } +} + static void __init calculate_node_totalpages(struct pglist_data *pgdat, unsigned long node_start_pfn, unsigned long node_end_pfn) From patchwork Mon Mar 25 14:56:44 2024 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Baoquan He X-Patchwork-Id: 13602379 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 752E3C54E58 for ; Mon, 25 Mar 2024 14:57:40 +0000 (UTC) Received: by kanga.kvack.org (Postfix) id 0FA286B00A9; Mon, 25 Mar 2024 10:57:40 -0400 (EDT) Received: by kanga.kvack.org (Postfix, from userid 40) id 081CE6B00AA; Mon, 25 Mar 2024 10:57:40 -0400 (EDT) X-Delivered-To: int-list-linux-mm@kvack.org Received: by kanga.kvack.org (Postfix, from userid 63042) id EB4E66B00AB; Mon, 25 Mar 2024 10:57:39 -0400 (EDT) X-Delivered-To: linux-mm@kvack.org Received: from relay.hostedemail.com (smtprelay0015.hostedemail.com [216.40.44.15]) by kanga.kvack.org (Postfix) with ESMTP id D348A6B00A9 for ; Mon, 25 Mar 2024 10:57:39 -0400 (EDT) Received: from smtpin11.hostedemail.com (a10.router.float.18 [10.200.18.1]) by unirelay02.hostedemail.com (Postfix) with ESMTP id 6BD141206E8 for ; Mon, 25 Mar 2024 14:57:39 +0000 (UTC) X-FDA: 81935865438.11.CE94A87 Received: from us-smtp-delivery-124.mimecast.com (us-smtp-delivery-124.mimecast.com [170.10.133.124]) by imf29.hostedemail.com (Postfix) with ESMTP id 9F2D712001A for ; Mon, 25 Mar 2024 14:57:37 +0000 (UTC) Authentication-Results: imf29.hostedemail.com; dkim=pass header.d=redhat.com header.s=mimecast20190719 header.b=Xx1L73xL; dmarc=pass (policy=none) header.from=redhat.com; spf=pass (imf29.hostedemail.com: domain of bhe@redhat.com designates 170.10.133.124 as permitted sender) smtp.mailfrom=bhe@redhat.com ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=hostedemail.com; s=arc-20220608; t=1711378657; 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:content-transfer-encoding: in-reply-to:in-reply-to:references:references:dkim-signature; bh=5tjcWip8Jh3x6TpRu3FCVwM3jxp/f+pF40FWxJhLLRM=; b=4t+Dd8OnSF30UIupc0I+qA53P74gvtbs6h051K4vnT5SgcGDeBeOP6x9YL3XWo4mFgSd3h ounbzbiZkDcJkbf+/ahZ0j0GfMJpVQft93suJ1wPLBOZmhDQRJ4aHO92AyyBDrhcQCMdVK QDlfKujiWt6cuvNADFjdQWwuoSX/Swk= ARC-Authentication-Results: i=1; imf29.hostedemail.com; dkim=pass header.d=redhat.com header.s=mimecast20190719 header.b=Xx1L73xL; dmarc=pass (policy=none) header.from=redhat.com; spf=pass (imf29.hostedemail.com: domain of bhe@redhat.com designates 170.10.133.124 as permitted sender) smtp.mailfrom=bhe@redhat.com ARC-Seal: i=1; s=arc-20220608; d=hostedemail.com; t=1711378657; a=rsa-sha256; cv=none; b=A1JRpm8ea4OY13NCh6prCKawXdHBatlO3ke2NKix3tnKXRxvhGR9WJCKcQcryPPSGrvbQp U6SofypklHey6a0R4rbqhCB6x+h95ZF3BeYKsZTdfGAnQbcz3Yibk0SZWqObSK7JsFLCt8 S5p0Jyh8dHWLXjEsUH0XX0dtEj8GLqo= DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=redhat.com; s=mimecast20190719; t=1711378657; h=from:from: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:content-transfer-encoding: in-reply-to:in-reply-to:references:references; bh=5tjcWip8Jh3x6TpRu3FCVwM3jxp/f+pF40FWxJhLLRM=; b=Xx1L73xLgje1Fwn6tn6DcG5+9u+tEdrRUGcqB8eSC6fLL1gLTxSXk6LyuZ+OB8QDl7PezI D6xW4Ux0g0FT1bo+9Xm7uHUiy38XVS1BsEq6By3j8S5sFrpKxz5CzAv3RiWM6Jsd8euSoA FSRIo2UiXJYcM6diFAiMF/eegE12IQY= Received: from mimecast-mx02.redhat.com (mx-ext.redhat.com [66.187.233.73]) by relay.mimecast.com with ESMTP with STARTTLS (version=TLSv1.3, cipher=TLS_AES_256_GCM_SHA384) id us-mta-184-pzvsJf6aPruLJH2f2paQ0g-1; Mon, 25 Mar 2024 10:57:33 -0400 X-MC-Unique: pzvsJf6aPruLJH2f2paQ0g-1 Received: from smtp.corp.redhat.com (int-mx01.intmail.prod.int.rdu2.redhat.com [10.11.54.1]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (2048 bits) server-digest SHA256) (No client certificate requested) by mimecast-mx02.redhat.com (Postfix) with ESMTPS id C6BF53811F22; Mon, 25 Mar 2024 14:57:32 +0000 (UTC) Received: from MiWiFi-R3L-srv.redhat.com (unknown [10.72.116.12]) by smtp.corp.redhat.com (Postfix) with ESMTP id C39653C20; Mon, 25 Mar 2024 14:57:29 +0000 (UTC) From: Baoquan He To: linux-mm@kvack.org Cc: linux-kernel@vger.kernel.org, x86@kernel.org, linuxppc-dev@lists.ozlabs.org, akpm@linux-foundation.org, rppt@kernel.org, Baoquan He Subject: [PATCH v2 4/6] mm/mm_init.c: remove meaningless calculation of zone->managed_pages in free_area_init_core() Date: Mon, 25 Mar 2024 22:56:44 +0800 Message-ID: <20240325145646.1044760-5-bhe@redhat.com> In-Reply-To: <20240325145646.1044760-1-bhe@redhat.com> References: <20240325145646.1044760-1-bhe@redhat.com> MIME-Version: 1.0 Content-type: text/plain X-Scanned-By: MIMEDefang 3.4.1 on 10.11.54.1 X-Rspamd-Queue-Id: 9F2D712001A X-Rspam-User: X-Rspamd-Server: rspam05 X-Stat-Signature: czkswmgokxth4f5orf3e3baxnh94awzb X-HE-Tag: 1711378657-981895 X-HE-Meta: U2FsdGVkX1+n/g4pFk2qSFFcUR9hk7NRgO5RzDQKfKUoEWIMmrDDCXgJRLq9O+LJ89sFZMgXQWzi8pV9NQ20qNpt3rhwvcmgfL3jlFAc6Glqix7jkUTOsxw0JRYdej14xO8uoypo0Ma4VSEqZKLlpRbz7cpokqRuiXOeR25kYMnwGVDc495RChjxoE1cizvsjFrge+LmVEfuHGvODwn/Vy+Fw8D7EWz1rTj9wLe5b+NEeRYQYQ6fzuE1cNZM+xHhDIuE8XzZ2+5gOnQRiug+bgIjEoNWTSxEHPsteL34+OFGDKC4HJOSHQxJLiulmSif1OcVQjvdWLpXAh2FAKpwp9FZ97x8o+yZz9PSuYR69zJXxoR63RiJYJh7h1no8rUBYWVhPF33RK2kd+DfsQG/dPt9mUuP9566gK3F3XA0kWcKrhskn+4WTM4pXsYq0uE8n+jYNHQrcZe37OCM0HI/RNBxaqXU4lxY8UszddPo+0G61rSN4YKHVPSFkhbwjCcsQ3fR2+dd/lSImjFVco3Hxw5UFGQylDs+prL138o7+0/gBF7UV2kUv/mevhGR9/wHLi0orgNyXseRcEWrM7kXaD8iQHSUgxhFLvXP7iktx8LhlzDFQY/l/o3dpcuahRVOQJm+pvhLyG1O8uieM2C6O/PXG1BM3OYa4Sz59Fs5qRVdFg4FlahAPW48VlCGQ3io6JAAlUx9utbgI4osORsTTOzSoionrjALFTqen6Q8LjKoA5o5PvFc/lUjGz4qRd0oVxNb1apehZOWiplFlVIeeX37qCOtNDuO1Ta63sRMji2kCJ1wx1BQrQzb/JqMiFjw6hcDCqyRjz1zKmDs3fwrVSuzL4tnUb3TWmGLZbMawf0RC2SpS4Laon8hyjdh3ckdaly2qSgsiFOWuGiPGfNGe8E3csiXndyvc73Yz7nHg6KJkDhYXHfMD8ZucmRc5jJxyVIJdXO0p60CMk0FnOr j4qgLNug bW73OxwTivaz4Tl10LvpFSZalxAjmbvAksA++4WzT8jNea3AeeXCL11n41QhwKZeqH3+x0nGOgKhRrv85F7SEhrOglH5GjZiCTpv7RcE7PbuKufvLxdSwfPUlS9/QkI6sunsQCSTjEsRMKblyHauIWIBMgpA3P4FIjsYHciugDDmEUuHO2KU/6gvFc+JHqkctjc4eUQqR1eW2GT4ADxl8ajD55Q== 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: Currently, in free_area_init_core(), when initialize zone's field, a rough value is set to zone->managed_pages. That value is calculated by (zone->present_pages - memmap_pages). In the meantime, add the value to nr_all_pages and nr_kernel_pages which represent all free pages of system (only low memory or including HIGHMEM memory separately). Both of them are gonna be used in alloc_large_system_hash(). However, the rough calculation and setting of zone->managed_pages is meaningless because a) memmap pages are allocated on units of node in sparse_init() or alloc_node_mem_map(pgdat); The simple (zone->present_pages - memmap_pages) is too rough to make sense for zone; b) the set zone->managed_pages will be zeroed out and reset with acutal value in mem_init() via memblock_free_all(). Before the resetting, no buddy allocation request is issued. Here, remove the meaningless and complicated calculation of (zone->present_pages - memmap_pages), initialize zone->managed_pages as 0 which reflect its actual value because no any page is added into buddy system right now. It will be reset in mem_init(). And also remove the assignment of nr_all_pages and nr_kernel_pages in free_area_init_core(). Instead, call the newly added calc_nr_kernel_pages() to count up all free but not reserved memory in memblock and assign to nr_all_pages and nr_kernel_pages. The counting excludes memmap_pages, and other kernel used data, which is more accurate than old way and simpler, and can also cover the ppc required arch_reserved_kernel_pages() case. And also clean up the outdated code comment above free_area_init_core(). And free_area_init_core() is easy to understand now, no need to add words to explain. Signed-off-by: Baoquan He Reviewed-by: Mike Rapoport (IBM) Signed-off-by: Baoquan He --- mm/mm_init.c | 46 +++++----------------------------------------- 1 file changed, 5 insertions(+), 41 deletions(-) diff --git a/mm/mm_init.c b/mm/mm_init.c index c57a7fc97a16..7f71e56e83f3 100644 --- a/mm/mm_init.c +++ b/mm/mm_init.c @@ -1565,15 +1565,6 @@ void __ref free_area_init_core_hotplug(struct pglist_data *pgdat) } #endif -/* - * Set up the zone data structures: - * - mark all pages reserved - * - mark all memory queues empty - * - clear the memory bitmaps - * - * NOTE: pgdat should get zeroed by caller. - * NOTE: this function is only called during early init. - */ static void __init free_area_init_core(struct pglist_data *pgdat) { enum zone_type j; @@ -1584,41 +1575,13 @@ static void __init free_area_init_core(struct pglist_data *pgdat) for (j = 0; j < MAX_NR_ZONES; j++) { struct zone *zone = pgdat->node_zones + j; - unsigned long size, freesize, memmap_pages; - - size = zone->spanned_pages; - freesize = zone->present_pages; - - /* - * Adjust freesize so that it accounts for how much memory - * is used by this zone for memmap. This affects the watermark - * and per-cpu initialisations - */ - memmap_pages = calc_memmap_size(size, freesize); - if (!is_highmem_idx(j)) { - if (freesize >= memmap_pages) { - freesize -= memmap_pages; - if (memmap_pages) - pr_debug(" %s zone: %lu pages used for memmap\n", - zone_names[j], memmap_pages); - } else - pr_warn(" %s zone: %lu memmap pages exceeds freesize %lu\n", - zone_names[j], memmap_pages, freesize); - } - - if (!is_highmem_idx(j)) - nr_kernel_pages += freesize; - /* Charge for highmem memmap if there are enough kernel pages */ - else if (nr_kernel_pages > memmap_pages * 2) - nr_kernel_pages -= memmap_pages; - nr_all_pages += freesize; + unsigned long size = zone->spanned_pages; /* - * Set an approximate value for lowmem here, it will be adjusted - * when the bootmem allocator frees pages into the buddy system. - * And all highmem pages will be managed by the buddy system. + * Initialize zone->managed_pages as 0 , it will be reset + * when memblock allocator frees pages into buddy system. */ - zone_init_internals(zone, j, nid, freesize); + zone_init_internals(zone, j, nid, 0); if (!size) continue; @@ -1915,6 +1878,7 @@ void __init free_area_init(unsigned long *max_zone_pfn) check_for_memory(pgdat); } + calc_nr_kernel_pages(); memmap_init(); /* disable hash distribution for systems with a single node */ From patchwork Mon Mar 25 14:56:45 2024 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Baoquan He X-Patchwork-Id: 13602380 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 9C440C54E64 for ; Mon, 25 Mar 2024 14:57:43 +0000 (UTC) Received: by kanga.kvack.org (Postfix) id 2F72D6B00AB; Mon, 25 Mar 2024 10:57:43 -0400 (EDT) Received: by kanga.kvack.org (Postfix, from userid 40) id 2A4D96B00AC; Mon, 25 Mar 2024 10:57:43 -0400 (EDT) X-Delivered-To: int-list-linux-mm@kvack.org Received: by kanga.kvack.org (Postfix, from userid 63042) id 145666B00AD; Mon, 25 Mar 2024 10:57:43 -0400 (EDT) X-Delivered-To: linux-mm@kvack.org Received: from relay.hostedemail.com (smtprelay0010.hostedemail.com [216.40.44.10]) by kanga.kvack.org (Postfix) with ESMTP id F1DCD6B00AB for ; Mon, 25 Mar 2024 10:57:42 -0400 (EDT) Received: from smtpin18.hostedemail.com (a10.router.float.18 [10.200.18.1]) by unirelay09.hostedemail.com (Postfix) with ESMTP id 8DAF6806B4 for ; Mon, 25 Mar 2024 14:57:42 +0000 (UTC) X-FDA: 81935865564.18.24475C2 Received: from us-smtp-delivery-124.mimecast.com (us-smtp-delivery-124.mimecast.com [170.10.133.124]) by imf05.hostedemail.com (Postfix) with ESMTP id C60A7100020 for ; Mon, 25 Mar 2024 14:57:40 +0000 (UTC) Authentication-Results: imf05.hostedemail.com; dkim=pass header.d=redhat.com header.s=mimecast20190719 header.b="M/TRDeu5"; spf=pass (imf05.hostedemail.com: domain of bhe@redhat.com designates 170.10.133.124 as permitted sender) smtp.mailfrom=bhe@redhat.com; dmarc=pass (policy=none) header.from=redhat.com ARC-Seal: i=1; s=arc-20220608; d=hostedemail.com; t=1711378660; a=rsa-sha256; cv=none; b=l+8ub0VTSNwl2+JQp4Wg9o3KTVo+Fvlh2ztZ4+7gU5FjS3NTYoL7N0sJywvptFiru8K1AC Yo+uQib5mgU7eXoZ7HeqoM5VyCc/cWkKesdFhG0n4U3T2v+6TMbeMiwYX/zaLuSBnwQ+Fq eKdPkNSNATr0xtQH4uKfQBpRVVMSJB8= ARC-Authentication-Results: i=1; imf05.hostedemail.com; dkim=pass header.d=redhat.com header.s=mimecast20190719 header.b="M/TRDeu5"; spf=pass (imf05.hostedemail.com: domain of bhe@redhat.com designates 170.10.133.124 as permitted sender) smtp.mailfrom=bhe@redhat.com; dmarc=pass (policy=none) header.from=redhat.com ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=hostedemail.com; s=arc-20220608; t=1711378660; 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:content-transfer-encoding: in-reply-to:in-reply-to:references:references:dkim-signature; bh=MVO6euUmFTCPCHk6L2/T00GcEz6lDO4YO+24ug8h660=; b=Xek3VqSwcfRDoZ+FE3Yf+WBrzlxGmG6FlnHbCdNuaKHa27abcCRvrAAqsMtuvNsI5C4FXz TUGbv+M38W4drP50v/aNNpd10ltFCrGpO70jDrs8DyNFr3tK4IUcvm2BcemO2QgDJtkCGb IgiVztXEbEw6Lo8p1j8iZVwdJnc6N+I= DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=redhat.com; s=mimecast20190719; t=1711378660; h=from:from: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:content-transfer-encoding: in-reply-to:in-reply-to:references:references; bh=MVO6euUmFTCPCHk6L2/T00GcEz6lDO4YO+24ug8h660=; b=M/TRDeu5lU9MmXkrBE7y1LNZJf34UV5JqEvWSkiXDuRTb2XHzI/iL+oEl2qxkM6sc8eylr w70Xq8M3Rt+WrIas66pzfxjprYTY7sUL1ltwj6McM2msoGcyqZM5q2TgqISuJtHAkAw+g5 OISFK79MoGCxohyA0jAJMdWFIFluftk= Received: from mimecast-mx02.redhat.com (mimecast-mx02.redhat.com [66.187.233.88]) by relay.mimecast.com with ESMTP with STARTTLS (version=TLSv1.3, cipher=TLS_AES_256_GCM_SHA384) id us-mta-124-mGMwkjhzOPWXpLUha1kWiA-1; Mon, 25 Mar 2024 10:57:37 -0400 X-MC-Unique: mGMwkjhzOPWXpLUha1kWiA-1 Received: from smtp.corp.redhat.com (int-mx01.intmail.prod.int.rdu2.redhat.com [10.11.54.1]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (2048 bits) server-digest SHA256) (No client certificate requested) by mimecast-mx02.redhat.com (Postfix) with ESMTPS id 3E7FB8007A2; Mon, 25 Mar 2024 14:57:37 +0000 (UTC) Received: from MiWiFi-R3L-srv.redhat.com (unknown [10.72.116.12]) by smtp.corp.redhat.com (Postfix) with ESMTP id 69A9D3C22; Mon, 25 Mar 2024 14:57:33 +0000 (UTC) From: Baoquan He To: linux-mm@kvack.org Cc: linux-kernel@vger.kernel.org, x86@kernel.org, linuxppc-dev@lists.ozlabs.org, akpm@linux-foundation.org, rppt@kernel.org, Baoquan He Subject: [PATCH v2 5/6] mm/mm_init.c: remove unneeded calc_memmap_size() Date: Mon, 25 Mar 2024 22:56:45 +0800 Message-ID: <20240325145646.1044760-6-bhe@redhat.com> In-Reply-To: <20240325145646.1044760-1-bhe@redhat.com> References: <20240325145646.1044760-1-bhe@redhat.com> MIME-Version: 1.0 Content-type: text/plain X-Scanned-By: MIMEDefang 3.4.1 on 10.11.54.1 X-Rspamd-Server: rspam08 X-Rspamd-Queue-Id: C60A7100020 X-Stat-Signature: nh6ckzstzgcugiijzu8zchnz4b9ixrnp X-Rspam-User: X-HE-Tag: 1711378660-305306 X-HE-Meta: U2FsdGVkX19clja5xAyzQscPfZYSLOauJ9Kb/qDM3/QIqAbaImycrGplLRt4/EKAPVxukdvDl4XUPljJJUZJz8FlmW0mjKS31CUjJlzBlj3qA2y4miLGS7qwsXZ7a0FaIMHwVUVZSGkvTb1L62m8XJQweKtkoVNM/W5goo0j3YYX/BlD5okVaDv9T6Q61cpVLlrgrBAV+rPUdHeaFMheEPE2E94OWPJGxahFOv9oGW8fARnimb3rL4vGFfJ2tTkykoVgHksq2+ulmOuZA9I8Zwm1/1mQUWQ2/1u27OX15eGc6Y5nJODfVQ6rODNv5dOJFA/+m0yHjffLbFjhynPXqOhasrxB3RpFaGcyyYLoTJYYMLfojBz7lC8+izJfy83iXtmfkOMh/fn0oEH7idLk7xbKSyAIS9smBOSaMfapUVW2Nrmpt1eFOsA3CPJo/xv1Dz4cE70Hy8kzONA7flsMo4Jcg/OFrcUMIWEkmr2Y3arqnQdk5sl/UozEJ79kU/A2yILr8HwPvtDJkwp1lMhGx4zXtDyTCVFxpWKruuX/wQcAxY/q5SY781g8L4mGpPI6QA4bWyAfoVlzIm3XFuy5JUsuBnVcg97gEvkNgyeOpzZLWKUowg6XAyzSvEMbEcmR+eqtmofDjyqatqbkltx7yf+/6bFlHKlO9H6Z09enkh9NYej26IaAWCERubbMJKVI+o2xWZkx7YD/2aiBeLvp3qoRwCLqMWof/ka+DrFIGS3OgBeK4ok2BaIwIppV9ymi9qqOuBnK6PVSBdIujM1UQvGJNPGCfPszjsRgjltLxL65ZraCZMK7UggS//xSuuJGRwRDEOSjysOiGvsTcuW0Uu9P4RSym1OQ+P4R5GP4Fjg7dmM84pM7v3OWn29CxlX06tX817ndxhAAvRfcvk7xOs0We+tne0mAOrTH+3lQIKqwPulQtx6suGLB+ErD6MHVmzbB9kIkAJthMbP41Y7 Gz0MuE+M Hpv4zlZ2xDAOBxb8/5AZ51XICdhSUSCEG+sYmAoepYVJwInP4poqsny4z7YqtMnLYQSnxz5M2emOlNUJGYCzGZUzzqPo25MukmPu7dNtln2rQswNcq5bDoZMN2QPKsFFwL/Z9lESijGcrYZE5dql7aU/CQ0v8LNFG+bqkzOyrQ5DJtWm3WU9r0MHouPW41KG+fXMYqIG/tzAsr134me/1/ONaSQ== 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: Nobody calls calc_memmap_size() now. Signed-off-by: Baoquan He Reviewed-by: Mike Rapoport (IBM) --- mm/mm_init.c | 20 -------------------- 1 file changed, 20 deletions(-) diff --git a/mm/mm_init.c b/mm/mm_init.c index 7f71e56e83f3..e269a724f70e 100644 --- a/mm/mm_init.c +++ b/mm/mm_init.c @@ -1331,26 +1331,6 @@ static void __init calculate_node_totalpages(struct pglist_data *pgdat, pr_debug("On node %d totalpages: %lu\n", pgdat->node_id, realtotalpages); } -static unsigned long __init calc_memmap_size(unsigned long spanned_pages, - unsigned long present_pages) -{ - unsigned long pages = spanned_pages; - - /* - * Provide a more accurate estimation if there are holes within - * the zone and SPARSEMEM is in use. If there are holes within the - * zone, each populated memory region may cost us one or two extra - * memmap pages due to alignment because memmap pages for each - * populated regions may not be naturally aligned on page boundary. - * So the (present_pages >> 4) heuristic is a tradeoff for that. - */ - if (spanned_pages > present_pages + (present_pages >> 4) && - IS_ENABLED(CONFIG_SPARSEMEM)) - pages = present_pages; - - return PAGE_ALIGN(pages * sizeof(struct page)) >> PAGE_SHIFT; -} - #ifdef CONFIG_TRANSPARENT_HUGEPAGE static void pgdat_init_split_queue(struct pglist_data *pgdat) { From patchwork Mon Mar 25 14:56:46 2024 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Baoquan He X-Patchwork-Id: 13602381 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 0F030C54E58 for ; Mon, 25 Mar 2024 14:57:49 +0000 (UTC) Received: by kanga.kvack.org (Postfix) id 9ABA26B00AC; Mon, 25 Mar 2024 10:57:48 -0400 (EDT) Received: by kanga.kvack.org (Postfix, from userid 40) id 95D626B00AD; Mon, 25 Mar 2024 10:57:48 -0400 (EDT) X-Delivered-To: int-list-linux-mm@kvack.org Received: by kanga.kvack.org (Postfix, from userid 63042) id 7FC9D6B00AE; Mon, 25 Mar 2024 10:57:48 -0400 (EDT) X-Delivered-To: linux-mm@kvack.org Received: from relay.hostedemail.com (smtprelay0015.hostedemail.com [216.40.44.15]) by kanga.kvack.org (Postfix) with ESMTP id 6C54A6B00AC for ; Mon, 25 Mar 2024 10:57:48 -0400 (EDT) Received: from smtpin01.hostedemail.com (a10.router.float.18 [10.200.18.1]) by unirelay08.hostedemail.com (Postfix) with ESMTP id 12BF81403BC for ; Mon, 25 Mar 2024 14:57:48 +0000 (UTC) X-FDA: 81935865816.01.FDF101A Received: from us-smtp-delivery-124.mimecast.com (us-smtp-delivery-124.mimecast.com [170.10.133.124]) by imf09.hostedemail.com (Postfix) with ESMTP id 2D036140020 for ; Mon, 25 Mar 2024 14:57:45 +0000 (UTC) Authentication-Results: imf09.hostedemail.com; dkim=pass header.d=redhat.com header.s=mimecast20190719 header.b=g1T9Ehuw; spf=pass (imf09.hostedemail.com: domain of bhe@redhat.com designates 170.10.133.124 as permitted sender) smtp.mailfrom=bhe@redhat.com; dmarc=pass (policy=none) header.from=redhat.com ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=hostedemail.com; s=arc-20220608; t=1711378666; 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:content-transfer-encoding: in-reply-to:in-reply-to:references:references:dkim-signature; bh=5/dwNQotPOuDzP94j8tfuuqXGBTyVS8xmsMLBZwx3Fc=; b=k0x7fGZN+HNJzVEuZD6MG9UbfrvBkdGhcVWOpRAoWVTQUzuLrojVaqxZE+lGxEYYY1Zxjc CVeOBkRpuask9JWb9JP1fC5quw0De3QQVXWOKh4/Cr3Foh5IGGkT+00J4cl77Gvn4YmalR perwwJay2anY/VEVENyomD5D4KbIEnA= ARC-Seal: i=1; s=arc-20220608; d=hostedemail.com; t=1711378666; a=rsa-sha256; cv=none; b=r+3tFFc5WxWsz5SWp2eXnkuFSvgt7F9euQFqsaq0Bi58WHpojsL7UnNPJJe7H0vtgOxnTy qgDJ/z6CIH/jSE2X7d/5AiaFZ/4Or0Z7ZV2eK/DhqNmzaax2M7KGMBQ0+94TnP+9vrWr7Q vMyPWDJRDxsaOuAlbGCFW4P/53LRhTM= ARC-Authentication-Results: i=1; imf09.hostedemail.com; dkim=pass header.d=redhat.com header.s=mimecast20190719 header.b=g1T9Ehuw; spf=pass (imf09.hostedemail.com: domain of bhe@redhat.com designates 170.10.133.124 as permitted sender) smtp.mailfrom=bhe@redhat.com; dmarc=pass (policy=none) header.from=redhat.com DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=redhat.com; s=mimecast20190719; t=1711378665; h=from:from: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:content-transfer-encoding: in-reply-to:in-reply-to:references:references; bh=5/dwNQotPOuDzP94j8tfuuqXGBTyVS8xmsMLBZwx3Fc=; b=g1T9EhuwMSRjTBrSWmBZpDLZs/o2p9lmul3gDhJ8vDE0WbJ8HSZaHoJWQhiRwyE3GysgpZ xYLYtRjuu5E4DgFheFieDMGHfTwbNSzVioOYeXAqD58T80mW4anflRxQImtTAwDMw29MQd rz8WTtXWx1ddXcQUta4UNzGdIVF1IF8= Received: from mimecast-mx02.redhat.com (mx-ext.redhat.com [66.187.233.73]) by relay.mimecast.com with ESMTP with STARTTLS (version=TLSv1.3, cipher=TLS_AES_256_GCM_SHA384) id us-mta-344-JOnOfEttPF6UEAmFRgPLYw-1; Mon, 25 Mar 2024 10:57:41 -0400 X-MC-Unique: JOnOfEttPF6UEAmFRgPLYw-1 Received: from smtp.corp.redhat.com (int-mx01.intmail.prod.int.rdu2.redhat.com [10.11.54.1]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (2048 bits) server-digest SHA256) (No client certificate requested) by mimecast-mx02.redhat.com (Postfix) with ESMTPS id B01963811F22; Mon, 25 Mar 2024 14:57:40 +0000 (UTC) Received: from MiWiFi-R3L-srv.redhat.com (unknown [10.72.116.12]) by smtp.corp.redhat.com (Postfix) with ESMTP id D62983C22; Mon, 25 Mar 2024 14:57:37 +0000 (UTC) From: Baoquan He To: linux-mm@kvack.org Cc: linux-kernel@vger.kernel.org, x86@kernel.org, linuxppc-dev@lists.ozlabs.org, akpm@linux-foundation.org, rppt@kernel.org, Baoquan He Subject: [PATCH v2 6/6] mm/mm_init.c: remove arch_reserved_kernel_pages() Date: Mon, 25 Mar 2024 22:56:46 +0800 Message-ID: <20240325145646.1044760-7-bhe@redhat.com> In-Reply-To: <20240325145646.1044760-1-bhe@redhat.com> References: <20240325145646.1044760-1-bhe@redhat.com> MIME-Version: 1.0 Content-type: text/plain X-Scanned-By: MIMEDefang 3.4.1 on 10.11.54.1 X-Rspamd-Queue-Id: 2D036140020 X-Rspam-User: X-Rspamd-Server: rspam11 X-Stat-Signature: cgmjuxs14bpda8ozod4y313k6k39tnce X-HE-Tag: 1711378665-149290 X-HE-Meta: U2FsdGVkX1/E5lx4LK2bxAodToLU/h8cp29GKGAGjKnZiW2JxNcciqBxv3TKmz2BIcFnsY9JxJy8aMCfcwbkQyGeKI7ZiRmCSHH6FzqlTxwjiKsaZFUKUqF11FotaPmK+S4+QwfYriia10aP20kJcuV6KA3+1/0y4lfhFpEVjJq1pDPYd3UM6Vd3vJuTyaa/B+MgtnSwhCt4Vp7gqUTPEooHiWLFZPuT6iWbYV0qiM/w1d+6F6uafYSndBpc+10z5aGdDbPCDp50LQeTA01povKCeaM5q+EeXAvTez8e/OvQwyCM0gH6RAWFmLa2h1H5Tja0BRVxGrVb1cxg6u/TioRHmQpxJLZpbjgcbM/9sseKlRRESczF3MgQQQLkDKWCqZJEqJN0Iqpg53gvFZhvosKVibbDkxVBDwUrgWDU+BNDF2sjTwkSeRIWMDq1DDbFnvT6q0Axa7uXiYYtOOKIngBbZNENglfZIZrxKkbKT0/pRxn7PUfzDwBH9d8RmthDFTAjiVvtUFZmW43rXTu/jbz3GcVubv1IfNO4ePR2Q0dda9830UBgkk53VocyuTmfpOZn1/ZCNQVbgXahhksA3QiN/Fk+5DG1q8ZrM/d0lrdBmSuXmyYDZ0R26JDtErJEJlhcuq7EvxeMHd+/G8ibR8zieIIK9BrTDBe7MpEcmJP/gnJylTpl3/+hDYPS32O+BRo4b0NtliBUNW7E9KpFt0E20d7ZeILB4v+lUkMi+uKJ1TnYPV+JQ2b83LajaoLKM4GUn/sifa1jg3hAugZzPNaPZpUyPQKay42gGMBSRUQi9xIbkuG7tlnz4v7jqzUG+dN5F1qb2gh6Ps+JAhtRXYN2C6i4+d1k6TcJ9do1Nhqs4d0MFVIdwpPv8wE03nbM4McqLzAbZPlh7PIztxoh2MosknoL6R1u6ehSvO98OzRzPY25sj8x0wGN16plK3sYIMJyY99dju/zngxbzL7 rpiLibZD T/HXfDrvH/IZXwY1x4wTk561blmZjs39M84Vft9lmOpekqxviuuukYZM/cfOmtFNlimWrO39M6Q42vWJ8Xym5DugGhlyWa9GH2nlQlVC76vcMQxlYE5qBYiVPYaLJiW6rxLhZtdS1qj2XY1LVwvlmujzde/ni9MnJ7ZQrC7Amkcw/BSxfEAEUhV28MBmtYlhN8awV60QM4P6YZoLfTE8Wn7HBBw== 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: Since the current calculation of calc_nr_kernel_pages() has taken into consideration of kernel reserved memory, no need to have arch_reserved_kernel_pages() any more. Signed-off-by: Baoquan He Reviewed-by: Mike Rapoport (IBM) Reviewed-by: Mike Rapoport (IBM) --- arch/powerpc/include/asm/mmu.h | 4 ---- arch/powerpc/kernel/fadump.c | 5 ----- include/linux/mm.h | 3 --- mm/mm_init.c | 12 ------------ 4 files changed, 24 deletions(-) diff --git a/arch/powerpc/include/asm/mmu.h b/arch/powerpc/include/asm/mmu.h index 3b72c7ed24cf..aa5c0fd5edb1 100644 --- a/arch/powerpc/include/asm/mmu.h +++ b/arch/powerpc/include/asm/mmu.h @@ -406,9 +406,5 @@ extern void *abatron_pteptrs[2]; #include #endif -#if defined(CONFIG_FA_DUMP) || defined(CONFIG_PRESERVE_FA_DUMP) -#define __HAVE_ARCH_RESERVED_KERNEL_PAGES -#endif - #endif /* __KERNEL__ */ #endif /* _ASM_POWERPC_MMU_H_ */ diff --git a/arch/powerpc/kernel/fadump.c b/arch/powerpc/kernel/fadump.c index d14eda1e8589..ae8c7619e597 100644 --- a/arch/powerpc/kernel/fadump.c +++ b/arch/powerpc/kernel/fadump.c @@ -1735,8 +1735,3 @@ static void __init fadump_reserve_crash_area(u64 base) memblock_reserve(mstart, msize); } } - -unsigned long __init arch_reserved_kernel_pages(void) -{ - return memblock_reserved_size() / PAGE_SIZE; -} diff --git a/include/linux/mm.h b/include/linux/mm.h index ad19350e1538..ab1ba0a31429 100644 --- a/include/linux/mm.h +++ b/include/linux/mm.h @@ -3221,9 +3221,6 @@ static inline void show_mem(void) extern long si_mem_available(void); extern void si_meminfo(struct sysinfo * val); extern void si_meminfo_node(struct sysinfo *val, int nid); -#ifdef __HAVE_ARCH_RESERVED_KERNEL_PAGES -extern unsigned long arch_reserved_kernel_pages(void); -#endif extern __printf(3, 4) void warn_alloc(gfp_t gfp_mask, nodemask_t *nodemask, const char *fmt, ...); diff --git a/mm/mm_init.c b/mm/mm_init.c index e269a724f70e..089dc60159e9 100644 --- a/mm/mm_init.c +++ b/mm/mm_init.c @@ -2373,17 +2373,6 @@ void __init page_alloc_init_late(void) page_alloc_sysctl_init(); } -#ifndef __HAVE_ARCH_RESERVED_KERNEL_PAGES -/* - * Returns the number of pages that arch has reserved but - * is not known to alloc_large_system_hash(). - */ -static unsigned long __init arch_reserved_kernel_pages(void) -{ - return 0; -} -#endif - /* * Adaptive scale is meant to reduce sizes of hash tables on large memory * machines. As memory size is increased the scale is also increased but at @@ -2426,7 +2415,6 @@ void *__init alloc_large_system_hash(const char *tablename, if (!numentries) { /* round applicable memory size up to nearest megabyte */ numentries = nr_kernel_pages; - numentries -= arch_reserved_kernel_pages(); /* It isn't necessary when PAGE_SIZE >= 1MB */ if (PAGE_SIZE < SZ_1M)