On Mon, Sep 30, 2024 at 6:25 PM Jason Xing <kerneljasonxing@xxxxxxxxx> wrote: > > From: Jason Xing <kernelxing@xxxxxxxxxxx> > > In some environments (gcc treated as error in W=1, which is default), if we > make -C samples/bpf/, it will be stopped because of > "no previous prototype" error like this: > > ../samples/bpf/syscall_nrs.c:7:6: > error: no previous prototype for ‘syscall_defines’ [-Werror=missing-prototypes] > void syscall_defines(void) > ^~~~~~~~~~~~~~~ > > Actually, this file meets our expectatations because it will be converted to > a .h file. In this way, it's correct. Considering the warnning stopping us > compiling, we can remove the warnning directly. > > Signed-off-by: Jason Xing <kernelxing@xxxxxxxxxxx> > --- > v2 > Link: https://lore.kernel.org/all/CAEf4BzaVdr_0kQo=+jPLN++PvcU6pwTjaPVEA880kgDN94TZYw@xxxxxxxxxxxxxx/ > 1. use #pragma GCC diagnostic ignored to disable warnning (Andrii Nakryiko) > --- > samples/bpf/syscall_nrs.c | 5 +++++ > 1 file changed, 5 insertions(+) > > diff --git a/samples/bpf/syscall_nrs.c b/samples/bpf/syscall_nrs.c > index 88f940052450..8f6ae21d358f 100644 > --- a/samples/bpf/syscall_nrs.c > +++ b/samples/bpf/syscall_nrs.c > @@ -2,6 +2,11 @@ > #include <uapi/linux/unistd.h> > #include <linux/kbuild.h> > > +#pragma GCC diagnostic push please add matching pop as well > +#ifndef __clang__ I don't think you need this, clang supports this pragma as well (even though it says "GCC") pw-bot: cr > +#pragma GCC diagnostic ignored "-Wmissing-prototypes" > +#endif > + > #define SYSNR(_NR) DEFINE(SYS ## _NR, _NR) > > void syscall_defines(void) > -- > 2.37.3 >