[PATCH 0/1] Add support for HAVE_ARCH_JUMP_LABEL

Magnus Lindholm <[email protected]>
Newsgroups org.kernel.vger.linux-alpha,org.kernel.vger.linux-kernel
Message-ID <[email protected]>
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
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.