Messages in this thread | | | Date | Fri, 27 Apr 2018 11:42:15 -0400 (EDT) | From | Mathieu Desnoyers <> | Subject | Re: [PATCH RFC] tracepoint: Introduce tracepoint callbacks executing with preempt on |
| |
----- On Apr 27, 2018, at 10:47 AM, rostedt rostedt@goodmis.org wrote:
> On Fri, 27 Apr 2018 10:26:29 -0400 (EDT) > Mathieu Desnoyers <mathieu.desnoyers@efficios.com> wrote: > >> The general approach and the implementation look fine, except for >> one small detail: I would be tempted to explicitly disable preemption >> around the call to the tracepoint callback for the rcuidle variant, >> unless we plan to audit every tracer right away to remove any assumption >> that preemption is disabled in the callback implementation. > > I'm thinking that we do that audit. There shouldn't be many instances > of it. I like the idea that a tracepoint callback gets called with > preemption enabled.
I see that ftrace explicitly disables preemption in its ring buffer code. FWIW, this is redundant when called from sched-rcu tracepoints and from kprobes which adds unnecessary performance overhead.
LTTng expects preemption to be disabled when invoked. I can adapt on my side as needed, but would prefer not to have redundant preemption disabling for probes hooking on sched-rcu tracepoints (which is the common case).
Do perf callbacks expect preemption to be disabled ?
Thanks,
Mathieu
-- Mathieu Desnoyers EfficiOS Inc. http://www.efficios.com
| |