Re: [PATCH v4 1/5] tracing: Introduce faultable tracepoints

From: Paul E. McKenney
Date: Tue Nov 21 2023 - 11:43:32 EST


On Tue, Nov 21, 2023 at 11:11:57AM -0500, Mathieu Desnoyers wrote:
> On 2023-11-21 11:07, Steven Rostedt wrote:
> > On Tue, 21 Nov 2023 11:00:13 -0500
> > Mathieu Desnoyers <mathieu.desnoyers@xxxxxxxxxxxx> wrote:
> >
> > > > tasks-tracing-rcu:
> > > > extention of tasks to have critical-sections ? Should this simply be
> > > > tasks?
> > >
> > > tasks-trace-rcu is meant to allow tasks to block/take a page fault
> > > within the read-side. It is specialized for tracing and has a single
> > > domain. It does not need the smp_mb on the read-side, which makes it
> > > lower-overhead than SRCU.
> >
> > IOW, task-trace-rcu allows the call to schedule in its critical section,
> > whereas task-rcu does not?
>
> Correct.
>
> And unlike preemptible rcu, tasks-trace-rcu allows calls to schedule which
> do not provide priority inheritance guarantees (such as I/O triggered by
> page faults).

But please keep it to things allowed in vanilla RCU read-side critical
sections and I/O triggered by page faults. If you need something else,
that is a discussion between all the current users of RCU Tasks Trace.

Thanx, Paul