ftrace: Decrement count for dyn_ftrace_total_info file
authorSteven Rostedt (VMware) <rostedt@goodmis.org>
Tue, 27 Jun 2017 15:04:40 +0000 (11:04 -0400)
committerSteven Rostedt (VMware) <rostedt@goodmis.org>
Tue, 27 Jun 2017 17:30:27 +0000 (13:30 -0400)
The dyn_ftrace_total_info file is used to show how many functions have been
converted into nops and can be used by ftrace. The problem is that it does
not get decremented when functions are removed (init boot code being freed,
and modules being freed). That means the number is very inaccurate everytime
functions are removed from the ftrace tables. Decrement it when functions
are removed.

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

index 914539e3e301b1a371e8618062a220534dc2c11d..7509ef9810bf89aeb118527e8e67c87966816842 100644 (file)
@@ -5705,6 +5705,7 @@ void ftrace_release_mod(struct module *mod)
                        if (pg == ftrace_pages)
                                ftrace_pages = next_to_ftrace_page(last_pg);
 
+                       ftrace_update_tot_cnt -= pg->index;
                        *last_pg = pg->next;
                        order = get_count_order(pg->size / ENTRIES_PER_PAGE);
                        free_pages((unsigned long)pg->records, order);