ftrace: Always inline ftrace_hash_empty() helper function
authorSteven Rostedt (Red Hat) <rostedt@goodmis.org>
Thu, 1 May 2014 16:44:50 +0000 (12:44 -0400)
committerSteven Rostedt <rostedt@goodmis.org>
Wed, 14 May 2014 15:37:28 +0000 (11:37 -0400)
The ftrace_hash_empty() function is a simple test:

return !hash || !hash->count;

But gcc seems to want to make it a call. As this is in an extreme
hot path of the function tracer, there's no reason it needs to be
a call. I only wrote it to be a helper function anyway, otherwise
it would have been inlined manually.

Force gcc to inline it, as it could have also been a macro.

Signed-off-by: Steven Rostedt <rostedt@goodmis.org>
kernel/trace/ftrace.c

index 61f39f8b62e1ed98460cbcdf45f5345f00319535..98fa931b686433741c9860757f35ce06f2df5c06 100644 (file)
@@ -1105,7 +1105,7 @@ struct ftrace_page {
 static struct ftrace_page      *ftrace_pages_start;
 static struct ftrace_page      *ftrace_pages;
 
-static bool ftrace_hash_empty(struct ftrace_hash *hash)
+static bool __always_inline ftrace_hash_empty(struct ftrace_hash *hash)
 {
        return !hash || !hash->count;
 }