[PATCH 0/3] riscv: kgdb: Fix break size, insn patch and masking
Clément Léger
clement.leger at linux.dev
Thu Nov 12 23:16:11 PST 2026
This small series fixes a few problems that were spotted with kgdb.
First patch is the use of patch_insn_write() to set breakpoints instead
of copy_to_kernel_nofault(). This fixes the use of kgdb with
CONFIG_STRICT_KERNEL_RWX which maps text as RX.
Second patch removes the hardcoded epc += 4 with BREAK_INSTR_SIZE so
that it works with CONFIG_RISCV_ISA_C.
Last one is more of a correctness fix with respect to jalr instructions.
ISA specifies that the target address is computed by masking the LSB to
0.
Clément Léger (3):
riscv: kgdb: use patch_insn_write() to set breakpoints
riscv: kgdb: use BREAK_INSTR_SIZE instead of hardcoded value
riscv: kgdb: clear bit 0 of single-step jump targets
arch/riscv/kernel/kgdb.c | 39 ++++++++++++++++++++++++++++++++-------
1 file changed, 32 insertions(+), 7 deletions(-)
--
Clément Léger
More information about the linux-riscv
mailing list