linux/arch/sh/mm
Mike Rapoport (Microsoft) 4267739cab arch, mm: consolidate initialization of SPARSE memory model
Every architecture calls sparse_init() during setup_arch() although the
data structures created by sparse_init() are not used until the
initialization of the core MM.

Beside the code duplication, calling sparse_init() from architecture
specific code causes ordering differences of vmemmap and HVO
initialization on different architectures.

Move the call to sparse_init() from architecture specific code to
free_area_init() to ensure that vmemmap and HVO initialization order is
always the same.

Link: https://lkml.kernel.org/r/20260111082105.290734-25-rppt@kernel.org
Signed-off-by: Mike Rapoport (Microsoft) <rppt@kernel.org>
Cc: Alexander Gordeev <agordeev@linux.ibm.com>
Cc: Alex Shi <alexs@kernel.org>
Cc: Andreas Larsson <andreas@gaisler.com>
Cc: "Borislav Petkov (AMD)" <bp@alien8.de>
Cc: Catalin Marinas <catalin.marinas@arm.com>
Cc: David Hildenbrand <david@kernel.org>
Cc: David S. Miller <davem@davemloft.net>
Cc: Dinh Nguyen <dinguyen@kernel.org>
Cc: Geert Uytterhoeven <geert@linux-m68k.org>
Cc: Guo Ren <guoren@kernel.org>
Cc: Heiko Carstens <hca@linux.ibm.com>
Cc: Helge Deller <deller@gmx.de>
Cc: Huacai Chen <chenhuacai@kernel.org>
Cc: Ingo Molnar <mingo@redhat.com>
Cc: Johannes Berg <johannes@sipsolutions.net>
Cc: John Paul Adrian Glaubitz <glaubitz@physik.fu-berlin.de>
Cc: Jonathan Corbet <corbet@lwn.net>
Cc: Klara Modin <klarasmodin@gmail.com>
Cc: Liam Howlett <liam.howlett@oracle.com>
Cc: Lorenzo Stoakes <lorenzo.stoakes@oracle.com>
Cc: Magnus Lindholm <linmag7@gmail.com>
Cc: Matt Turner <mattst88@gmail.com>
Cc: Max Filippov <jcmvbkbc@gmail.com>
Cc: Michael Ellerman <mpe@ellerman.id.au>
Cc: Michal Hocko <mhocko@suse.com>
Cc: Michal Simek <monstr@monstr.eu>
Cc: Muchun Song <muchun.song@linux.dev>
Cc: Oscar Salvador <osalvador@suse.de>
Cc: Palmer Dabbelt <palmer@dabbelt.com>
Cc: Pratyush Yadav <pratyush@kernel.org>
Cc: Richard Weinberger <richard@nod.at>
Cc: "Ritesh Harjani (IBM)" <ritesh.list@gmail.com>
Cc: Russell King <linux@armlinux.org.uk>
Cc: Stafford Horne <shorne@gmail.com>
Cc: Suren Baghdasaryan <surenb@google.com>
Cc: Thomas Bogendoerfer <tsbogend@alpha.franken.de>
Cc: Thomas Gleixner <tglx@linutronix.de>
Cc: Vasily Gorbik <gor@linux.ibm.com>
Cc: Vineet Gupta <vgupta@kernel.org>
Cc: Vlastimil Babka <vbabka@suse.cz>
Cc: Will Deacon <will@kernel.org>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
2026-01-26 20:02:18 -08:00
..
alignment.c proc: remove PDE_DATA() completely 2022-01-22 08:33:37 +02:00
asids-debugfs.c sh: mm: Convert to DEFINE_SHOW_ATTRIBUTE 2021-01-06 19:55:24 -05:00
cache-debugfs.c sh: mm: Convert to DEFINE_SHOW_ATTRIBUTE 2021-01-06 19:55:24 -05:00
cache-j2.c sh: implement the new page table range API 2023-08-24 16:20:23 -07:00
cache-sh2.c treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 211 2019-05-30 11:29:53 -07:00
cache-sh2a.c treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 211 2019-05-30 11:29:53 -07:00
cache-sh3.c mm: remove unneeded includes of <asm/pgalloc.h> 2020-08-07 11:33:26 -07:00
cache-sh4.c mm: introduce memdesc_flags_t 2025-09-13 16:55:07 -07:00
cache-sh7705.c mm: introduce memdesc_flags_t 2025-09-13 16:55:07 -07:00
cache-shx3.c sh: cache: Move forward declarations to <asm/cacheflush.h> 2024-05-02 12:01:31 +02:00
cache.c mm: introduce memdesc_flags_t 2025-09-13 16:55:07 -07:00
consistent.c sh: remove call to memset after dma_alloc_coherent 2020-08-14 22:05:03 -04:00
extable_32.c License cleanup: add SPDX GPL-2.0 license identifier to files with no license 2017-11-02 11:10:55 +01:00
fault.c mm/fault: convert remaining simple cases to lock_mm_and_find_vma() 2023-06-24 14:12:58 -07:00
flush-sh4.c License cleanup: add SPDX GPL-2.0 license identifier to files with no license 2017-11-02 11:10:55 +01:00
hugetlbpage.c mm/treewide: remove pXd_huge() 2024-04-25 20:55:47 -07:00
init.c arch, mm: consolidate initialization of SPARSE memory model 2026-01-26 20:02:18 -08:00
ioremap.c mm/ioremap: pass pgprot_t to ioremap_prot() instead of unsigned long 2025-03-16 22:06:23 -07:00
ioremap.h sh: move ioremap_fixed details out of <asm/io.h> 2020-08-14 22:05:15 -04:00
ioremap_fixed.c Cleanup, SECCOMP_FILTER support, message printing fixes, and other 2020-08-15 18:50:32 -07:00
Kconfig sh: Drop support for memory hotplug and memory hotremove 2024-07-14 10:52:19 +02:00
kmap.c mm: introduce memdesc_flags_t 2025-09-13 16:55:07 -07:00
Makefile sh: remove -Werror from Makefiles 2020-08-14 22:05:13 -04:00
mmap.c mm: make arch_get_unmapped_area() take vm_flags by default 2024-09-09 16:39:13 -07:00
nommu.c sh: nommu: Add missing #include <asm/cacheflush.h> 2024-05-02 12:01:24 +02:00
numa.c arch, mm: move definition of node_data to generic code 2024-09-03 21:15:28 -07:00
pgtable.c sh: pgtable: Fix missing prototypes 2024-05-02 12:01:23 +02:00
pmb.c syscore: Pass context data to callbacks 2025-11-14 10:01:52 +01:00
sram.c sh: fix up fallout from system.h disintegration. 2012-03-30 19:29:57 +09:00
tlb-debugfs.c sh: no need to check return value of debugfs_create functions 2019-06-03 15:39:40 +02:00
tlb-pteaex.c Disintegrate asm/system.h for SH 2012-03-28 18:30:03 +01:00
tlb-sh3.c mm: remove unneeded includes of <asm/pgalloc.h> 2020-08-07 11:33:26 -07:00
tlb-sh4.c treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 211 2019-05-30 11:29:53 -07:00
tlb-urb.c sh: update the TLB replacement counter for entry wiring. 2010-03-26 11:37:16 +09:00
tlbex_32.c sh: tlb: Add missing forward declaration for handle_tlbmiss() 2024-05-02 12:01:23 +02:00
tlbflush_32.c sh: Provide a global TLB flush for U/I-TLB clear. 2010-07-02 15:44:09 +09:00
uncached.c treewide: replace #include <asm/sizes.h> with #include <linux/sizes.h> 2019-05-14 19:52:52 -07:00