[PATCH v3 0/2] riscv: switch to relative extable
From: Jisheng Zhang
Date: Thu Oct 21 2021 - 12:27:01 EST
From: Jisheng Zhang <jszhang@xxxxxxxxxx>
Similar as other architectures such as arm64, x86 and so on, use
offsets relative to the exception table entry values rather than
absolute addresses for both the exception locationand the fixup.
patch1 consolidates the __ex_table construction, it's a great code
clean up even w/o the 2nd patch.
patch2 does the real job.
Since v2:
- directly check R_RISCV_SUB32 in __ex_table instead of adding
addend_riscv_rela()
Since v1:
- fix build error for NOMMU case, thank lkp@xxxxxxxxx
Jisheng Zhang (2):
riscv: consolidate __ex_table construction
riscv: switch to relative exception tables
arch/riscv/include/asm/Kbuild | 1 -
arch/riscv/include/asm/extable.h | 25 ++++++++++++++++++++
arch/riscv/include/asm/futex.h | 12 +++-------
arch/riscv/include/asm/uaccess.h | 40 +++++++++++---------------------
arch/riscv/lib/uaccess.S | 4 ++--
arch/riscv/mm/extable.c | 2 +-
scripts/mod/modpost.c | 15 ++++++++++++
scripts/sorttable.c | 2 +-
8 files changed, 61 insertions(+), 40 deletions(-)
create mode 100644 arch/riscv/include/asm/extable.h
--
2.33.0