samples: ftrace: Pick a more reasonable function to trace
Commit Message
In ftrace-direct-multi*.c, the direct_caller - my_tramp works as
the mcount for functions with one parameter declared.
But schedule() actually has no parameter declared, so when it was
traced, the tracing function - my_direct_func will print a senseless
address.
Here replaces schedule() with kick_process() to make these samples
more reasonable and deletes the unnecessary including of mm.h.
Signed-off-by: Song Shuai <suagrfillet@gmail.com>
---
samples/ftrace/ftrace-direct-multi-modify.c | 2 +-
samples/ftrace/ftrace-direct-multi.c | 3 +--
2 files changed, 2 insertions(+), 3 deletions(-)
@@ -176,7 +176,7 @@ static int __init ftrace_direct_multi_init(void)
int ret;
ftrace_set_filter_ip(&direct, (unsigned long) wake_up_process, 0, 0);
- ftrace_set_filter_ip(&direct, (unsigned long) schedule, 0, 0);
+ ftrace_set_filter_ip(&direct, (unsigned long) kick_process, 0, 0);
ret = register_ftrace_direct_multi(&direct, my_tramp);
@@ -1,7 +1,6 @@
// SPDX-License-Identifier: GPL-2.0-only
#include <linux/module.h>
-#include <linux/mm.h> /* for handle_mm_fault() */
#include <linux/ftrace.h>
#include <linux/sched/stat.h>
#include <asm/asm-offsets.h>
@@ -93,7 +92,7 @@ static struct ftrace_ops direct;
static int __init ftrace_direct_multi_init(void)
{
ftrace_set_filter_ip(&direct, (unsigned long) wake_up_process, 0, 0);
- ftrace_set_filter_ip(&direct, (unsigned long) schedule, 0, 0);
+ ftrace_set_filter_ip(&direct, (unsigned long) kick_process, 0, 0);
return register_ftrace_direct_multi(&direct, (unsigned long) my_tramp);
}