Re: [PATCH 1/2] mm: page_alloc.c: Add tracepoints for slowpath
From: Steven Rostedt <rostedt@goodmis.org>
Date: 2016-07-27 17:30:14
Also in:
lkml
On Wed, 27 Jul 2016 10:20:28 -0700 Dave Hansen [off-list ref] wrote:
On 07/27/2016 08:23 AM, Steven Rostedt wrote:quoted
quoted
quoted
+ + trace_mm_slowpath_end(page); +I'm thinking you only need one tracepoint, and use function_graph tracer for the length of the function call. # cd /sys/kernel/debug/tracing # echo __alloc_pages_nodemask > set_ftrace_filter # echo function_graph > current_tracer # echo 1 > events/kmem/trace_mm_slowpath/enableI hesitate to endorse using the function_graph tracer for this kind of stuff. Tracepoints offer some level of stability in naming, and the compiler won't ever make them go away. While __alloc_pages_nodemask is probably more stable than most things, there's no guarantee that it will be there.
Well, then you are also advocating in a userspace ABI interface that will have to be maintained forever. Just be warned.
BTW, what's the overhead of the function graph tracer if the filter is set up to be really restrictive like above? Is the overhead really just limited to that one function?
Yes, if DYNAMIC_FTRACE is defined. Which it should be, because static ftrace has a huge overhead without enabling the tracer. It will enable only that function to be traced. I've recommend before that if one wants to have a good idea of how long a function lasts, they should filter to a single function. Anything else will include overhead of the tracer itself. -- Steve -- To unsubscribe, send a message with 'unsubscribe linux-mm' in the body to majordomo@kvack.org. For more info on Linux MM, see: http://www.linux-mm.org/ . Don't email: <a href=mailto:"dont@kvack.org"> email@kvack.org </a>