Re: 2.6.33: ftrace triggers soft lockup

From: AmÃrico Wang
Date: Sun Mar 07 2010 - 21:31:50 EST


On Fri, Mar 5, 2010 at 11:06 PM, Steven Rostedt <rostedt@xxxxxxxxxxx> wrote:
> On Fri, 2010-03-05 at 15:16 +0800, AmÃrico Wang wrote:
>> On Fri, Mar 5, 2010 at 12:14 PM, AmÃrico Wang <xiyou.wangcong@xxxxxxxxx> wrote:
>> > On Thu, Mar 4, 2010 at 9:54 PM, Steven Rostedt <rostedt@xxxxxxxxxxx> wrote:
>> >> On Wed, 2010-03-03 at 14:04 +0800, AmÃrico Wang wrote:
>> >>> I am not sure if this is ftrace's fault, but it is ftrace who triggers
>> >>> the soft lockup. On my machine, it is pretty easy, just run:
>> >>>
>> >>> echo function_graph > current_tracer
>> >>>
>
>> >
>> > I can't say that because I didn't try -rc6.
>> >
>>
>> Sigh, 2.6.33-rc6 doesn't work, even 2.6.32 doesn't work...
>
> So basically you are saying that the function_graph tracer, when enabled
> has a high overhead? Well, unfortunately, that's expected.


A unusable system is expected? ;-)
Here my machine is too slow to use.

>
> So my question to you is, have you seen the function graph perform
> better with the same configs in previous kernels? Also, the function
> graph makes other debugging (like lockdep) have a greater impact to
> performance than they usually do.


Oh, sorry, I still don't find a working kernel, I will try today.

>
> Now some things you can do to help performance. One is not to trace
> functions that are known to have a high hit rate. You can do this with
> the set_ftrace_notrace file, or add "ftrace_notrace=func1,func2,func3"
> to the command line where func1,func2,func3 are the functions you do not
> want to trace. This just adds these by default to the set_ftrace_notrace
> and can be removed at runtime.
>
>
> The functions I commonly write to are:
>
> echo '*spin_lock*' '*spin_unlock*' '*spin_try*' '*rcu_read*' > set_ftace_notrace
>
> since these functions are hit quite intensively, by not tracing them it
> helps a bit with performance.

I will try this now.

Thanks!
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/