Hi Linus, This enables the percpu page allocator for risc-v as a fallback path. Separately, I just sent out a respin of Thomas' cpu hotplug related fixes for percpu_counters in [1]. I'll hopefully pull that in shortly and get it into for-next for some wider testing. [1] https://lore.kernel.org/lkml/cover.1705101789.git.dennis@xxxxxxxxxx/ Thanks, Dennis The following changes since commit 33cc938e65a98f1d29d0a18403dbbee050dcad9a: Linux 6.7-rc4 (2023-12-03 18:52:56 +0900) are available in the Git repository at: git://git.kernel.org/pub/scm/linux/kernel/git/dennis/percpu.git tags/percpu-for-6.8 for you to fetch changes up to 6b9f29b81b155af023da95f560f738f29722b306: riscv: Enable pcpu page first chunk allocator (2023-12-14 00:24:06 -0800) ---------------------------------------------------------------- percpu: - Enable percpu page allocator for risc-v. There are risc-v configurations with sparse NUMA configurations and small vmalloc space causing dynamic percpu allocations to fail as the backing chunk stride is too far apart. ---------------------------------------------------------------- Alexandre Ghiti (2): mm: Introduce flush_cache_vmap_early() riscv: Enable pcpu page first chunk allocator arch/arc/include/asm/cacheflush.h | 1 + arch/arm/include/asm/cacheflush.h | 2 ++ arch/csky/abiv1/inc/abi/cacheflush.h | 1 + arch/csky/abiv2/inc/abi/cacheflush.h | 1 + arch/m68k/include/asm/cacheflush_mm.h | 1 + arch/mips/include/asm/cacheflush.h | 2 ++ arch/nios2/include/asm/cacheflush.h | 1 + arch/parisc/include/asm/cacheflush.h | 1 + arch/riscv/Kconfig | 2 ++ arch/riscv/include/asm/cacheflush.h | 3 ++- arch/riscv/include/asm/tlbflush.h | 1 + arch/riscv/mm/kasan_init.c | 8 ++++++++ arch/riscv/mm/tlbflush.c | 5 +++++ arch/sh/include/asm/cacheflush.h | 1 + arch/sparc/include/asm/cacheflush_32.h | 1 + arch/sparc/include/asm/cacheflush_64.h | 1 + arch/xtensa/include/asm/cacheflush.h | 6 ++++-- include/asm-generic/cacheflush.h | 6 ++++++ mm/percpu.c | 8 +------- 19 files changed, 42 insertions(+), 10 deletions(-)