From patchwork Sun Aug 2 16:35:44 2020 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Mike Rapoport X-Patchwork-Id: 11696591 Return-Path: Received: from mail.kernel.org (pdx-korg-mail-1.web.codeaurora.org [172.30.200.123]) by pdx-korg-patchwork-2.web.codeaurora.org (Postfix) with ESMTP id F39751731 for ; Sun, 2 Aug 2020 16:36:17 +0000 (UTC) Received: from vger.kernel.org (vger.kernel.org [23.128.96.18]) by mail.kernel.org (Postfix) with ESMTP id D4AAF20759 for ; Sun, 2 Aug 2020 16:36:17 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=default; t=1596386177; bh=wmlXgD0X96/wIUhcM0J0CaJw2U1ECwrd3G0AsFvEO4Y=; h=From:To:Cc:Subject:Date:List-ID:From; b=gxiwg7NnbCf/+7+Ozqv1RVYUmTZBntz43Kus09NM/ox5Trb8IKAA7WryBHeFMKbwu +9+D9ktoR9xVO2Q1YxYGZArv6z2n2mGZE8y5TH09EPje/2HFJQEjwd0W2qJDqiuCqk /Wl/66MKyj42nSvnvNAFlE9HHZ9vJ+Bfa6H6TOB4= Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1725780AbgHBQgR (ORCPT ); Sun, 2 Aug 2020 12:36:17 -0400 Received: from mail.kernel.org ([198.145.29.99]:44992 "EHLO mail.kernel.org" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1725768AbgHBQgR (ORCPT ); Sun, 2 Aug 2020 12:36:17 -0400 Received: from aquarius.haifa.ibm.com (nesher1.haifa.il.ibm.com [195.110.40.7]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-SHA256 (128/128 bits)) (No client certificate requested) by mail.kernel.org (Postfix) with ESMTPSA id A84AE20738; Sun, 2 Aug 2020 16:36:05 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=default; t=1596386176; bh=wmlXgD0X96/wIUhcM0J0CaJw2U1ECwrd3G0AsFvEO4Y=; h=From:To:Cc:Subject:Date:From; b=LIo4s4fRmWHT6ME6g/ZjvzQ7HJRSuVu2NYrDbrd0chKpt6+b3ohxjDTyat5mFYLn4 aeP921+3zEtXOmJIAFZ0JgLAmKkmGOMoKwCqYXkOSHVuvR6uN6W8dMclI8JjGsPtcE w3N+AA1SHOYg14yG/yF0pyqesAV5aB4w9VaQvzZA= From: Mike Rapoport To: Andrew Morton Cc: Andy Lutomirski , Baoquan He , Benjamin Herrenschmidt , Borislav Petkov , Catalin Marinas , Christoph Hellwig , Dave Hansen , Emil Renner Berthing , Ingo Molnar , Hari Bathini , Marek Szyprowski , Max Filippov , Michael Ellerman , Michal Simek , Mike Rapoport , Mike Rapoport , Palmer Dabbelt , Paul Mackerras , Paul Walmsley , Peter Zijlstra , Russell King , Stafford Horne , Thomas Gleixner , Will Deacon , Yoshinori Sato , clang-built-linux@googlegroups.com, iommu@lists.linux-foundation.org, linux-arch@vger.kernel.org, linux-arm-kernel@lists.infradead.org, linux-c6x-dev@linux-c6x.org, linux-kernel@vger.kernel.org, linux-mips@vger.kernel.org, linux-mm@kvack.org, linux-riscv@lists.infradead.org, linux-s390@vger.kernel.org, linux-sh@vger.kernel.org, linux-xtensa@linux-xtensa.org, linuxppc-dev@lists.ozlabs.org, openrisc@lists.librecores.org, sparclinux@vger.kernel.org, uclinux-h8-devel@lists.sourceforge.jp, x86@kernel.org Subject: [PATCH v2 00/17] memblock: seasonal cleaning^w cleanup Date: Sun, 2 Aug 2020 19:35:44 +0300 Message-Id: <20200802163601.8189-1-rppt@kernel.org> X-Mailer: git-send-email 2.26.2 MIME-Version: 1.0 Sender: linux-mips-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-mips@vger.kernel.org From: Mike Rapoport Hi, These patches simplify several uses of memblock iterators and hide some of the memblock implementation details from the rest of the system. The patches are on top of v5.8-rc7 + cherry-pick of "mm/sparse: cleanup the code surrounding memory_present()" [1] from mmotm tree. v2 changes: * replace for_each_memblock() with two versions, one for memblock.memory and another one for memblock.reserved * fix overzealous cleanup of powerpc fadamp: keep the traversal over the memblocks, but use better suited iterators * don't remove traversal over memblock.reserved in x86 numa cleanup but replace for_each_memblock() with new for_each_reserved_mem_region() * simplify ramdisk and crash kernel allocations on x86 * drop more redundant and unused code: __next_reserved_mem_region() and memblock_mem_size() * add description of numa initialization fix on arm64 (thanks Jonathan) * add Acked and Reviewed tags [1] http://lkml.kernel.org/r/20200712083130.22919-1-rppt@kernel.org Mike Rapoport (17): KVM: PPC: Book3S HV: simplify kvm_cma_reserve() dma-contiguous: simplify cma_early_percent_memory() arm, xtensa: simplify initialization of high memory pages arm64: numa: simplify dummy_numa_init() h8300, nds32, openrisc: simplify detection of memory extents riscv: drop unneeded node initialization mircoblaze: drop unneeded NUMA and sparsemem initializations memblock: make for_each_memblock_type() iterator private memblock: make memblock_debug and related functionality private memblock: reduce number of parameters in for_each_mem_range() arch, mm: replace for_each_memblock() with for_each_mem_pfn_range() arch, drivers: replace for_each_membock() with for_each_mem_range() x86/setup: simplify initrd relocation and reservation x86/setup: simplify reserve_crashkernel() memblock: remove unused memblock_mem_size() memblock: implement for_each_reserved_mem_region() using __next_mem_region() memblock: use separate iterators for memory and reserved regions .clang-format | 4 +- arch/arm/kernel/setup.c | 18 +++-- arch/arm/mm/init.c | 59 ++++------------ arch/arm/mm/mmu.c | 39 ++++------- arch/arm/mm/pmsa-v7.c | 20 +++--- arch/arm/mm/pmsa-v8.c | 17 +++-- arch/arm/xen/mm.c | 7 +- arch/arm64/kernel/machine_kexec_file.c | 6 +- arch/arm64/kernel/setup.c | 4 +- arch/arm64/mm/init.c | 11 ++- arch/arm64/mm/kasan_init.c | 10 +-- arch/arm64/mm/mmu.c | 11 +-- arch/arm64/mm/numa.c | 15 ++--- arch/c6x/kernel/setup.c | 9 +-- arch/h8300/kernel/setup.c | 8 +-- arch/microblaze/mm/init.c | 24 ++----- arch/mips/cavium-octeon/dma-octeon.c | 12 ++-- arch/mips/kernel/setup.c | 31 +++++---- arch/mips/netlogic/xlp/setup.c | 2 +- arch/nds32/kernel/setup.c | 8 +-- arch/openrisc/kernel/setup.c | 9 +-- arch/openrisc/mm/init.c | 8 ++- arch/powerpc/kernel/fadump.c | 57 ++++++++-------- arch/powerpc/kvm/book3s_hv_builtin.c | 11 +-- arch/powerpc/mm/book3s64/hash_utils.c | 16 ++--- arch/powerpc/mm/book3s64/radix_pgtable.c | 11 ++- arch/powerpc/mm/kasan/kasan_init_32.c | 8 +-- arch/powerpc/mm/mem.c | 33 +++++---- arch/powerpc/mm/numa.c | 7 +- arch/powerpc/mm/pgtable_32.c | 8 +-- arch/riscv/mm/init.c | 34 +++------- arch/riscv/mm/kasan_init.c | 10 +-- arch/s390/kernel/crash_dump.c | 8 +-- arch/s390/kernel/setup.c | 31 +++++---- arch/s390/mm/page-states.c | 6 +- arch/s390/mm/vmem.c | 16 +++-- arch/sh/mm/init.c | 9 +-- arch/sparc/mm/init_64.c | 12 ++-- arch/x86/kernel/setup.c | 56 +++++----------- arch/x86/mm/numa.c | 2 +- arch/xtensa/mm/init.c | 55 +++------------ drivers/bus/mvebu-mbus.c | 12 ++-- drivers/irqchip/irq-gic-v3-its.c | 2 +- drivers/s390/char/zcore.c | 9 +-- include/linux/memblock.h | 65 +++++++++--------- kernel/dma/contiguous.c | 11 +-- mm/memblock.c | 85 ++++++++---------------- mm/page_alloc.c | 11 ++- mm/sparse.c | 10 ++- 49 files changed, 366 insertions(+), 561 deletions(-)