Re: [PATCH v1 3/8] tracing/perf: guard syscall probe with preempt_notrace

From: Frederic Weisbecker
Date: Thu Oct 03 2024 - 20:17:53 EST


Le Thu, Oct 03, 2024 at 06:25:08PM -0400, Steven Rostedt a écrit :
> On Thu, 3 Oct 2024 11:16:33 -0400
> Mathieu Desnoyers <mathieu.desnoyers@xxxxxxxxxxxx> wrote:
>
> > In preparation for allowing system call enter/exit instrumentation to
> > handle page faults, make sure that perf can handle this change by
> > explicitly disabling preemption within the perf system call tracepoint
> > probes to respect the current expectations within perf ring buffer code.
> >
> > This change does not yet allow perf to take page faults per se within
> > its probe, but allows its existing probes to adapt to the upcoming
> > change.
>
> Frederic,
>
> Does the perf ring buffer expect preemption to be disabled when used?
>
> In other words, is this patch needed?

At least the trace events perf callback requires that because it uses
a per cpu buffer (see perf_trace_buf_alloc()).

Thanks.