[PATCH 0/6] Drop the per-node-mode exception handlers

From: Jinyang He
Date: Fri Feb 24 2023 - 05:11:42 EST


This series drops the per-node-mode exception handlers.

The UnixBench test results are as follows, Loongson-3C5000L-LL, CLFS7.1,

a, DYNAMIC_FTRACE enabled, KASLR disabled, no-pernode
b, DYNAMIC_FTRACE enabled, KASLR disabled, pernode
c, DYNAMIC_FTRACE enabled, KASLR enabled, no-pernode
1 cpu 16 cpus
a-1, 782.6 4025.1
a-2, 783.3 3994.5
a-3, 784.2 4045.5
b-1, 775.5 3913.0
b-2, 763.9 3833.8
b-3, 777.7 3930.4
c-1, 811.0 3950.4
c-2, 795.7 3952.9

The results were almost identical, as Huacai said, the performance
difference between pernode and nopernode is negligible

Jinyang He (6):
LoongArch: Rename handle_syscall to handle_sys
LoongArch: Move the content defined by SYM_DATA to data or rodata
section
LoongArch: Create a exception handlers section
LoongArch: Drop pernode exception handlers
LoongArch: Fix up the prologue unwinder unwind exception frame
LoongArch: Clean up la_abs macro

arch/loongarch/include/asm/asmmacro.h | 17 -----
arch/loongarch/include/asm/setup.h | 14 ----
arch/loongarch/include/asm/stackframe.h | 2 +-
arch/loongarch/include/asm/traps.h | 81 ++++++++++++++++++++++
arch/loongarch/include/asm/unwind.h | 2 +-
arch/loongarch/kernel/entry.S | 16 +++--
arch/loongarch/kernel/genex.S | 73 +++++++++++++-------
arch/loongarch/kernel/head.S | 2 +
arch/loongarch/kernel/mcount_dyn.S | 2 +
arch/loongarch/kernel/relocate.c | 28 --------
arch/loongarch/kernel/traps.c | 74 +-------------------
arch/loongarch/kernel/unwind_prologue.c | 91 +++----------------------
arch/loongarch/kernel/vmlinux.lds.S | 37 +++++++---
arch/loongarch/mm/cache.c | 6 --
arch/loongarch/mm/tlb.c | 40 -----------
arch/loongarch/mm/tlbex.S | 67 +++++++++++-------
arch/loongarch/power/suspend.c | 5 +-
17 files changed, 231 insertions(+), 326 deletions(-)
create mode 100644 arch/loongarch/include/asm/traps.h

--
2.34.3