Skip to content

Commit

Permalink
ftrace/samples: Add missing prototypes direct functions
Browse files Browse the repository at this point in the history
commit 0daf5cb upstream.

There's another compilation fail (first here [1]) reported by kernel
test robot for W=1 clang build:

  >> samples/ftrace/ftrace-direct-multi-modify.c:7:6: warning: no previous
  prototype for function 'my_direct_func1' [-Wmissing-prototypes]
     void my_direct_func1(unsigned long ip)

Direct functions in ftrace direct sample modules need to have prototypes
defined. They are already global in order to be visible for the inline
assembly, so there's no problem.

The kernel test robot reported just error for ftrace-direct-multi-modify,
but I got same errors also for the rest of the modules touched by this patch.

[1] 67d4f6e ftrace/samples: Add missing prototype for my_direct_func

Link: https://lkml.kernel.org/r/20211219135317.212430-1-jolsa@kernel.org

Reported-by: kernel test robot <lkp@intel.com>
Fixes: e1067a0 ("ftrace/samples: Add module to test multi direct modify interface")
Fixes: ae0cc3b ("ftrace/samples: Add a sample module that implements modify_ftrace_direct()")
Fixes: 156473a ("ftrace: Add another example of register_ftrace_direct() use case")
Fixes: b06457c ("ftrace: Add sample module that uses register_ftrace_direct()")
Signed-off-by: Jiri Olsa <jolsa@kernel.org>
Signed-off-by: Steven Rostedt <rostedt@goodmis.org>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
  • Loading branch information
Jiri Olsa authored and gregkh committed Jan 11, 2022
1 parent 61169d6 commit 5cb0bd0
Show file tree
Hide file tree
Showing 3 changed files with 8 additions and 0 deletions.
3 changes: 3 additions & 0 deletions samples/ftrace/ftrace-direct-modify.c
Expand Up @@ -3,6 +3,9 @@
#include <linux/kthread.h>
#include <linux/ftrace.h>

extern void my_direct_func1(void);
extern void my_direct_func2(void);

void my_direct_func1(void)
{
trace_printk("my direct func1\n");
Expand Down
3 changes: 3 additions & 0 deletions samples/ftrace/ftrace-direct-too.c
Expand Up @@ -4,6 +4,9 @@
#include <linux/mm.h> /* for handle_mm_fault() */
#include <linux/ftrace.h>

extern void my_direct_func(struct vm_area_struct *vma,
unsigned long address, unsigned int flags);

void my_direct_func(struct vm_area_struct *vma,
unsigned long address, unsigned int flags)
{
Expand Down
2 changes: 2 additions & 0 deletions samples/ftrace/ftrace-direct.c
Expand Up @@ -4,6 +4,8 @@
#include <linux/sched.h> /* for wake_up_process() */
#include <linux/ftrace.h>

extern void my_direct_func(struct task_struct *p);

void my_direct_func(struct task_struct *p)
{
trace_printk("waking up %s-%d\n", p->comm, p->pid);
Expand Down

0 comments on commit 5cb0bd0

Please sign in to comment.