Re: [PATCH 04/16] riscv: kprobes: Use generated instruction headers
From: Nam Cao
Date: Thu Jun 11 2026 - 02:14:48 EST
Charlie Jenkins via B4 Relay
<devnull+thecharlesjenkins.gmail.com@xxxxxxxxxx> writes:
> bool __kprobes simulate_c_jr(u32 opcode, unsigned long addr, struct pt_regs *regs)
> {
> - return simulate_c_jr_jalr(opcode, addr, regs, false);
> + unsigned long next_addr;
> + unsigned long *regs_ptr = (unsigned long *)regs;
> +
> + next_addr = regs_ptr[riscv_insn_c_jr_extract_xs1(opcode)];
> + instruction_pointer_set(regs, next_addr);
> +
> + regs->ra = addr + 2;
c.jr does not change ra.
> + return true;
> }
We have CONFIG_RISCV_KPROBES_KUNIT now, please try that.
Nam