On Wed, 12 Feb 2020 16:02:11 +0100 Peter Zijlstra <peterz@xxxxxxxxxxxxx> wrote: > On Wed, Feb 12, 2020 at 09:24:17AM -0500, Steven Rostedt wrote: > > On Wed, 12 Feb 2020 10:32:14 +0100 > > Peter Zijlstra <peterz@xxxxxxxxxxxxx> wrote: > > > > > Because of the requirement that no tracing happens until after we've > > > incremented preempt_count, see nmi_enter() / trace_rcu_enter(), mark > > > these functions as notrace. > > > > I actually depend on these function being traced. > > Why? They already have a tracepoint inside. Only when enabled. > > > We do have > > "preempt_enable_notrace()" and "preempt_disable_notrace()" for places > > that shouldn't be traced. Can't we use those? (or simply > > __preempt_count_add()) in the nmi_enter() code instead? (perhaps create > > a preempt_count_add_notrace()). > > My initial patch has __preempt_count_add/sub() in, but then I figured > someone would go complain the tracepoint would go missing. Fine, but what bug are you trying to fix? I haven't seen one mentioned yet. Function tracing has recursion protection, and tracing preempt_count in nmi_enter() causes no problems. What's the problem you are trying to solve? -- Steve