On Thu, 17 Jul 2025 09:02:38 -0700 Alexei Starovoitov <alexei.starovoi...@gmail.com> wrote:
> Stop blaming the users. Tracepoints disable preemption for now > good reason and you keep shifting the blame. > Fix tracepoint infra. The fix *is* to have tracepoints not disable preemption. Your first reply said: There is no need to replace existing preempt_disable wrappers with sleepable srcu_fast or anything else. What is it? To replace the existing preemptable wrappers is the solution. But you said it isn't needed. Those using PREEMPT_RT look to blame the users that cause unbounded latency. When you design an RT system, you look at what causes unbounded latency and disable it. Blaming the users is part of the process! If BPF programs attached to tracepoints cannot be preempted, it means it must not be used with PREEMPT_RT. FULL STOP! It doesn't mean BPF programs can't be used. It just can't be used when you care about bounded latency. There's even people looking into configuring the kernel where if anything gets called that can cause an unbounded latency, it would trigger BUG(). As crashing the kernel in safety critical systems is actually better than missing a deadline. -- Steve