|
@@ -2500,32 +2500,31 @@ int ftrace_graph_count;
|
|
|
unsigned long ftrace_graph_funcs[FTRACE_GRAPH_MAX_FUNCS] __read_mostly;
|
|
|
|
|
|
static void *
|
|
|
-g_next(struct seq_file *m, void *v, loff_t *pos)
|
|
|
+__g_next(struct seq_file *m, loff_t *pos)
|
|
|
{
|
|
|
unsigned long *array = m->private;
|
|
|
- int index = *pos;
|
|
|
-
|
|
|
- (*pos)++;
|
|
|
|
|
|
- if (index >= ftrace_graph_count)
|
|
|
+ if (*pos >= ftrace_graph_count)
|
|
|
return NULL;
|
|
|
+ return &array[*pos];
|
|
|
+}
|
|
|
|
|
|
- return &array[index];
|
|
|
+static void *
|
|
|
+g_next(struct seq_file *m, void *v, loff_t *pos)
|
|
|
+{
|
|
|
+ (*pos)++;
|
|
|
+ return __g_next(m, pos);
|
|
|
}
|
|
|
|
|
|
static void *g_start(struct seq_file *m, loff_t *pos)
|
|
|
{
|
|
|
- void *p = NULL;
|
|
|
-
|
|
|
mutex_lock(&graph_lock);
|
|
|
|
|
|
/* Nothing, tell g_show to print all functions are enabled */
|
|
|
if (!ftrace_graph_count && !*pos)
|
|
|
return (void *)1;
|
|
|
|
|
|
- p = g_next(m, p, pos);
|
|
|
-
|
|
|
- return p;
|
|
|
+ return __g_next(m, pos);
|
|
|
}
|
|
|
|
|
|
static void g_stop(struct seq_file *m, void *p)
|