mirror of https://lore.kernel.org/lkml/
 help / color / mirror / Atom feed
From: Gabriele Monaco <gmonaco@redhat.com>
To: Steven Rostedt <rostedt@goodmis.org>
Cc: Nam Cao <namcao@linutronix.de>,
	linux-kernel@vger.kernel.org,
	 linux-trace-kernel@vger.kernel.org, bpf@vger.kernel.org,
	Alexei Starovoitov <alexei.starovoitov@gmail.com>,
	Wen Yang <wen.yang@linux.dev>,
	Tobias Schaffner	 <tobias.schaffner@siemens.com>,
	Viktor Malik <vmalik@redhat.com>
Subject: Re: [PATCH v2 09/15] tools/rv: Copy stripped bpf_atomic.h from libarena
Date: Mon, 12 Oct 2026 09:43:38 +0200	[thread overview]
Message-ID: <daeb0025bab5302505fe64379c0882f3b20b4c74.camel@redhat.com> (raw)
In-Reply-To: <20261010204327.0656cde7@226.227.38.69.naturalwireless.com>

Hi Steve,

On Sat, 2026-10-10 at 20:43 -0400, Steven Rostedt wrote:
> 
> Please keep both until you know the BPF side can do everything you need.

I agree. Also, complex monitors like timed automata won't be as easy to migrate.

> 
> On Fri, 09 Oct 2026 12:09:42 +0200
> Gabriele Monaco <gmonaco@redhat.com> wrote:
> 
> > There's a common belief considering BPF a prototyping playground, where
> > "real"
> > things should eventually end up in the kernel.
> > Now, I don't agree with it (look at the many sched_ext policies used in
> > production), but I'd want to assess if dropping kernel support could drive
> > users away (e.g. industry/automotive which keeps popping out) and understand
> > the various not purely technical reasons.
> 
> Where do you plan on storing the repository of BPF programs?

That's something I would like to refine better. But I'm planning to keep
"official" monitors in-tree (tools/rv) and encourage to upstream monitors
nonetheless.

We could come up with a separate repository for "community" monitors, with
perhaps a lower bar compared to the ones in-tree. That'd hopefully encourage
collaboration where possible.

> One issue I have with sched_ext is that it did exactly what many people
> were worried about. There's a lot of schedulers out there without much
> collaboration. It's the "copy one close to what I want and tweak it".
> When I left Google, I heard there was 20 or so sched_ext schedulers
> doing various things for various projects.
> 
> One of my main motivations for scheduler governors.

Yeah that's a good point, though I'm not quite sure how to prevent that.
People could do mostly the same using kernel modules as well, however.

At the moment I still didn't figure out how to build monitors out-of-tree, that
might encourage a bit more working in-tree.

The difference with sched_ext here is that this BPF implementation requires
little to none kernel support. For all we know, people out there might already
be running something like RV monitors implemented in BPF or whatever else.

Currently most of the logic is supposed to go to the shared headers, but
monitors can implement some custom logic too (you already need to touch the C
file anyway). I'd like to reduce reliance on custom logic as much as possible,
that was already brought up by a couple of people. This way, hopefully, people
would rely more on the "library" and share/request any improvement.

But again, I don't have real answers to that, and I'm open to discuss more
sensible solutions.

Thanks,
Gabriele


  reply	other threads:[~2026-10-12  7:43 UTC|newest]

Thread overview: 46+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2026-10-01 15:20 [PATCH v2 00/15] rv: Add support for BPF monitors Gabriele Monaco
2026-10-01 15:20 ` [PATCH v2 01/15] sched: Add task enqueue/dequeue trace points Gabriele Monaco
2026-10-01 15:49   ` Peter Zijlstra
2026-10-02  7:09     ` Gabriele Monaco
2026-10-02 10:29       ` Peter Zijlstra
2026-10-02 11:55         ` Gabriele Monaco
2026-10-02 19:18           ` Peter Zijlstra
2026-10-02 19:40             ` Gabriele Monaco
2026-10-04  7:57             ` Steven Rostedt
2026-10-12 11:54               ` Peter Zijlstra
2026-10-04  7:45         ` Steven Rostedt
2026-10-12 11:49           ` Peter Zijlstra
2026-10-02  0:42   ` bot+bpf-ci
2026-10-01 15:20 ` [PATCH v2 02/15] tools/rv: Skip empty pid error in selftest if command failed Gabriele Monaco
2026-10-02  0:42   ` bot+bpf-ci
2026-10-01 15:20 ` [PATCH v2 03/15] rv: Refactor da_trace() functions to get strings internally Gabriele Monaco
2026-10-01 15:20 ` [PATCH v2 04/15] rv: Cast result of model_get_*_name() Gabriele Monaco
2026-10-13  6:14   ` Nam Cao
2026-10-13  8:15     ` Gabriele Monaco
2026-10-01 15:20 ` [PATCH v2 05/15] tools/rv: Move argument parsing from in_kernel to utils Gabriele Monaco
2026-10-02  0:25   ` bot+bpf-ci
2026-10-01 15:20 ` [PATCH v2 06/15] tools/build: Add a feature test for bpftool-btf Gabriele Monaco
2026-10-01 15:20 ` [PATCH v2 07/15] tools/rv: Implement BPF monitor discovery and listing Gabriele Monaco
2026-10-02  0:42   ` bot+bpf-ci
2026-10-01 15:20 ` [PATCH v2 08/15] tools/rv: Implement BPF monitor loading and tracing Gabriele Monaco
2026-10-02  0:43   ` bot+bpf-ci
2026-10-01 15:20 ` [PATCH v2 09/15] tools/rv: Copy stripped bpf_atomic.h from libarena Gabriele Monaco
2026-10-02  0:42   ` bot+bpf-ci
2026-10-07 12:59   ` Nam Cao
2026-10-08  9:00     ` Gabriele Monaco
2026-10-08 11:16       ` Nam Cao
2026-10-09 10:09         ` Gabriele Monaco
2026-10-11  0:43           ` Steven Rostedt
2026-10-12  7:43             ` Gabriele Monaco [this message]
2026-10-01 15:20 ` [PATCH v2 10/15] tools/rv: Add BPF monitors Gabriele Monaco
2026-10-02  0:43   ` bot+bpf-ci
2026-10-06 13:29   ` Alexei Starovoitov
2026-10-08  9:54     ` Gabriele Monaco
2026-10-01 15:20 ` [PATCH v2 11/15] tools/rv: Define CONFIG_X86_64 statically for " Gabriele Monaco
2026-10-01 15:20 ` [PATCH v2 12/15] tools/rv: Add reactors support to " Gabriele Monaco
2026-10-02  0:43   ` bot+bpf-ci
2026-10-01 15:20 ` [PATCH v2 13/15] verification/rvgen: Add support for " Gabriele Monaco
2026-10-02  0:25   ` bot+bpf-ci
2026-10-01 15:20 ` [PATCH v2 14/15] tools/rv: Add selftest for rv bpf monitors Gabriele Monaco
2026-10-02  0:43   ` bot+bpf-ci
2026-10-01 15:20 ` [PATCH v2 15/15] verification/rvgen: Add selftest for rvgen -b Gabriele Monaco

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=daeb0025bab5302505fe64379c0882f3b20b4c74.camel@redhat.com \
    --to=gmonaco@redhat.com \
    --cc=alexei.starovoitov@gmail.com \
    --cc=bpf@vger.kernel.org \
    --cc=linux-kernel@vger.kernel.org \
    --cc=linux-trace-kernel@vger.kernel.org \
    --cc=namcao@linutronix.de \
    --cc=rostedt@goodmis.org \
    --cc=tobias.schaffner@siemens.com \
    --cc=vmalik@redhat.com \
    --cc=wen.yang@linux.dev \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox

all inboxes | Powered by JetHome®