On Tue, Aug 19, 2025 at 04:53:45PM +0200, Peter Zijlstra wrote:
> On Sun, Jul 20, 2025 at 01:21:18PM +0200, Jiri Olsa wrote:
> > +static void destroy_uprobe_trampoline(struct uprobe_trampoline *tramp)
> > +{
> > + /*
> > + * We do not unmap and release uprobe trampoline page itself,
> > + * because there's no easy way to make sure none of the threads
> > + * is still inside the trampoline.
> > + */
> > + hlist_del(&tramp->node);
> > + kfree(tramp);
> > +}
>
> I am somewhat confused; isn't this called from
> __mmput()->uprobe_clear_state()->arch_uprobe_clear_state ?
>
> At that time we don't have threads anymore and mm is about to be
> destroyed anyway.
ah you mean the comment, right? we need to release tramp objects
the comment is leftover from some of the previous version, it can be
removed, sorry
jirka