Commit c4a5699d authored by Breno Leitao's avatar Breno Leitao Committed by Will Deacon
Browse files

arm64: remove CONFIG_VMAP_STACK conditionals from irq stack setup



With VMAP_STACK always enabled on arm64, drop the CONFIG_VMAP_STACK
checks and legacy irq stack allocation from arch/arm64/kernel/irq.c. The
code now unconditionally uses the VMAP_STACK path for irq stack
initialization, simplifying the logic.

Signed-off-by: default avatarBreno Leitao <leitao@debian.org>
Acked-by: default avatarArd Biesheuvel <ardb@kernel.org>
Acked-by: default avatarMark Rutland <mark.rutland@arm.com>
Link: https://lore.kernel.org/r/20250707-arm64_vmap-v1-4-8de98ca0f91c@debian.org


Signed-off-by: default avatarWill Deacon <will@kernel.org>
parent 0909c719
Loading
Loading
Loading
Loading
+0 −13
Original line number Diff line number Diff line
@@ -51,7 +51,6 @@ static void init_irq_scs(void)
			scs_alloc(early_cpu_to_node(cpu));
}

#ifdef CONFIG_VMAP_STACK
static void __init init_irq_stacks(void)
{
	int cpu;
@@ -62,18 +61,6 @@ static void __init init_irq_stacks(void)
		per_cpu(irq_stack_ptr, cpu) = p;
	}
}
#else
/* irq stack only needs to be 16 byte aligned - not IRQ_STACK_SIZE aligned. */
DEFINE_PER_CPU_ALIGNED(unsigned long [IRQ_STACK_SIZE/sizeof(long)], irq_stack);

static void init_irq_stacks(void)
{
	int cpu;

	for_each_possible_cpu(cpu)
		per_cpu(irq_stack_ptr, cpu) = per_cpu(irq_stack, cpu);
}
#endif

#ifndef CONFIG_PREEMPT_RT
static void ____do_softirq(struct pt_regs *regs)