[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <db4dc3c5-8a3d-9752-802e-ab509201e251@redhat.com>
Date: Wed, 9 Aug 2017 14:43:49 +0530
From: Pratyush Anand <panand@...hat.com>
To: paulmck@...ux.vnet.ibm.com,
김동현 <austinkernel.kim@...il.com>
Cc: Daniel Lezcano <daniel.lezcano@...aro.org>, john.stultz@...aro.org,
Steven Rostedt <rostedt@...dmis.org>,
linux-kernel@...r.kernel.org
Subject: Re: RCU stall when using function_graph
On Sunday 06 August 2017 10:32 PM, Paul E. McKenney wrote:
> On Sat, Aug 05, 2017 at 02:24:21PM +0900, 김동현 wrote:
>> Dear All
>>
>> As for me, after configuring function_graph as below, crash disappears.
>> "echo 0 > d/tracing/tracing_on"
>> "sleep 1"
>>
>> "echo function_graph > d/tracing/current_tracer"
>> "sleep 1"
>>
>> "echo smp_call_function_single > d/tracing/set_ftrace_filter"
It will limit trace output to only for the filtered function
(smp_call_function_single).
>> adb shell "sleep 1"
>>
>> "echo 1 > d/tracing/tracing_on"
>> adb shell "sleep 1"
>>
>> Right after function_graph is enabled, too many logs are traced upon IRQ
>> transaction which many times eventually causes stall.
>
> That would do it!
>
> Hmmm...
>
> Steven, would it be helpful if RCU were to inform tracing (say) halfway
> through the RCU CPU stall interval, allowing the tracer to do something
> like cond_resched_rcu_qs()? I can imagine all sorts of reasons why this
> wouldn't work, for example, if all the tracing was with irqs disabled
> or some such, but figured I should ask.
>
> Does Guillermo's approach work for others?
Limited output with a couple of filtered function will definitely not cause
RCU schedule stall. But the question is whether we should expect a full
function graph trace working on every platform or not (specially the one which
generates high interrupts)?
--
Regards
Pratyush
Powered by blists - more mailing lists