[PATCH 0/1] Add support for HAVE_ARCH_JUMP_LABEL

From: Magnus Lindholm

Date: Thu Feb 19 2026 - 12:01:44 EST


This patch adds jump label (static key) support for Alpha.
Testing and verification were performed on an UP2000+ system.

Verification steps:

- Confirmed __jump_table section is present at runtime via
/proc/kallsyms and contains a non-zero number of entries.

- Instrumented arch_jump_label_transform() to log patch
operations and verified instruction sites toggle between:

NOP (bis $31,$31,$31, 0x47ff041f)
BR (br $31,target)

- Added temporary instrumentation in
arch_jump_label_transform() to log old/new instruction
values at each patch site, and used a Python script to
validate correct NOP/BR transitions and branch encoding,
confirming functional runtime patching.

Instruction stream synchronization uses imb()/smp_imb() via
flush_icache_range(), and runtime behavior confirms correct
I-cache coherency.

The system remained stable throughout all testing.

Magnus Lindholm (1):
alpha: Add support for HAVE_ARCH_JUMP_LABEL

arch/alpha/Kconfig | 1 +
arch/alpha/include/asm/jump_label.h | 66 +++++++++++++++++++++++
arch/alpha/kernel/Makefile | 1 +
arch/alpha/kernel/jump_label.c | 81 +++++++++++++++++++++++++++++
4 files changed, 149 insertions(+)
create mode 100644 arch/alpha/include/asm/jump_label.h
create mode 100644 arch/alpha/kernel/jump_label.c

--
2.52.0