On 10/09, Ralf Baechle wrote: > > <linux/uprobes.h> declares arch_uprobe_skip_sstep() as a weak function. > But as there is no definition of generic version so when trying to build > uprobes for an architecture that doesn't yet have a arch_uprobe_skip_sstep() > implementation, the vmlinux will try to call arch_uprobe_skip_sstep() > somehwere in Stupidhistan leading to a system crash. We rather want a > proper link error so remove arch_uprobe_skip_sstep(). > > Signed-off-by: Ralf Baechle <ralf@xxxxxxxxxxxxxx> > > include/linux/uprobes.h | 2 +- > 1 file changed, 1 insertion(+), 1 deletion(-) > > diff --git a/include/linux/uprobes.h b/include/linux/uprobes.h > index 2a9d75d..cec7397 100644 > --- a/include/linux/uprobes.h > +++ b/include/linux/uprobes.h > @@ -124,7 +124,7 @@ extern int uprobe_post_sstep_notifier(struct pt_regs *regs); > extern int uprobe_pre_sstep_notifier(struct pt_regs *regs); > extern void uprobe_notify_resume(struct pt_regs *regs); > extern bool uprobe_deny_signal(void); > -extern bool __weak arch_uprobe_skip_sstep(struct arch_uprobe *aup, struct pt_regs *regs); > +extern bool arch_uprobe_skip_sstep(struct arch_uprobe *aup, struct pt_regs *regs); Agreed. I'll take this patch, thanks. Oleg.