From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001 From: Hauke Mehrtens Date: Mon, 15 Dec 2025 01:45:07 +0100 Subject: Revert "MIPS: mm: kmalloc tlb_vpn array to avoid stack overflow" This reverts commit 63a93d1cd6077d79735f804f5a4957bfb240280c. --- arch/mips/mm/tlb-r4k.c | 18 ++---------------- 1 file changed, 2 insertions(+), 16 deletions(-) --- a/arch/mips/mm/tlb-r4k.c +++ b/arch/mips/mm/tlb-r4k.c @@ -12,7 +12,6 @@ #include #include #include -#include #include #include #include @@ -523,26 +522,17 @@ static int r4k_vpn_cmp(const void *a, co * Initialise all TLB entries with unique values that do not clash with * what we have been handed over and what we'll be using ourselves. */ -static void __ref r4k_tlb_uniquify(void) +static void r4k_tlb_uniquify(void) { + unsigned long tlb_vpns[1 << MIPS_CONF1_TLBS_SIZE]; int tlbsize = current_cpu_data.tlbsize; - bool use_slab = slab_is_available(); int start = num_wired_entries(); - phys_addr_t tlb_vpn_size; - unsigned long *tlb_vpns; unsigned long vpn_mask; int cnt, ent, idx, i; vpn_mask = GENMASK(cpu_vmbits - 1, 13); vpn_mask |= IS_ENABLED(CONFIG_64BIT) ? 3ULL << 62 : 1 << 31; - tlb_vpn_size = tlbsize * sizeof(*tlb_vpns); - tlb_vpns = (use_slab ? - kmalloc(tlb_vpn_size, GFP_KERNEL) : - memblock_alloc_raw(tlb_vpn_size, sizeof(*tlb_vpns))); - if (WARN_ON(!tlb_vpns)) - return; /* Pray local_flush_tlb_all() is good enough. */ - htw_stop(); for (i = start, cnt = 0; i < tlbsize; i++, cnt++) { @@ -595,10 +585,6 @@ static void __ref r4k_tlb_uniquify(void) tlbw_use_hazard(); htw_start(); flush_micro_tlb(); - if (use_slab) - kfree(tlb_vpns); - else - memblock_free(tlb_vpns, tlb_vpn_size); } /*