Re: [PATCH] ftrace/samples: Add missing prototype for my_direct_func

From: Jiri Olsa
Date: Mon Nov 01 2021 - 11:39:19 EST


On Mon, Nov 01, 2021 at 11:31:27AM -0400, Steven Rostedt wrote:
> On Mon, 1 Nov 2021 16:20:02 +0100
> Jiri Olsa <jolsa@xxxxxxxxxx> wrote:
>
> > There's compilation fail reported kernel test robot for W=1 build:
> >
> > >> samples/ftrace/ftrace-direct-multi.c:8:6: warning: no previous
> > prototype for function 'my_direct_func' [-Wmissing-prototypes]
> > void my_direct_func(unsigned long ip)
> >
> > The inlined assembly is used outside function, so we can't make
> > my_direct_func static and pass it as asm input argument.
> >
> > However my_tramp is already extern so I think there's no problem
> > keeping my_direct_func extern as well and just add its prototype.
> >
> > Reported-by: kernel test robot <lkp@xxxxxxxxx>
> > Fixes: 5fae941b9a6f ("ftrace/samples: Add multi direct interface test module")
> > Signed-off-by: Jiri Olsa <jolsa@xxxxxxxxxx>
> > ---
> > samples/ftrace/ftrace-direct-multi.c | 1 +
> > 1 file changed, 1 insertion(+)
> >
> > diff --git a/samples/ftrace/ftrace-direct-multi.c b/samples/ftrace/ftrace-direct-multi.c
> > index 2a5b1fb7ac14..e0ccf43da0c9 100644
> > --- a/samples/ftrace/ftrace-direct-multi.c
> > +++ b/samples/ftrace/ftrace-direct-multi.c
> > @@ -10,6 +10,7 @@ void my_direct_func(unsigned long ip)
> > trace_printk("ip %lx\n", ip);
> > }
> >
> > +extern void my_direct_func(unsigned long ip);
> > extern void my_tramp(void *);
>
> Except that I believe that the prototype must come before it is used.
>
> I don't think this will fix the warning.

ugh, sry.. v2 posted

jirka

>
> -- Steve
>
>
> >
> > asm (
>