On Tue, 21 May 2024 18:38:42 -0700 Andrii Nakryiko <andrii@xxxxxxxxxx> wrote: > This helper is needed in another file, so make it a bit more uniquely > named and expose it internally. > > Signed-off-by: Andrii Nakryiko <andrii@xxxxxxxxxx> Sorry, I think this conflicts with https://lore.kernel.org/all/20240611112158.40795-4-jolsa@xxxxxxxxxx/ And that is already picked. Thanks, > --- > include/linux/uprobes.h | 1 + > kernel/events/uprobes.c | 6 +++--- > 2 files changed, 4 insertions(+), 3 deletions(-) > > diff --git a/include/linux/uprobes.h b/include/linux/uprobes.h > index f46e0ca0169c..0c57eec85339 100644 > --- a/include/linux/uprobes.h > +++ b/include/linux/uprobes.h > @@ -138,6 +138,7 @@ extern bool arch_uretprobe_is_alive(struct return_instance *ret, enum rp_check c > extern bool arch_uprobe_ignore(struct arch_uprobe *aup, struct pt_regs *regs); > extern void arch_uprobe_copy_ixol(struct page *page, unsigned long vaddr, > void *src, unsigned long len); > +extern unsigned long uprobe_get_trampoline_vaddr(void); > #else /* !CONFIG_UPROBES */ > struct uprobes_state { > }; > diff --git a/kernel/events/uprobes.c b/kernel/events/uprobes.c > index 8ae0eefc3a34..d60d24f0f2f4 100644 > --- a/kernel/events/uprobes.c > +++ b/kernel/events/uprobes.c > @@ -1827,7 +1827,7 @@ void uprobe_copy_process(struct task_struct *t, unsigned long flags) > * > * Returns -1 in case the xol_area is not allocated. > */ > -static unsigned long get_trampoline_vaddr(void) > +unsigned long uprobe_get_trampoline_vaddr(void) > { > struct xol_area *area; > unsigned long trampoline_vaddr = -1; > @@ -1878,7 +1878,7 @@ static void prepare_uretprobe(struct uprobe *uprobe, struct pt_regs *regs) > if (!ri) > return; > > - trampoline_vaddr = get_trampoline_vaddr(); > + trampoline_vaddr = uprobe_get_trampoline_vaddr(); > orig_ret_vaddr = arch_uretprobe_hijack_return_addr(trampoline_vaddr, regs); > if (orig_ret_vaddr == -1) > goto fail; > @@ -2187,7 +2187,7 @@ static void handle_swbp(struct pt_regs *regs) > int is_swbp; > > bp_vaddr = uprobe_get_swbp_addr(regs); > - if (bp_vaddr == get_trampoline_vaddr()) > + if (bp_vaddr == uprobe_get_trampoline_vaddr()) > return handle_trampoline(regs); > > uprobe = find_active_uprobe(bp_vaddr, &is_swbp); > -- > 2.43.0 > -- Masami Hiramatsu (Google) <mhiramat@xxxxxxxxxx>