> [ 8.134886] arch_prepare_optimized_kprobe+0xd5/0x171 > [ 8.134886] arch_prepare_optimized_kprobe+0xd5/0x171
Probably this: /* Copy arch-dep-instance from template */ memcpy(buf, &optprobe_template_entry, TMPL_END_IDX); Not a real bug, just technically undefined because these are u32: typedef u32 kprobe_opcode_t; extern __visible kprobe_opcode_t optprobe_template_entry; extern __visible kprobe_opcode_t optprobe_template_val; extern __visible kprobe_opcode_t optprobe_template_call; extern __visible kprobe_opcode_t optprobe_template_end; extern __visible kprobe_opcode_t optprobe_template_sub_sp; extern __visible kprobe_opcode_t optprobe_template_add_sp; extern __visible kprobe_opcode_t optprobe_template_restore_begin; extern __visible kprobe_opcode_t optprobe_template_restore_orig_insn; extern __visible kprobe_opcode_t optprobe_template_restore_end; Could be switched to unknown size arrays like optprobe_template_entry[] but it might be best to just mark the kprobe code with #define __NO_FORTIFY.