[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <aLidHRkM2jpUdvwE@krava>
Date: Wed, 3 Sep 2025 21:55:09 +0200
From: Jiri Olsa <olsajiri@...il.com>
To: Alexei Starovoitov <alexei.starovoitov@...il.com>
Cc: Jiri Olsa <olsajiri@...il.com>, Oleg Nesterov <oleg@...hat.com>,
Masami Hiramatsu <mhiramat@...nel.org>,
Peter Zijlstra <peterz@...radead.org>,
Andrii Nakryiko <andrii@...nel.org>, bpf <bpf@...r.kernel.org>,
LKML <linux-kernel@...r.kernel.org>,
linux-trace-kernel <linux-trace-kernel@...r.kernel.org>,
X86 ML <x86@...nel.org>, Song Liu <songliubraving@...com>,
Yonghong Song <yhs@...com>,
John Fastabend <john.fastabend@...il.com>,
Hao Luo <haoluo@...gle.com>, Steven Rostedt <rostedt@...dmis.org>,
Ingo Molnar <mingo@...nel.org>
Subject: Re: [PATCH perf/core 04/11] bpf: Add support to attach uprobe_multi
unique uprobe
On Wed, Sep 03, 2025 at 08:32:14AM -0700, Alexei Starovoitov wrote:
> On Tue, Sep 2, 2025 at 11:35 PM Jiri Olsa <olsajiri@...il.com> wrote:
> >
> > On Tue, Sep 02, 2025 at 09:11:22AM -0700, Alexei Starovoitov wrote:
> > > On Tue, Sep 2, 2025 at 7:38 AM Jiri Olsa <jolsa@...nel.org> wrote:
> > > >
> > > > Adding support to attach unique uprobe through uprobe multi link
> > > > interface.
> > > >
> > > > Adding new BPF_F_UPROBE_MULTI_UNIQUE flag that denotes the unique
> > > > uprobe creation.
> > > >
> > > > Signed-off-by: Jiri Olsa <jolsa@...nel.org>
> > > > ---
> > > > include/uapi/linux/bpf.h | 3 ++-
> > > > kernel/trace/bpf_trace.c | 4 +++-
> > > > tools/include/uapi/linux/bpf.h | 3 ++-
> > > > 3 files changed, 7 insertions(+), 3 deletions(-)
> > > >
> > > > diff --git a/include/uapi/linux/bpf.h b/include/uapi/linux/bpf.h
> > > > index 233de8677382..3de9eb469fe2 100644
> > > > --- a/include/uapi/linux/bpf.h
> > > > +++ b/include/uapi/linux/bpf.h
> > > > @@ -1300,7 +1300,8 @@ enum {
> > > > * BPF_TRACE_UPROBE_MULTI attach type to create return probe.
> > > > */
> > > > enum {
> > > > - BPF_F_UPROBE_MULTI_RETURN = (1U << 0)
> > > > + BPF_F_UPROBE_MULTI_RETURN = (1U << 0),
> > > > + BPF_F_UPROBE_MULTI_UNIQUE = (1U << 1),
> > >
> > > I second Masami's point. "exclusive" name fits better.
> > > And once you use that name the "multi_exclusive"
> > > part will not make sense.
> > > How can an exclusive user of the uprobe be "multi" at the same time?
> > > Like attaching to multiple uprobes and modifying regsiters
> > > in all of them? Is it practical ?
> >
> > we can still attach single uprobe with uprobe_multi,
> > but for more uprobes it's probably not practical
> >
> > > It till attach single uprobe with eels to me BPF_F_UPROBE_EXCLUSIVE should be targeting
> > > one specific uprobe.
> >
> > do you mean to force single uprobe with this flag?
> >
> > I understood 'BPF_F_UPROBE_MULTI_' flag prefix more as indication what link
> > it belongs to, but I'm ok with BPF_F_UPROBE_EXCLUSIVE
>
> What is the use case for attaching the same bpf prog to multiple
> uprobes and modifying their registers?
I dont have one.. but I guess you could have just one bpf program
doing the whatever override based on uprobe cookie?
I added the unique flag support in here because you can also
create just single uprobe with uprobe_multi interface
jirka
Powered by blists - more mailing lists