Messages in this thread Patch in this message | | | Subject | Re: [4.4-rt PATCH] trace: use rcuidle version for preemptoff_hist trace point | From | Yang Shi <> | Date | Mon, 7 Mar 2016 15:44:53 -0800 |
| |
On 3/7/2016 10:00 AM, Sebastian Andrzej Siewior wrote: > * Yang Shi | 2016-02-23 13:23:23 [-0800]: > >> I recall the rcuidle version is used by 4.1-rt, but not sure why it is dropped >> in 4.4-rt. It looks such fix is still needed. > I don't recall while I removed it. It was durring v4.1 -> v4.4 port. In > v4.1 we had the idle version only in time_hardirqs_on() + …_off(). You > introduced it also to start_critical_timings() + stop_…(). Is this > required?
Yes, the test showed the same problem in start{stop}_critical_timings too.
> In the meantime I bring back the empty macro of > trace_preemptirqsoff_hist_rcuidle() back in -RT sine it breaks compile > latest v4.4.3-RT9
Yes, sorry to forget to bring this in too. The 4.1 patch was submitted by me, but forgot to have it in 4.4.
Yang
> >> kernel/trace/trace_irqsoff.c | 8 ++++---- >> 1 file changed, 4 insertions(+), 4 deletions(-) >> >> diff --git a/kernel/trace/trace_irqsoff.c b/kernel/trace/trace_irqsoff.c >> index 36e584f..069942c 100644 >> --- a/kernel/trace/trace_irqsoff.c >> +++ b/kernel/trace/trace_irqsoff.c >> @@ -421,13 +421,13 @@ void start_critical_timings(void) >> { >> if (preempt_trace() || irq_trace()) >> start_critical_timing(CALLER_ADDR0, CALLER_ADDR1); >> - trace_preemptirqsoff_hist(TRACE_START, 1); >> + trace_preemptirqsoff_hist_rcuidle(TRACE_START, 1); >> } >> EXPORT_SYMBOL_GPL(start_critical_timings); >> >> void stop_critical_timings(void) >> { >> - trace_preemptirqsoff_hist(TRACE_STOP, 0); >> + trace_preemptirqsoff_hist_rcuidle(TRACE_STOP, 0); >> if (preempt_trace() || irq_trace()) >> stop_critical_timing(CALLER_ADDR0, CALLER_ADDR1); >> } > Sebastian
| |