Re: [PATCH] riscv: kprobe: Fixup misaligned load text
From: Björn Töpel
Date: Thu Feb 02 2023 - 09:36:39 EST
Jessica Clarke <jrtc27@xxxxxxxxxx> writes:
>> + p->opcode = *insn++;
>> + if (GET_INSN_LENGTH(p->opcode) == 4)
>> + p->opcode |= *insn << 16;
>
> *insn gets promoted to int not unsigned so this is UB if bit 15 is set.
Ugh. Good catch! I guess we can't get rid of *that* explicit cast to
kprobe_opcode_t here...