[PATCH v2 0/7] Module relocation fixes and asm/insn.h header
Emil Renner Berthing
kernel at esmil.dk
Mon Jan 31 10:27:13 PST 2022
Apologies! I messed up v1. Please consider this patch set only.
The first patch removes a bunch of code from the asm/module.h which is
included in almost all drivers through linux/module.h. Next are two
patches to fix unaligned access when doing module relocations and do
proper range checks for auipc+jalr offsets.
I'm a little less confident about the following patches, so consider
this more of an RFC for those. The idea is to consolidate the RISC-V
instruction generation and manipulation similar to arm64's asm/insn.h
header.
/Emil
Emil Renner Berthing (7):
riscv: Remove unneeded definitions from asm/module.h
riscv: Avoid unaligned access when relocating modules
riscv: Fix auipc+jalr relocation range checks
riscv: Add asm/insn.h header
riscv: Use asm/insn.h for module relocations
riscv: Use asm/insn.h to generate plt entries
riscv: Use asm/insn.h for jump labels
arch/riscv/include/asm/insn.h | 121 ++++++++++++++
arch/riscv/include/asm/module.h | 87 ----------
arch/riscv/kernel/jump_label.c | 12 +-
arch/riscv/kernel/module-sections.c | 71 +++++++++
arch/riscv/kernel/module.c | 237 +++++++++++++---------------
5 files changed, 306 insertions(+), 222 deletions(-)
create mode 100644 arch/riscv/include/asm/insn.h
--
2.35.1
More information about the linux-riscv
mailing list