All of lore.kernel.org
 help / color / mirror / Atom feed
From: kbuild test robot <lkp@intel.com>
To: Mao Wenan <maowenan@huawei.com>,
	ast@kernel.org, daniel@iogearbox.net, kafai@fb.com,
	songliubraving@fb.com, yhs@fb.com, andriin@fb.com,
	john.fastabend@gmail.com, kpsingh@chromium.org
Cc: kbuild-all@lists.01.org, netdev@vger.kernel.org,
	bpf@vger.kernel.org, linux-kernel@vger.kernel.org,
	kernel-janitors@vger.kernel.org
Subject: Re: [PATCH bpf-next 1/2] bpf: Change error code when ops is NULL
Date: Fri, 24 Apr 2020 13:18:55 +0800	[thread overview]
Message-ID: <202004241349.zMfvRjhe%lkp@intel.com> (raw)
In-Reply-To: <20200422083010.28000-2-maowenan@huawei.com>

[-- Attachment #1: Type: text/plain, Size: 28941 bytes --]

Hi Mao,

Thank you for the patch! Yet something to improve:

[auto build test ERROR on bpf-next/master]
[also build test ERROR on bpf/master net/master net-next/master v5.7-rc2 next-20200423]
[if your patch is applied to the wrong git tree, please drop us a note to help
improve the system. BTW, we also suggest to use '--base' option to specify the
base tree in git format-patch, please see https://stackoverflow.com/a/37406982]

url:    https://github.com/0day-ci/linux/commits/Mao-Wenan/Change-return-code-if-failed-to-load-object/20200424-025339
base:   https://git.kernel.org/pub/scm/linux/kernel/git/bpf/bpf-next.git master
config: sh-allmodconfig (attached as .config)
compiler: sh4-linux-gcc (GCC) 9.3.0
reproduce:
        wget https://raw.githubusercontent.com/intel/lkp-tests/master/sbin/make.cross -O ~/bin/make.cross
        chmod +x ~/bin/make.cross
        # save the attached .config to linux build tree
        COMPILER_INSTALL_PATH=$HOME/0day GCC_VERSION=9.3.0 make.cross ARCH=sh 

If you fix the issue, kindly add following tag as appropriate
Reported-by: kbuild test robot <lkp@intel.com>

All error/warnings (new ones prefixed by >>):

    2452 | static const struct bpf_link_ops bpf_raw_tp_lops = {
         |                                  ^~~~~~~~~~~~~~~
   kernel/bpf/syscall.c:2256:34: note: previous declaration of 'bpf_raw_tp_lops' was here
    2256 | static const struct bpf_link_ops bpf_raw_tp_lops;
         |                                  ^~~~~~~~~~~~~~~
   kernel/bpf/syscall.c:2453:13: error: initializer element is not constant
    2453 |  .release = bpf_raw_tp_link_release,
         |             ^~~~~~~~~~~~~~~~~~~~~~~
   kernel/bpf/syscall.c:2453:13: note: (near initialization for 'bpf_raw_tp_lops.release')
   kernel/bpf/syscall.c:2454:13: error: initializer element is not constant
    2454 |  .dealloc = bpf_raw_tp_link_dealloc,
         |             ^~~~~~~~~~~~~~~~~~~~~~~
   kernel/bpf/syscall.c:2454:13: note: (near initialization for 'bpf_raw_tp_lops.dealloc')
   kernel/bpf/syscall.c:2459:12: error: invalid storage class for function 'bpf_raw_tracepoint_open'
    2459 | static int bpf_raw_tracepoint_open(const union bpf_attr *attr)
         |            ^~~~~~~~~~~~~~~~~~~~~~~
   kernel/bpf/syscall.c:2546:12: error: invalid storage class for function 'bpf_prog_attach_check_attach_type'
    2546 | static int bpf_prog_attach_check_attach_type(const struct bpf_prog *prog,
         |            ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
   kernel/bpf/syscall.c:2564:1: error: invalid storage class for function 'attach_type_to_prog_type'
    2564 | attach_type_to_prog_type(enum bpf_attach_type attach_type)
         | ^~~~~~~~~~~~~~~~~~~~~~~~
   kernel/bpf/syscall.c:2612:12: error: invalid storage class for function 'bpf_prog_attach'
    2612 | static int bpf_prog_attach(const union bpf_attr *attr)
         |            ^~~~~~~~~~~~~~~
   kernel/bpf/syscall.c:2671:12: error: invalid storage class for function 'bpf_prog_detach'
    2671 | static int bpf_prog_detach(const union bpf_attr *attr)
         |            ^~~~~~~~~~~~~~~
   kernel/bpf/syscall.c:2706:12: error: invalid storage class for function 'bpf_prog_query'
    2706 | static int bpf_prog_query(const union bpf_attr *attr,
         |            ^~~~~~~~~~~~~~
   kernel/bpf/syscall.c:2747:12: error: invalid storage class for function 'bpf_prog_test_run'
    2747 | static int bpf_prog_test_run(const union bpf_attr *attr,
         |            ^~~~~~~~~~~~~~~~~
   kernel/bpf/syscall.c:2779:12: error: invalid storage class for function 'bpf_obj_get_next_id'
    2779 | static int bpf_obj_get_next_id(const union bpf_attr *attr,
         |            ^~~~~~~~~~~~~~~~~~~
   kernel/bpf/syscall.c:2824:12: error: invalid storage class for function 'bpf_prog_get_fd_by_id'
    2824 | static int bpf_prog_get_fd_by_id(const union bpf_attr *attr)
         |            ^~~~~~~~~~~~~~~~~~~~~
   kernel/bpf/syscall.c:2849:12: error: invalid storage class for function 'bpf_map_get_fd_by_id'
    2849 | static int bpf_map_get_fd_by_id(const union bpf_attr *attr)
         |            ^~~~~~~~~~~~~~~~~~~~
   kernel/bpf/syscall.c: In function 'bpf_map_get_fd_by_id':
   kernel/bpf/syscall.c:2870:9: error: implicit declaration of function '__bpf_map_inc_not_zero'; did you mean 'bpf_map_inc_not_zero'? [-Werror=implicit-function-declaration]
    2870 |   map = __bpf_map_inc_not_zero(map, true);
         |         ^~~~~~~~~~~~~~~~~~~~~~
         |         bpf_map_inc_not_zero
   kernel/bpf/syscall.c:2870:7: warning: assignment to 'struct bpf_map *' from 'int' makes pointer from integer without a cast [-Wint-conversion]
    2870 |   map = __bpf_map_inc_not_zero(map, true);
         |       ^
   kernel/bpf/syscall.c: In function 'find_and_alloc_map':
   kernel/bpf/syscall.c:2885:30: error: invalid storage class for function 'bpf_map_from_imm'
    2885 | static const struct bpf_map *bpf_map_from_imm(const struct bpf_prog *prog,
         |                              ^~~~~~~~~~~~~~~~
   kernel/bpf/syscall.c:2909:25: error: invalid storage class for function 'bpf_insn_prepare_dump'
    2909 | static struct bpf_insn *bpf_insn_prepare_dump(const struct bpf_prog *prog)
         |                         ^~~~~~~~~~~~~~~~~~~~~
   kernel/bpf/syscall.c:2953:12: error: invalid storage class for function 'set_info_rec_size'
    2953 | static int set_info_rec_size(struct bpf_prog_info *info)
         |            ^~~~~~~~~~~~~~~~~
   kernel/bpf/syscall.c:2984:12: error: invalid storage class for function 'bpf_prog_get_info_by_fd'
    2984 | static int bpf_prog_get_info_by_fd(struct bpf_prog *prog,
         |            ^~~~~~~~~~~~~~~~~~~~~~~
   kernel/bpf/syscall.c:3260:12: error: invalid storage class for function 'bpf_map_get_info_by_fd'
    3260 | static int bpf_map_get_info_by_fd(struct bpf_map *map,
         |            ^~~~~~~~~~~~~~~~~~~~~~
   kernel/bpf/syscall.c:3303:12: error: invalid storage class for function 'bpf_btf_get_info_by_fd'
    3303 | static int bpf_btf_get_info_by_fd(struct btf *btf,
         |            ^~~~~~~~~~~~~~~~~~~~~~
   kernel/bpf/syscall.c:3320:12: error: invalid storage class for function 'bpf_obj_get_info_by_fd'
    3320 | static int bpf_obj_get_info_by_fd(const union bpf_attr *attr,
         |            ^~~~~~~~~~~~~~~~~~~~~~
   kernel/bpf/syscall.c:3351:12: error: invalid storage class for function 'bpf_btf_load'
    3351 | static int bpf_btf_load(const union bpf_attr *attr)
         |            ^~~~~~~~~~~~
   kernel/bpf/syscall.c:3364:12: error: invalid storage class for function 'bpf_btf_get_fd_by_id'
    3364 | static int bpf_btf_get_fd_by_id(const union bpf_attr *attr)
         |            ^~~~~~~~~~~~~~~~~~~~
   kernel/bpf/syscall.c:3375:12: error: invalid storage class for function 'bpf_task_fd_query_copy'
    3375 | static int bpf_task_fd_query_copy(const union bpf_attr *attr,
         |            ^~~~~~~~~~~~~~~~~~~~~~
   kernel/bpf/syscall.c:3424:12: error: invalid storage class for function 'bpf_task_fd_query'
    3424 | static int bpf_task_fd_query(const union bpf_attr *attr,
         |            ^~~~~~~~~~~~~~~~~
   kernel/bpf/syscall.c:3519:12: error: invalid storage class for function 'bpf_map_do_batch'
    3519 | static int bpf_map_do_batch(const union bpf_attr *attr,
         |            ^~~~~~~~~~~~~~~~
   kernel/bpf/syscall.c: In function 'bpf_map_do_batch':
   kernel/bpf/syscall.c:3538:8: error: implicit declaration of function 'map_get_sys_perms' [-Werror=implicit-function-declaration]
    3538 |      !(map_get_sys_perms(map, f) & FMODE_CAN_READ)) {
         |        ^~~~~~~~~~~~~~~~~
   kernel/bpf/syscall.c: In function 'find_and_alloc_map':
   kernel/bpf/syscall.c:3564:12: error: invalid storage class for function 'link_create'
    3564 | static int link_create(union bpf_attr *attr)
         |            ^~~~~~~~~~~
   kernel/bpf/syscall.c:3611:12: error: invalid storage class for function 'link_update'
    3611 | static int link_update(union bpf_attr *attr)
         |            ^~~~~~~~~~~
   In file included from kernel/bpf/syscall.c:8:
>> include/linux/syscalls.h:152:33: error: redeclaration of '__syscall_meta__bpf' with no linkage
     152 |  static struct syscall_metadata __syscall_meta_##sname;  \
         |                                 ^~~~~~~~~~~~~~~
>> include/linux/syscalls.h:175:2: note: in expansion of macro 'SYSCALL_TRACE_EXIT_EVENT'
     175 |  SYSCALL_TRACE_EXIT_EVENT(sname);   \
         |  ^~~~~~~~~~~~~~~~~~~~~~~~
>> include/linux/syscalls.h:224:2: note: in expansion of macro 'SYSCALL_METADATA'
     224 |  SYSCALL_METADATA(sname, x, __VA_ARGS__)   \
         |  ^~~~~~~~~~~~~~~~
   include/linux/syscalls.h:216:36: note: in expansion of macro 'SYSCALL_DEFINEx'
     216 | #define SYSCALL_DEFINE3(name, ...) SYSCALL_DEFINEx(3, _##name, __VA_ARGS__)
         |                                    ^~~~~~~~~~~~~~~
   kernel/bpf/syscall.c:3661:1: note: in expansion of macro 'SYSCALL_DEFINE3'
    3661 | SYSCALL_DEFINE3(bpf, int, cmd, union bpf_attr __user *, uattr, unsigned int, size)
         | ^~~~~~~~~~~~~~~
   include/linux/syscalls.h:136:33: note: previous declaration of '__syscall_meta__bpf' was here
     136 |  static struct syscall_metadata __syscall_meta_##sname;  \
         |                                 ^~~~~~~~~~~~~~~
>> include/linux/syscalls.h:174:2: note: in expansion of macro 'SYSCALL_TRACE_ENTER_EVENT'
     174 |  SYSCALL_TRACE_ENTER_EVENT(sname);   \
         |  ^~~~~~~~~~~~~~~~~~~~~~~~~
>> include/linux/syscalls.h:224:2: note: in expansion of macro 'SYSCALL_METADATA'
     224 |  SYSCALL_METADATA(sname, x, __VA_ARGS__)   \
         |  ^~~~~~~~~~~~~~~~
   include/linux/syscalls.h:216:36: note: in expansion of macro 'SYSCALL_DEFINEx'
     216 | #define SYSCALL_DEFINE3(name, ...) SYSCALL_DEFINEx(3, _##name, __VA_ARGS__)
         |                                    ^~~~~~~~~~~~~~~
   kernel/bpf/syscall.c:3661:1: note: in expansion of macro 'SYSCALL_DEFINE3'
    3661 | SYSCALL_DEFINE3(bpf, int, cmd, union bpf_attr __user *, uattr, unsigned int, size)
         | ^~~~~~~~~~~~~~~
   include/linux/syscalls.h:152:2: warning: ISO C90 forbids mixed declarations and code [-Wdeclaration-after-statement]
     152 |  static struct syscall_metadata __syscall_meta_##sname;  \
         |  ^~~~~~
>> include/linux/syscalls.h:175:2: note: in expansion of macro 'SYSCALL_TRACE_EXIT_EVENT'
     175 |  SYSCALL_TRACE_EXIT_EVENT(sname);   \
         |  ^~~~~~~~~~~~~~~~~~~~~~~~
>> include/linux/syscalls.h:224:2: note: in expansion of macro 'SYSCALL_METADATA'
     224 |  SYSCALL_METADATA(sname, x, __VA_ARGS__)   \
         |  ^~~~~~~~~~~~~~~~
   include/linux/syscalls.h:216:36: note: in expansion of macro 'SYSCALL_DEFINEx'
     216 | #define SYSCALL_DEFINE3(name, ...) SYSCALL_DEFINEx(3, _##name, __VA_ARGS__)
         |                                    ^~~~~~~~~~~~~~~
   kernel/bpf/syscall.c:3661:1: note: in expansion of macro 'SYSCALL_DEFINE3'
    3661 | SYSCALL_DEFINE3(bpf, int, cmd, union bpf_attr __user *, uattr, unsigned int, size)
         | ^~~~~~~~~~~~~~~
   include/linux/syscalls.h:177:4: error: redeclaration of '__syscall_meta__bpf' with no linkage
     177 |    __syscall_meta_##sname = {    \
         |    ^~~~~~~~~~~~~~~
>> include/linux/syscalls.h:224:2: note: in expansion of macro 'SYSCALL_METADATA'
     224 |  SYSCALL_METADATA(sname, x, __VA_ARGS__)   \
         |  ^~~~~~~~~~~~~~~~
   include/linux/syscalls.h:216:36: note: in expansion of macro 'SYSCALL_DEFINEx'
     216 | #define SYSCALL_DEFINE3(name, ...) SYSCALL_DEFINEx(3, _##name, __VA_ARGS__)
         |                                    ^~~~~~~~~~~~~~~
   kernel/bpf/syscall.c:3661:1: note: in expansion of macro 'SYSCALL_DEFINE3'
    3661 | SYSCALL_DEFINE3(bpf, int, cmd, union bpf_attr __user *, uattr, unsigned int, size)
         | ^~~~~~~~~~~~~~~
   include/linux/syscalls.h:152:33: note: previous declaration of '__syscall_meta__bpf' was here
     152 |  static struct syscall_metadata __syscall_meta_##sname;  \
         |                                 ^~~~~~~~~~~~~~~
>> include/linux/syscalls.h:175:2: note: in expansion of macro 'SYSCALL_TRACE_EXIT_EVENT'
     175 |  SYSCALL_TRACE_EXIT_EVENT(sname);   \
         |  ^~~~~~~~~~~~~~~~~~~~~~~~
>> include/linux/syscalls.h:224:2: note: in expansion of macro 'SYSCALL_METADATA'
     224 |  SYSCALL_METADATA(sname, x, __VA_ARGS__)   \
         |  ^~~~~~~~~~~~~~~~
   include/linux/syscalls.h:216:36: note: in expansion of macro 'SYSCALL_DEFINEx'
     216 | #define SYSCALL_DEFINE3(name, ...) SYSCALL_DEFINEx(3, _##name, __VA_ARGS__)
         |                                    ^~~~~~~~~~~~~~~
   kernel/bpf/syscall.c:3661:1: note: in expansion of macro 'SYSCALL_DEFINE3'
    3661 | SYSCALL_DEFINE3(bpf, int, cmd, union bpf_attr __user *, uattr, unsigned int, size)
         | ^~~~~~~~~~~~~~~
   include/linux/syscalls.h:176:2: warning: ISO C90 forbids mixed declarations and code [-Wdeclaration-after-statement]
     176 |  static struct syscall_metadata __used   \
         |  ^~~~~~
>> include/linux/syscalls.h:224:2: note: in expansion of macro 'SYSCALL_METADATA'
     224 |  SYSCALL_METADATA(sname, x, __VA_ARGS__)   \
         |  ^~~~~~~~~~~~~~~~
   include/linux/syscalls.h:216:36: note: in expansion of macro 'SYSCALL_DEFINEx'
     216 | #define SYSCALL_DEFINE3(name, ...) SYSCALL_DEFINEx(3, _##name, __VA_ARGS__)
         |                                    ^~~~~~~~~~~~~~~
   kernel/bpf/syscall.c:3661:1: note: in expansion of macro 'SYSCALL_DEFINE3'
    3661 | SYSCALL_DEFINE3(bpf, int, cmd, union bpf_attr __user *, uattr, unsigned int, size)
         | ^~~~~~~~~~~~~~~
   kernel/bpf/syscall.c:3661:38: warning: 'alias' attribute ignored [-Wattributes]
    3661 | SYSCALL_DEFINE3(bpf, int, cmd, union bpf_attr __user *, uattr, unsigned int, size)
         |                                      ^~~~~~~~
   include/linux/syscalls.h:116:25: note: in definition of macro '__SC_DECL'
     116 | #define __SC_DECL(t, a) t a
         |                         ^
   include/linux/syscalls.h:110:35: note: in expansion of macro '__MAP2'
     110 | #define __MAP3(m,t,a,...) m(t,a), __MAP2(m,__VA_ARGS__)
         |                                   ^~~~~~
   include/linux/syscalls.h:114:22: note: in expansion of macro '__MAP3'
     114 | #define __MAP(n,...) __MAP##n(__VA_ARGS__)
         |                      ^~~~~
   include/linux/syscalls.h:239:28: note: in expansion of macro '__MAP'
     239 |  asmlinkage long sys##name(__MAP(x,__SC_DECL,__VA_ARGS__)) \
         |                            ^~~~~
   include/linux/syscalls.h:225:2: note: in expansion of macro '__SYSCALL_DEFINEx'
     225 |  __SYSCALL_DEFINEx(x, sname, __VA_ARGS__)
         |  ^~~~~~~~~~~~~~~~~
   include/linux/syscalls.h:216:36: note: in expansion of macro 'SYSCALL_DEFINEx'
     216 | #define SYSCALL_DEFINE3(name, ...) SYSCALL_DEFINEx(3, _##name, __VA_ARGS__)
         |                                    ^~~~~~~~~~~~~~~
   kernel/bpf/syscall.c:3661:1: note: in expansion of macro 'SYSCALL_DEFINE3'
    3661 | SYSCALL_DEFINE3(bpf, int, cmd, union bpf_attr __user *, uattr, unsigned int, size)
         | ^~~~~~~~~~~~~~~
   include/linux/syscalls.h:239:13: warning: ISO C90 forbids mixed declarations and code [-Wdeclaration-after-statement]
     239 |  asmlinkage long sys##name(__MAP(x,__SC_DECL,__VA_ARGS__)) \
         |             ^~~~
   include/linux/syscalls.h:225:2: note: in expansion of macro '__SYSCALL_DEFINEx'
     225 |  __SYSCALL_DEFINEx(x, sname, __VA_ARGS__)
         |  ^~~~~~~~~~~~~~~~~
   include/linux/syscalls.h:216:36: note: in expansion of macro 'SYSCALL_DEFINEx'
     216 | #define SYSCALL_DEFINE3(name, ...) SYSCALL_DEFINEx(3, _##name, __VA_ARGS__)
         |                                    ^~~~~~~~~~~~~~~
   kernel/bpf/syscall.c:3661:1: note: in expansion of macro 'SYSCALL_DEFINE3'
    3661 | SYSCALL_DEFINE3(bpf, int, cmd, union bpf_attr __user *, uattr, unsigned int, size)
         | ^~~~~~~~~~~~~~~
   include/linux/syscalls.h:242:21: error: invalid storage class for function '__do_sys_bpf'
     242 |  static inline long __do_sys##name(__MAP(x,__SC_DECL,__VA_ARGS__));\
         |                     ^~~~~~~~
   include/linux/syscalls.h:225:2: note: in expansion of macro '__SYSCALL_DEFINEx'
     225 |  __SYSCALL_DEFINEx(x, sname, __VA_ARGS__)
         |  ^~~~~~~~~~~~~~~~~
   include/linux/syscalls.h:216:36: note: in expansion of macro 'SYSCALL_DEFINEx'
     216 | #define SYSCALL_DEFINE3(name, ...) SYSCALL_DEFINEx(3, _##name, __VA_ARGS__)
         |                                    ^~~~~~~~~~~~~~~
   kernel/bpf/syscall.c:3661:1: note: in expansion of macro 'SYSCALL_DEFINE3'
    3661 | SYSCALL_DEFINE3(bpf, int, cmd, union bpf_attr __user *, uattr, unsigned int, size)
         | ^~~~~~~~~~~~~~~
   include/linux/syscalls.h:242:2: warning: ISO C90 forbids mixed declarations and code [-Wdeclaration-after-statement]
     242 |  static inline long __do_sys##name(__MAP(x,__SC_DECL,__VA_ARGS__));\
         |  ^~~~~~
   include/linux/syscalls.h:225:2: note: in expansion of macro '__SYSCALL_DEFINEx'
     225 |  __SYSCALL_DEFINEx(x, sname, __VA_ARGS__)
         |  ^~~~~~~~~~~~~~~~~
   include/linux/syscalls.h:216:36: note: in expansion of macro 'SYSCALL_DEFINEx'
     216 | #define SYSCALL_DEFINE3(name, ...) SYSCALL_DEFINEx(3, _##name, __VA_ARGS__)
         |                                    ^~~~~~~~~~~~~~~
   kernel/bpf/syscall.c:3661:1: note: in expansion of macro 'SYSCALL_DEFINE3'
    3661 | SYSCALL_DEFINE3(bpf, int, cmd, union bpf_attr __user *, uattr, unsigned int, size)
         | ^~~~~~~~~~~~~~~
   include/linux/syscalls.h:244:18: error: static declaration of '__se_sys_bpf' follows non-static declaration
     244 |  asmlinkage long __se_sys##name(__MAP(x,__SC_LONG,__VA_ARGS__)) \
         |                  ^~~~~~~~
   include/linux/syscalls.h:225:2: note: in expansion of macro '__SYSCALL_DEFINEx'
     225 |  __SYSCALL_DEFINEx(x, sname, __VA_ARGS__)
         |  ^~~~~~~~~~~~~~~~~
   include/linux/syscalls.h:216:36: note: in expansion of macro 'SYSCALL_DEFINEx'
     216 | #define SYSCALL_DEFINE3(name, ...) SYSCALL_DEFINEx(3, _##name, __VA_ARGS__)
         |                                    ^~~~~~~~~~~~~~~
   kernel/bpf/syscall.c:3661:1: note: in expansion of macro 'SYSCALL_DEFINE3'
    3661 | SYSCALL_DEFINE3(bpf, int, cmd, union bpf_attr __user *, uattr, unsigned int, size)
         | ^~~~~~~~~~~~~~~
   include/linux/syscalls.h:243:18: note: previous declaration of '__se_sys_bpf' was here
     243 |  asmlinkage long __se_sys##name(__MAP(x,__SC_LONG,__VA_ARGS__)); \
         |                  ^~~~~~~~
   include/linux/syscalls.h:225:2: note: in expansion of macro '__SYSCALL_DEFINEx'
     225 |  __SYSCALL_DEFINEx(x, sname, __VA_ARGS__)
         |  ^~~~~~~~~~~~~~~~~
   include/linux/syscalls.h:216:36: note: in expansion of macro 'SYSCALL_DEFINEx'
     216 | #define SYSCALL_DEFINE3(name, ...) SYSCALL_DEFINEx(3, _##name, __VA_ARGS__)
         |                                    ^~~~~~~~~~~~~~~
   kernel/bpf/syscall.c:3661:1: note: in expansion of macro 'SYSCALL_DEFINE3'
    3661 | SYSCALL_DEFINE3(bpf, int, cmd, union bpf_attr __user *, uattr, unsigned int, size)
         | ^~~~~~~~~~~~~~~
   kernel/bpf/syscall.c: In function '__se_sys_bpf':
   include/linux/syscalls.h:246:14: error: implicit declaration of function '__do_sys_bpf'; did you mean '__se_sys_bpf'? [-Werror=implicit-function-declaration]
     246 |   long ret = __do_sys##name(__MAP(x,__SC_CAST,__VA_ARGS__));\
         |              ^~~~~~~~
   include/linux/syscalls.h:225:2: note: in expansion of macro '__SYSCALL_DEFINEx'
     225 |  __SYSCALL_DEFINEx(x, sname, __VA_ARGS__)
         |  ^~~~~~~~~~~~~~~~~
   include/linux/syscalls.h:216:36: note: in expansion of macro 'SYSCALL_DEFINEx'

vim +/__syscall_meta__bpf +152 include/linux/syscalls.h

8f0820183056ad2 Steven Rostedt           2010-04-20  134  
fb34a08c3469b2b Jason Baron              2009-08-10  135  #define SYSCALL_TRACE_ENTER_EVENT(sname)				\
3d56e331b653767 Steven Rostedt           2011-02-02  136  	static struct syscall_metadata __syscall_meta_##sname;		\
2425bcb9240f8c9 Steven Rostedt (Red Hat  2015-05-05  137) 	static struct trace_event_call __used				\
fb34a08c3469b2b Jason Baron              2009-08-10  138  	  event_enter_##sname = {					\
2239291aeb0379f Steven Rostedt           2010-04-21  139  		.class			= &event_class_syscall_enter,	\
abb43f6998eb646 Mathieu Desnoyers        2014-04-09  140  		{							\
abb43f6998eb646 Mathieu Desnoyers        2014-04-09  141  			.name                   = "sys_enter"#sname,	\
abb43f6998eb646 Mathieu Desnoyers        2014-04-09  142  		},							\
80decc70afc57c8 Steven Rostedt           2010-04-23  143  		.event.funcs            = &enter_syscall_print_funcs,	\
31c16b13349970b Lai Jiangshan            2009-12-01  144  		.data			= (void *)&__syscall_meta_##sname,\
f4d5c029bd6731b Lai Jiangshan            2011-01-26  145  		.flags                  = TRACE_EVENT_FL_CAP_ANY,	\
53cf810b1934f08 Frederic Weisbecker      2010-11-18  146  	};								\
2425bcb9240f8c9 Steven Rostedt (Red Hat  2015-05-05  147) 	static struct trace_event_call __used				\
e4a9ea5ee7c8812 Steven Rostedt           2011-01-27  148  	  __attribute__((section("_ftrace_events")))			\
f4d5c029bd6731b Lai Jiangshan            2011-01-26  149  	 *__event_enter_##sname = &event_enter_##sname;
fb34a08c3469b2b Jason Baron              2009-08-10  150  
fb34a08c3469b2b Jason Baron              2009-08-10  151  #define SYSCALL_TRACE_EXIT_EVENT(sname)					\
3d56e331b653767 Steven Rostedt           2011-02-02 @152  	static struct syscall_metadata __syscall_meta_##sname;		\
2425bcb9240f8c9 Steven Rostedt (Red Hat  2015-05-05  153) 	static struct trace_event_call __used				\
fb34a08c3469b2b Jason Baron              2009-08-10  154  	  event_exit_##sname = {					\
2239291aeb0379f Steven Rostedt           2010-04-21  155  		.class			= &event_class_syscall_exit,	\
abb43f6998eb646 Mathieu Desnoyers        2014-04-09  156  		{							\
abb43f6998eb646 Mathieu Desnoyers        2014-04-09  157  			.name                   = "sys_exit"#sname,	\
abb43f6998eb646 Mathieu Desnoyers        2014-04-09  158  		},							\
80decc70afc57c8 Steven Rostedt           2010-04-23  159  		.event.funcs		= &exit_syscall_print_funcs,	\
31c16b13349970b Lai Jiangshan            2009-12-01  160  		.data			= (void *)&__syscall_meta_##sname,\
f4d5c029bd6731b Lai Jiangshan            2011-01-26  161  		.flags                  = TRACE_EVENT_FL_CAP_ANY,	\
53cf810b1934f08 Frederic Weisbecker      2010-11-18  162  	};								\
2425bcb9240f8c9 Steven Rostedt (Red Hat  2015-05-05  163) 	static struct trace_event_call __used				\
e4a9ea5ee7c8812 Steven Rostedt           2011-01-27  164  	  __attribute__((section("_ftrace_events")))			\
f4d5c029bd6731b Lai Jiangshan            2011-01-26  165  	*__event_exit_##sname = &event_exit_##sname;
fb34a08c3469b2b Jason Baron              2009-08-10  166  
99e621f796d7f03 Al Viro                  2013-03-05  167  #define SYSCALL_METADATA(sname, nb, ...)			\
99e621f796d7f03 Al Viro                  2013-03-05  168  	static const char *types_##sname[] = {			\
99e621f796d7f03 Al Viro                  2013-03-05  169  		__MAP(nb,__SC_STR_TDECL,__VA_ARGS__)		\
99e621f796d7f03 Al Viro                  2013-03-05  170  	};							\
99e621f796d7f03 Al Viro                  2013-03-05  171  	static const char *args_##sname[] = {			\
99e621f796d7f03 Al Viro                  2013-03-05  172  		__MAP(nb,__SC_STR_ADECL,__VA_ARGS__)		\
99e621f796d7f03 Al Viro                  2013-03-05  173  	};							\
540b7b8d65575c8 Li Zefan                 2009-08-19 @174  	SYSCALL_TRACE_ENTER_EVENT(sname);			\
540b7b8d65575c8 Li Zefan                 2009-08-19 @175  	SYSCALL_TRACE_EXIT_EVENT(sname);			\
2e33af029556cb8 Steven Rostedt           2010-04-22  176  	static struct syscall_metadata __used			\
bed1ffca022cc87 Frederic Weisbecker      2009-03-13  177  	  __syscall_meta_##sname = {				\
bed1ffca022cc87 Frederic Weisbecker      2009-03-13  178  		.name 		= "sys"#sname,			\
ba976970c79fd2f Ian Munsie               2011-02-03  179  		.syscall_nr	= -1,	/* Filled in at boot */	\
bed1ffca022cc87 Frederic Weisbecker      2009-03-13  180  		.nb_args 	= nb,				\
99e621f796d7f03 Al Viro                  2013-03-05  181  		.types		= nb ? types_##sname : NULL,	\
99e621f796d7f03 Al Viro                  2013-03-05  182  		.args		= nb ? args_##sname : NULL,	\
540b7b8d65575c8 Li Zefan                 2009-08-19  183  		.enter_event	= &event_enter_##sname,		\
540b7b8d65575c8 Li Zefan                 2009-08-19  184  		.exit_event	= &event_exit_##sname,		\
2e33af029556cb8 Steven Rostedt           2010-04-22  185  		.enter_fields	= LIST_HEAD_INIT(__syscall_meta_##sname.enter_fields), \
3d56e331b653767 Steven Rostedt           2011-02-02  186  	};							\
3d56e331b653767 Steven Rostedt           2011-02-02  187  	static struct syscall_metadata __used			\
3d56e331b653767 Steven Rostedt           2011-02-02  188  	  __attribute__((section("__syscalls_metadata")))	\
3d56e331b653767 Steven Rostedt           2011-02-02  189  	 *__p_syscall_meta_##sname = &__syscall_meta_##sname;
cf5f5cea270655d Yonghong Song            2017-08-04  190  
cf5f5cea270655d Yonghong Song            2017-08-04  191  static inline int is_syscall_trace_event(struct trace_event_call *tp_event)
cf5f5cea270655d Yonghong Song            2017-08-04  192  {
cf5f5cea270655d Yonghong Song            2017-08-04  193  	return tp_event->class == &event_class_syscall_enter ||
cf5f5cea270655d Yonghong Song            2017-08-04  194  	       tp_event->class == &event_class_syscall_exit;
cf5f5cea270655d Yonghong Song            2017-08-04  195  }
cf5f5cea270655d Yonghong Song            2017-08-04  196  
99e621f796d7f03 Al Viro                  2013-03-05  197  #else
99e621f796d7f03 Al Viro                  2013-03-05  198  #define SYSCALL_METADATA(sname, nb, ...)
cf5f5cea270655d Yonghong Song            2017-08-04  199  
cf5f5cea270655d Yonghong Song            2017-08-04  200  static inline int is_syscall_trace_event(struct trace_event_call *tp_event)
cf5f5cea270655d Yonghong Song            2017-08-04  201  {
cf5f5cea270655d Yonghong Song            2017-08-04  202  	return 0;
cf5f5cea270655d Yonghong Song            2017-08-04  203  }
99e621f796d7f03 Al Viro                  2013-03-05  204  #endif
bed1ffca022cc87 Frederic Weisbecker      2009-03-13  205  
1bd21c6c21e8489 Dominik Brodowski        2018-04-05  206  #ifndef SYSCALL_DEFINE0
bed1ffca022cc87 Frederic Weisbecker      2009-03-13  207  #define SYSCALL_DEFINE0(sname)					\
99e621f796d7f03 Al Viro                  2013-03-05  208  	SYSCALL_METADATA(_##sname, 0);				\
c9a211951c7c79c Howard McLauchlan        2018-03-21  209  	asmlinkage long sys_##sname(void);			\
c9a211951c7c79c Howard McLauchlan        2018-03-21  210  	ALLOW_ERROR_INJECTION(sys_##sname, ERRNO);		\
bed1ffca022cc87 Frederic Weisbecker      2009-03-13  211  	asmlinkage long sys_##sname(void)
1bd21c6c21e8489 Dominik Brodowski        2018-04-05  212  #endif /* SYSCALL_DEFINE0 */
bed1ffca022cc87 Frederic Weisbecker      2009-03-13  213  
6c5979631b4b03c Heiko Carstens           2009-02-11  214  #define SYSCALL_DEFINE1(name, ...) SYSCALL_DEFINEx(1, _##name, __VA_ARGS__)
6c5979631b4b03c Heiko Carstens           2009-02-11  215  #define SYSCALL_DEFINE2(name, ...) SYSCALL_DEFINEx(2, _##name, __VA_ARGS__)
6c5979631b4b03c Heiko Carstens           2009-02-11  216  #define SYSCALL_DEFINE3(name, ...) SYSCALL_DEFINEx(3, _##name, __VA_ARGS__)
6c5979631b4b03c Heiko Carstens           2009-02-11  217  #define SYSCALL_DEFINE4(name, ...) SYSCALL_DEFINEx(4, _##name, __VA_ARGS__)
6c5979631b4b03c Heiko Carstens           2009-02-11  218  #define SYSCALL_DEFINE5(name, ...) SYSCALL_DEFINEx(5, _##name, __VA_ARGS__)
6c5979631b4b03c Heiko Carstens           2009-02-11  219  #define SYSCALL_DEFINE6(name, ...) SYSCALL_DEFINEx(6, _##name, __VA_ARGS__)
1a94bc34768e463 Heiko Carstens           2009-01-14  220  
609320c8a22715b Yonghong Song            2017-09-07  221  #define SYSCALL_DEFINE_MAXARGS	6
609320c8a22715b Yonghong Song            2017-09-07  222  
bed1ffca022cc87 Frederic Weisbecker      2009-03-13  223  #define SYSCALL_DEFINEx(x, sname, ...)				\
99e621f796d7f03 Al Viro                  2013-03-05 @224  	SYSCALL_METADATA(sname, x, __VA_ARGS__)			\
bed1ffca022cc87 Frederic Weisbecker      2009-03-13  225  	__SYSCALL_DEFINEx(x, sname, __VA_ARGS__)
bed1ffca022cc87 Frederic Weisbecker      2009-03-13  226  

:::::: The code at line 152 was first introduced by commit
:::::: 3d56e331b6537671c66f1b510bed0f1e0331dfc8 tracing: Replace syscall_meta_data struct array with pointer array

:::::: TO: Steven Rostedt <srostedt@redhat.com>
:::::: CC: Steven Rostedt <rostedt@goodmis.org>

---
0-DAY CI Kernel Test Service, Intel Corporation
https://lists.01.org/hyperkitty/list/kbuild-all@lists.01.org

[-- Attachment #2: .config.gz --]
[-- Type: application/gzip, Size: 54689 bytes --]

WARNING: multiple messages have this Message-ID (diff)
From: kbuild test robot <lkp@intel.com>
To: kbuild-all@lists.01.org
Subject: Re: [PATCH bpf-next 1/2] bpf: Change error code when ops is NULL
Date: Fri, 24 Apr 2020 13:18:55 +0800	[thread overview]
Message-ID: <202004241349.zMfvRjhe%lkp@intel.com> (raw)
In-Reply-To: <20200422083010.28000-2-maowenan@huawei.com>

[-- Attachment #1: Type: text/plain, Size: 29350 bytes --]

Hi Mao,

Thank you for the patch! Yet something to improve:

[auto build test ERROR on bpf-next/master]
[also build test ERROR on bpf/master net/master net-next/master v5.7-rc2 next-20200423]
[if your patch is applied to the wrong git tree, please drop us a note to help
improve the system. BTW, we also suggest to use '--base' option to specify the
base tree in git format-patch, please see https://stackoverflow.com/a/37406982]

url:    https://github.com/0day-ci/linux/commits/Mao-Wenan/Change-return-code-if-failed-to-load-object/20200424-025339
base:   https://git.kernel.org/pub/scm/linux/kernel/git/bpf/bpf-next.git master
config: sh-allmodconfig (attached as .config)
compiler: sh4-linux-gcc (GCC) 9.3.0
reproduce:
        wget https://raw.githubusercontent.com/intel/lkp-tests/master/sbin/make.cross -O ~/bin/make.cross
        chmod +x ~/bin/make.cross
        # save the attached .config to linux build tree
        COMPILER_INSTALL_PATH=$HOME/0day GCC_VERSION=9.3.0 make.cross ARCH=sh 

If you fix the issue, kindly add following tag as appropriate
Reported-by: kbuild test robot <lkp@intel.com>

All error/warnings (new ones prefixed by >>):

    2452 | static const struct bpf_link_ops bpf_raw_tp_lops = {
         |                                  ^~~~~~~~~~~~~~~
   kernel/bpf/syscall.c:2256:34: note: previous declaration of 'bpf_raw_tp_lops' was here
    2256 | static const struct bpf_link_ops bpf_raw_tp_lops;
         |                                  ^~~~~~~~~~~~~~~
   kernel/bpf/syscall.c:2453:13: error: initializer element is not constant
    2453 |  .release = bpf_raw_tp_link_release,
         |             ^~~~~~~~~~~~~~~~~~~~~~~
   kernel/bpf/syscall.c:2453:13: note: (near initialization for 'bpf_raw_tp_lops.release')
   kernel/bpf/syscall.c:2454:13: error: initializer element is not constant
    2454 |  .dealloc = bpf_raw_tp_link_dealloc,
         |             ^~~~~~~~~~~~~~~~~~~~~~~
   kernel/bpf/syscall.c:2454:13: note: (near initialization for 'bpf_raw_tp_lops.dealloc')
   kernel/bpf/syscall.c:2459:12: error: invalid storage class for function 'bpf_raw_tracepoint_open'
    2459 | static int bpf_raw_tracepoint_open(const union bpf_attr *attr)
         |            ^~~~~~~~~~~~~~~~~~~~~~~
   kernel/bpf/syscall.c:2546:12: error: invalid storage class for function 'bpf_prog_attach_check_attach_type'
    2546 | static int bpf_prog_attach_check_attach_type(const struct bpf_prog *prog,
         |            ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
   kernel/bpf/syscall.c:2564:1: error: invalid storage class for function 'attach_type_to_prog_type'
    2564 | attach_type_to_prog_type(enum bpf_attach_type attach_type)
         | ^~~~~~~~~~~~~~~~~~~~~~~~
   kernel/bpf/syscall.c:2612:12: error: invalid storage class for function 'bpf_prog_attach'
    2612 | static int bpf_prog_attach(const union bpf_attr *attr)
         |            ^~~~~~~~~~~~~~~
   kernel/bpf/syscall.c:2671:12: error: invalid storage class for function 'bpf_prog_detach'
    2671 | static int bpf_prog_detach(const union bpf_attr *attr)
         |            ^~~~~~~~~~~~~~~
   kernel/bpf/syscall.c:2706:12: error: invalid storage class for function 'bpf_prog_query'
    2706 | static int bpf_prog_query(const union bpf_attr *attr,
         |            ^~~~~~~~~~~~~~
   kernel/bpf/syscall.c:2747:12: error: invalid storage class for function 'bpf_prog_test_run'
    2747 | static int bpf_prog_test_run(const union bpf_attr *attr,
         |            ^~~~~~~~~~~~~~~~~
   kernel/bpf/syscall.c:2779:12: error: invalid storage class for function 'bpf_obj_get_next_id'
    2779 | static int bpf_obj_get_next_id(const union bpf_attr *attr,
         |            ^~~~~~~~~~~~~~~~~~~
   kernel/bpf/syscall.c:2824:12: error: invalid storage class for function 'bpf_prog_get_fd_by_id'
    2824 | static int bpf_prog_get_fd_by_id(const union bpf_attr *attr)
         |            ^~~~~~~~~~~~~~~~~~~~~
   kernel/bpf/syscall.c:2849:12: error: invalid storage class for function 'bpf_map_get_fd_by_id'
    2849 | static int bpf_map_get_fd_by_id(const union bpf_attr *attr)
         |            ^~~~~~~~~~~~~~~~~~~~
   kernel/bpf/syscall.c: In function 'bpf_map_get_fd_by_id':
   kernel/bpf/syscall.c:2870:9: error: implicit declaration of function '__bpf_map_inc_not_zero'; did you mean 'bpf_map_inc_not_zero'? [-Werror=implicit-function-declaration]
    2870 |   map = __bpf_map_inc_not_zero(map, true);
         |         ^~~~~~~~~~~~~~~~~~~~~~
         |         bpf_map_inc_not_zero
   kernel/bpf/syscall.c:2870:7: warning: assignment to 'struct bpf_map *' from 'int' makes pointer from integer without a cast [-Wint-conversion]
    2870 |   map = __bpf_map_inc_not_zero(map, true);
         |       ^
   kernel/bpf/syscall.c: In function 'find_and_alloc_map':
   kernel/bpf/syscall.c:2885:30: error: invalid storage class for function 'bpf_map_from_imm'
    2885 | static const struct bpf_map *bpf_map_from_imm(const struct bpf_prog *prog,
         |                              ^~~~~~~~~~~~~~~~
   kernel/bpf/syscall.c:2909:25: error: invalid storage class for function 'bpf_insn_prepare_dump'
    2909 | static struct bpf_insn *bpf_insn_prepare_dump(const struct bpf_prog *prog)
         |                         ^~~~~~~~~~~~~~~~~~~~~
   kernel/bpf/syscall.c:2953:12: error: invalid storage class for function 'set_info_rec_size'
    2953 | static int set_info_rec_size(struct bpf_prog_info *info)
         |            ^~~~~~~~~~~~~~~~~
   kernel/bpf/syscall.c:2984:12: error: invalid storage class for function 'bpf_prog_get_info_by_fd'
    2984 | static int bpf_prog_get_info_by_fd(struct bpf_prog *prog,
         |            ^~~~~~~~~~~~~~~~~~~~~~~
   kernel/bpf/syscall.c:3260:12: error: invalid storage class for function 'bpf_map_get_info_by_fd'
    3260 | static int bpf_map_get_info_by_fd(struct bpf_map *map,
         |            ^~~~~~~~~~~~~~~~~~~~~~
   kernel/bpf/syscall.c:3303:12: error: invalid storage class for function 'bpf_btf_get_info_by_fd'
    3303 | static int bpf_btf_get_info_by_fd(struct btf *btf,
         |            ^~~~~~~~~~~~~~~~~~~~~~
   kernel/bpf/syscall.c:3320:12: error: invalid storage class for function 'bpf_obj_get_info_by_fd'
    3320 | static int bpf_obj_get_info_by_fd(const union bpf_attr *attr,
         |            ^~~~~~~~~~~~~~~~~~~~~~
   kernel/bpf/syscall.c:3351:12: error: invalid storage class for function 'bpf_btf_load'
    3351 | static int bpf_btf_load(const union bpf_attr *attr)
         |            ^~~~~~~~~~~~
   kernel/bpf/syscall.c:3364:12: error: invalid storage class for function 'bpf_btf_get_fd_by_id'
    3364 | static int bpf_btf_get_fd_by_id(const union bpf_attr *attr)
         |            ^~~~~~~~~~~~~~~~~~~~
   kernel/bpf/syscall.c:3375:12: error: invalid storage class for function 'bpf_task_fd_query_copy'
    3375 | static int bpf_task_fd_query_copy(const union bpf_attr *attr,
         |            ^~~~~~~~~~~~~~~~~~~~~~
   kernel/bpf/syscall.c:3424:12: error: invalid storage class for function 'bpf_task_fd_query'
    3424 | static int bpf_task_fd_query(const union bpf_attr *attr,
         |            ^~~~~~~~~~~~~~~~~
   kernel/bpf/syscall.c:3519:12: error: invalid storage class for function 'bpf_map_do_batch'
    3519 | static int bpf_map_do_batch(const union bpf_attr *attr,
         |            ^~~~~~~~~~~~~~~~
   kernel/bpf/syscall.c: In function 'bpf_map_do_batch':
   kernel/bpf/syscall.c:3538:8: error: implicit declaration of function 'map_get_sys_perms' [-Werror=implicit-function-declaration]
    3538 |      !(map_get_sys_perms(map, f) & FMODE_CAN_READ)) {
         |        ^~~~~~~~~~~~~~~~~
   kernel/bpf/syscall.c: In function 'find_and_alloc_map':
   kernel/bpf/syscall.c:3564:12: error: invalid storage class for function 'link_create'
    3564 | static int link_create(union bpf_attr *attr)
         |            ^~~~~~~~~~~
   kernel/bpf/syscall.c:3611:12: error: invalid storage class for function 'link_update'
    3611 | static int link_update(union bpf_attr *attr)
         |            ^~~~~~~~~~~
   In file included from kernel/bpf/syscall.c:8:
>> include/linux/syscalls.h:152:33: error: redeclaration of '__syscall_meta__bpf' with no linkage
     152 |  static struct syscall_metadata __syscall_meta_##sname;  \
         |                                 ^~~~~~~~~~~~~~~
>> include/linux/syscalls.h:175:2: note: in expansion of macro 'SYSCALL_TRACE_EXIT_EVENT'
     175 |  SYSCALL_TRACE_EXIT_EVENT(sname);   \
         |  ^~~~~~~~~~~~~~~~~~~~~~~~
>> include/linux/syscalls.h:224:2: note: in expansion of macro 'SYSCALL_METADATA'
     224 |  SYSCALL_METADATA(sname, x, __VA_ARGS__)   \
         |  ^~~~~~~~~~~~~~~~
   include/linux/syscalls.h:216:36: note: in expansion of macro 'SYSCALL_DEFINEx'
     216 | #define SYSCALL_DEFINE3(name, ...) SYSCALL_DEFINEx(3, _##name, __VA_ARGS__)
         |                                    ^~~~~~~~~~~~~~~
   kernel/bpf/syscall.c:3661:1: note: in expansion of macro 'SYSCALL_DEFINE3'
    3661 | SYSCALL_DEFINE3(bpf, int, cmd, union bpf_attr __user *, uattr, unsigned int, size)
         | ^~~~~~~~~~~~~~~
   include/linux/syscalls.h:136:33: note: previous declaration of '__syscall_meta__bpf' was here
     136 |  static struct syscall_metadata __syscall_meta_##sname;  \
         |                                 ^~~~~~~~~~~~~~~
>> include/linux/syscalls.h:174:2: note: in expansion of macro 'SYSCALL_TRACE_ENTER_EVENT'
     174 |  SYSCALL_TRACE_ENTER_EVENT(sname);   \
         |  ^~~~~~~~~~~~~~~~~~~~~~~~~
>> include/linux/syscalls.h:224:2: note: in expansion of macro 'SYSCALL_METADATA'
     224 |  SYSCALL_METADATA(sname, x, __VA_ARGS__)   \
         |  ^~~~~~~~~~~~~~~~
   include/linux/syscalls.h:216:36: note: in expansion of macro 'SYSCALL_DEFINEx'
     216 | #define SYSCALL_DEFINE3(name, ...) SYSCALL_DEFINEx(3, _##name, __VA_ARGS__)
         |                                    ^~~~~~~~~~~~~~~
   kernel/bpf/syscall.c:3661:1: note: in expansion of macro 'SYSCALL_DEFINE3'
    3661 | SYSCALL_DEFINE3(bpf, int, cmd, union bpf_attr __user *, uattr, unsigned int, size)
         | ^~~~~~~~~~~~~~~
   include/linux/syscalls.h:152:2: warning: ISO C90 forbids mixed declarations and code [-Wdeclaration-after-statement]
     152 |  static struct syscall_metadata __syscall_meta_##sname;  \
         |  ^~~~~~
>> include/linux/syscalls.h:175:2: note: in expansion of macro 'SYSCALL_TRACE_EXIT_EVENT'
     175 |  SYSCALL_TRACE_EXIT_EVENT(sname);   \
         |  ^~~~~~~~~~~~~~~~~~~~~~~~
>> include/linux/syscalls.h:224:2: note: in expansion of macro 'SYSCALL_METADATA'
     224 |  SYSCALL_METADATA(sname, x, __VA_ARGS__)   \
         |  ^~~~~~~~~~~~~~~~
   include/linux/syscalls.h:216:36: note: in expansion of macro 'SYSCALL_DEFINEx'
     216 | #define SYSCALL_DEFINE3(name, ...) SYSCALL_DEFINEx(3, _##name, __VA_ARGS__)
         |                                    ^~~~~~~~~~~~~~~
   kernel/bpf/syscall.c:3661:1: note: in expansion of macro 'SYSCALL_DEFINE3'
    3661 | SYSCALL_DEFINE3(bpf, int, cmd, union bpf_attr __user *, uattr, unsigned int, size)
         | ^~~~~~~~~~~~~~~
   include/linux/syscalls.h:177:4: error: redeclaration of '__syscall_meta__bpf' with no linkage
     177 |    __syscall_meta_##sname = {    \
         |    ^~~~~~~~~~~~~~~
>> include/linux/syscalls.h:224:2: note: in expansion of macro 'SYSCALL_METADATA'
     224 |  SYSCALL_METADATA(sname, x, __VA_ARGS__)   \
         |  ^~~~~~~~~~~~~~~~
   include/linux/syscalls.h:216:36: note: in expansion of macro 'SYSCALL_DEFINEx'
     216 | #define SYSCALL_DEFINE3(name, ...) SYSCALL_DEFINEx(3, _##name, __VA_ARGS__)
         |                                    ^~~~~~~~~~~~~~~
   kernel/bpf/syscall.c:3661:1: note: in expansion of macro 'SYSCALL_DEFINE3'
    3661 | SYSCALL_DEFINE3(bpf, int, cmd, union bpf_attr __user *, uattr, unsigned int, size)
         | ^~~~~~~~~~~~~~~
   include/linux/syscalls.h:152:33: note: previous declaration of '__syscall_meta__bpf' was here
     152 |  static struct syscall_metadata __syscall_meta_##sname;  \
         |                                 ^~~~~~~~~~~~~~~
>> include/linux/syscalls.h:175:2: note: in expansion of macro 'SYSCALL_TRACE_EXIT_EVENT'
     175 |  SYSCALL_TRACE_EXIT_EVENT(sname);   \
         |  ^~~~~~~~~~~~~~~~~~~~~~~~
>> include/linux/syscalls.h:224:2: note: in expansion of macro 'SYSCALL_METADATA'
     224 |  SYSCALL_METADATA(sname, x, __VA_ARGS__)   \
         |  ^~~~~~~~~~~~~~~~
   include/linux/syscalls.h:216:36: note: in expansion of macro 'SYSCALL_DEFINEx'
     216 | #define SYSCALL_DEFINE3(name, ...) SYSCALL_DEFINEx(3, _##name, __VA_ARGS__)
         |                                    ^~~~~~~~~~~~~~~
   kernel/bpf/syscall.c:3661:1: note: in expansion of macro 'SYSCALL_DEFINE3'
    3661 | SYSCALL_DEFINE3(bpf, int, cmd, union bpf_attr __user *, uattr, unsigned int, size)
         | ^~~~~~~~~~~~~~~
   include/linux/syscalls.h:176:2: warning: ISO C90 forbids mixed declarations and code [-Wdeclaration-after-statement]
     176 |  static struct syscall_metadata __used   \
         |  ^~~~~~
>> include/linux/syscalls.h:224:2: note: in expansion of macro 'SYSCALL_METADATA'
     224 |  SYSCALL_METADATA(sname, x, __VA_ARGS__)   \
         |  ^~~~~~~~~~~~~~~~
   include/linux/syscalls.h:216:36: note: in expansion of macro 'SYSCALL_DEFINEx'
     216 | #define SYSCALL_DEFINE3(name, ...) SYSCALL_DEFINEx(3, _##name, __VA_ARGS__)
         |                                    ^~~~~~~~~~~~~~~
   kernel/bpf/syscall.c:3661:1: note: in expansion of macro 'SYSCALL_DEFINE3'
    3661 | SYSCALL_DEFINE3(bpf, int, cmd, union bpf_attr __user *, uattr, unsigned int, size)
         | ^~~~~~~~~~~~~~~
   kernel/bpf/syscall.c:3661:38: warning: 'alias' attribute ignored [-Wattributes]
    3661 | SYSCALL_DEFINE3(bpf, int, cmd, union bpf_attr __user *, uattr, unsigned int, size)
         |                                      ^~~~~~~~
   include/linux/syscalls.h:116:25: note: in definition of macro '__SC_DECL'
     116 | #define __SC_DECL(t, a) t a
         |                         ^
   include/linux/syscalls.h:110:35: note: in expansion of macro '__MAP2'
     110 | #define __MAP3(m,t,a,...) m(t,a), __MAP2(m,__VA_ARGS__)
         |                                   ^~~~~~
   include/linux/syscalls.h:114:22: note: in expansion of macro '__MAP3'
     114 | #define __MAP(n,...) __MAP##n(__VA_ARGS__)
         |                      ^~~~~
   include/linux/syscalls.h:239:28: note: in expansion of macro '__MAP'
     239 |  asmlinkage long sys##name(__MAP(x,__SC_DECL,__VA_ARGS__)) \
         |                            ^~~~~
   include/linux/syscalls.h:225:2: note: in expansion of macro '__SYSCALL_DEFINEx'
     225 |  __SYSCALL_DEFINEx(x, sname, __VA_ARGS__)
         |  ^~~~~~~~~~~~~~~~~
   include/linux/syscalls.h:216:36: note: in expansion of macro 'SYSCALL_DEFINEx'
     216 | #define SYSCALL_DEFINE3(name, ...) SYSCALL_DEFINEx(3, _##name, __VA_ARGS__)
         |                                    ^~~~~~~~~~~~~~~
   kernel/bpf/syscall.c:3661:1: note: in expansion of macro 'SYSCALL_DEFINE3'
    3661 | SYSCALL_DEFINE3(bpf, int, cmd, union bpf_attr __user *, uattr, unsigned int, size)
         | ^~~~~~~~~~~~~~~
   include/linux/syscalls.h:239:13: warning: ISO C90 forbids mixed declarations and code [-Wdeclaration-after-statement]
     239 |  asmlinkage long sys##name(__MAP(x,__SC_DECL,__VA_ARGS__)) \
         |             ^~~~
   include/linux/syscalls.h:225:2: note: in expansion of macro '__SYSCALL_DEFINEx'
     225 |  __SYSCALL_DEFINEx(x, sname, __VA_ARGS__)
         |  ^~~~~~~~~~~~~~~~~
   include/linux/syscalls.h:216:36: note: in expansion of macro 'SYSCALL_DEFINEx'
     216 | #define SYSCALL_DEFINE3(name, ...) SYSCALL_DEFINEx(3, _##name, __VA_ARGS__)
         |                                    ^~~~~~~~~~~~~~~
   kernel/bpf/syscall.c:3661:1: note: in expansion of macro 'SYSCALL_DEFINE3'
    3661 | SYSCALL_DEFINE3(bpf, int, cmd, union bpf_attr __user *, uattr, unsigned int, size)
         | ^~~~~~~~~~~~~~~
   include/linux/syscalls.h:242:21: error: invalid storage class for function '__do_sys_bpf'
     242 |  static inline long __do_sys##name(__MAP(x,__SC_DECL,__VA_ARGS__));\
         |                     ^~~~~~~~
   include/linux/syscalls.h:225:2: note: in expansion of macro '__SYSCALL_DEFINEx'
     225 |  __SYSCALL_DEFINEx(x, sname, __VA_ARGS__)
         |  ^~~~~~~~~~~~~~~~~
   include/linux/syscalls.h:216:36: note: in expansion of macro 'SYSCALL_DEFINEx'
     216 | #define SYSCALL_DEFINE3(name, ...) SYSCALL_DEFINEx(3, _##name, __VA_ARGS__)
         |                                    ^~~~~~~~~~~~~~~
   kernel/bpf/syscall.c:3661:1: note: in expansion of macro 'SYSCALL_DEFINE3'
    3661 | SYSCALL_DEFINE3(bpf, int, cmd, union bpf_attr __user *, uattr, unsigned int, size)
         | ^~~~~~~~~~~~~~~
   include/linux/syscalls.h:242:2: warning: ISO C90 forbids mixed declarations and code [-Wdeclaration-after-statement]
     242 |  static inline long __do_sys##name(__MAP(x,__SC_DECL,__VA_ARGS__));\
         |  ^~~~~~
   include/linux/syscalls.h:225:2: note: in expansion of macro '__SYSCALL_DEFINEx'
     225 |  __SYSCALL_DEFINEx(x, sname, __VA_ARGS__)
         |  ^~~~~~~~~~~~~~~~~
   include/linux/syscalls.h:216:36: note: in expansion of macro 'SYSCALL_DEFINEx'
     216 | #define SYSCALL_DEFINE3(name, ...) SYSCALL_DEFINEx(3, _##name, __VA_ARGS__)
         |                                    ^~~~~~~~~~~~~~~
   kernel/bpf/syscall.c:3661:1: note: in expansion of macro 'SYSCALL_DEFINE3'
    3661 | SYSCALL_DEFINE3(bpf, int, cmd, union bpf_attr __user *, uattr, unsigned int, size)
         | ^~~~~~~~~~~~~~~
   include/linux/syscalls.h:244:18: error: static declaration of '__se_sys_bpf' follows non-static declaration
     244 |  asmlinkage long __se_sys##name(__MAP(x,__SC_LONG,__VA_ARGS__)) \
         |                  ^~~~~~~~
   include/linux/syscalls.h:225:2: note: in expansion of macro '__SYSCALL_DEFINEx'
     225 |  __SYSCALL_DEFINEx(x, sname, __VA_ARGS__)
         |  ^~~~~~~~~~~~~~~~~
   include/linux/syscalls.h:216:36: note: in expansion of macro 'SYSCALL_DEFINEx'
     216 | #define SYSCALL_DEFINE3(name, ...) SYSCALL_DEFINEx(3, _##name, __VA_ARGS__)
         |                                    ^~~~~~~~~~~~~~~
   kernel/bpf/syscall.c:3661:1: note: in expansion of macro 'SYSCALL_DEFINE3'
    3661 | SYSCALL_DEFINE3(bpf, int, cmd, union bpf_attr __user *, uattr, unsigned int, size)
         | ^~~~~~~~~~~~~~~
   include/linux/syscalls.h:243:18: note: previous declaration of '__se_sys_bpf' was here
     243 |  asmlinkage long __se_sys##name(__MAP(x,__SC_LONG,__VA_ARGS__)); \
         |                  ^~~~~~~~
   include/linux/syscalls.h:225:2: note: in expansion of macro '__SYSCALL_DEFINEx'
     225 |  __SYSCALL_DEFINEx(x, sname, __VA_ARGS__)
         |  ^~~~~~~~~~~~~~~~~
   include/linux/syscalls.h:216:36: note: in expansion of macro 'SYSCALL_DEFINEx'
     216 | #define SYSCALL_DEFINE3(name, ...) SYSCALL_DEFINEx(3, _##name, __VA_ARGS__)
         |                                    ^~~~~~~~~~~~~~~
   kernel/bpf/syscall.c:3661:1: note: in expansion of macro 'SYSCALL_DEFINE3'
    3661 | SYSCALL_DEFINE3(bpf, int, cmd, union bpf_attr __user *, uattr, unsigned int, size)
         | ^~~~~~~~~~~~~~~
   kernel/bpf/syscall.c: In function '__se_sys_bpf':
   include/linux/syscalls.h:246:14: error: implicit declaration of function '__do_sys_bpf'; did you mean '__se_sys_bpf'? [-Werror=implicit-function-declaration]
     246 |   long ret = __do_sys##name(__MAP(x,__SC_CAST,__VA_ARGS__));\
         |              ^~~~~~~~
   include/linux/syscalls.h:225:2: note: in expansion of macro '__SYSCALL_DEFINEx'
     225 |  __SYSCALL_DEFINEx(x, sname, __VA_ARGS__)
         |  ^~~~~~~~~~~~~~~~~
   include/linux/syscalls.h:216:36: note: in expansion of macro 'SYSCALL_DEFINEx'

vim +/__syscall_meta__bpf +152 include/linux/syscalls.h

8f0820183056ad2 Steven Rostedt           2010-04-20  134  
fb34a08c3469b2b Jason Baron              2009-08-10  135  #define SYSCALL_TRACE_ENTER_EVENT(sname)				\
3d56e331b653767 Steven Rostedt           2011-02-02  136  	static struct syscall_metadata __syscall_meta_##sname;		\
2425bcb9240f8c9 Steven Rostedt (Red Hat  2015-05-05  137) 	static struct trace_event_call __used				\
fb34a08c3469b2b Jason Baron              2009-08-10  138  	  event_enter_##sname = {					\
2239291aeb0379f Steven Rostedt           2010-04-21  139  		.class			= &event_class_syscall_enter,	\
abb43f6998eb646 Mathieu Desnoyers        2014-04-09  140  		{							\
abb43f6998eb646 Mathieu Desnoyers        2014-04-09  141  			.name                   = "sys_enter"#sname,	\
abb43f6998eb646 Mathieu Desnoyers        2014-04-09  142  		},							\
80decc70afc57c8 Steven Rostedt           2010-04-23  143  		.event.funcs            = &enter_syscall_print_funcs,	\
31c16b13349970b Lai Jiangshan            2009-12-01  144  		.data			= (void *)&__syscall_meta_##sname,\
f4d5c029bd6731b Lai Jiangshan            2011-01-26  145  		.flags                  = TRACE_EVENT_FL_CAP_ANY,	\
53cf810b1934f08 Frederic Weisbecker      2010-11-18  146  	};								\
2425bcb9240f8c9 Steven Rostedt (Red Hat  2015-05-05  147) 	static struct trace_event_call __used				\
e4a9ea5ee7c8812 Steven Rostedt           2011-01-27  148  	  __attribute__((section("_ftrace_events")))			\
f4d5c029bd6731b Lai Jiangshan            2011-01-26  149  	 *__event_enter_##sname = &event_enter_##sname;
fb34a08c3469b2b Jason Baron              2009-08-10  150  
fb34a08c3469b2b Jason Baron              2009-08-10  151  #define SYSCALL_TRACE_EXIT_EVENT(sname)					\
3d56e331b653767 Steven Rostedt           2011-02-02 @152  	static struct syscall_metadata __syscall_meta_##sname;		\
2425bcb9240f8c9 Steven Rostedt (Red Hat  2015-05-05  153) 	static struct trace_event_call __used				\
fb34a08c3469b2b Jason Baron              2009-08-10  154  	  event_exit_##sname = {					\
2239291aeb0379f Steven Rostedt           2010-04-21  155  		.class			= &event_class_syscall_exit,	\
abb43f6998eb646 Mathieu Desnoyers        2014-04-09  156  		{							\
abb43f6998eb646 Mathieu Desnoyers        2014-04-09  157  			.name                   = "sys_exit"#sname,	\
abb43f6998eb646 Mathieu Desnoyers        2014-04-09  158  		},							\
80decc70afc57c8 Steven Rostedt           2010-04-23  159  		.event.funcs		= &exit_syscall_print_funcs,	\
31c16b13349970b Lai Jiangshan            2009-12-01  160  		.data			= (void *)&__syscall_meta_##sname,\
f4d5c029bd6731b Lai Jiangshan            2011-01-26  161  		.flags                  = TRACE_EVENT_FL_CAP_ANY,	\
53cf810b1934f08 Frederic Weisbecker      2010-11-18  162  	};								\
2425bcb9240f8c9 Steven Rostedt (Red Hat  2015-05-05  163) 	static struct trace_event_call __used				\
e4a9ea5ee7c8812 Steven Rostedt           2011-01-27  164  	  __attribute__((section("_ftrace_events")))			\
f4d5c029bd6731b Lai Jiangshan            2011-01-26  165  	*__event_exit_##sname = &event_exit_##sname;
fb34a08c3469b2b Jason Baron              2009-08-10  166  
99e621f796d7f03 Al Viro                  2013-03-05  167  #define SYSCALL_METADATA(sname, nb, ...)			\
99e621f796d7f03 Al Viro                  2013-03-05  168  	static const char *types_##sname[] = {			\
99e621f796d7f03 Al Viro                  2013-03-05  169  		__MAP(nb,__SC_STR_TDECL,__VA_ARGS__)		\
99e621f796d7f03 Al Viro                  2013-03-05  170  	};							\
99e621f796d7f03 Al Viro                  2013-03-05  171  	static const char *args_##sname[] = {			\
99e621f796d7f03 Al Viro                  2013-03-05  172  		__MAP(nb,__SC_STR_ADECL,__VA_ARGS__)		\
99e621f796d7f03 Al Viro                  2013-03-05  173  	};							\
540b7b8d65575c8 Li Zefan                 2009-08-19 @174  	SYSCALL_TRACE_ENTER_EVENT(sname);			\
540b7b8d65575c8 Li Zefan                 2009-08-19 @175  	SYSCALL_TRACE_EXIT_EVENT(sname);			\
2e33af029556cb8 Steven Rostedt           2010-04-22  176  	static struct syscall_metadata __used			\
bed1ffca022cc87 Frederic Weisbecker      2009-03-13  177  	  __syscall_meta_##sname = {				\
bed1ffca022cc87 Frederic Weisbecker      2009-03-13  178  		.name 		= "sys"#sname,			\
ba976970c79fd2f Ian Munsie               2011-02-03  179  		.syscall_nr	= -1,	/* Filled in at boot */	\
bed1ffca022cc87 Frederic Weisbecker      2009-03-13  180  		.nb_args 	= nb,				\
99e621f796d7f03 Al Viro                  2013-03-05  181  		.types		= nb ? types_##sname : NULL,	\
99e621f796d7f03 Al Viro                  2013-03-05  182  		.args		= nb ? args_##sname : NULL,	\
540b7b8d65575c8 Li Zefan                 2009-08-19  183  		.enter_event	= &event_enter_##sname,		\
540b7b8d65575c8 Li Zefan                 2009-08-19  184  		.exit_event	= &event_exit_##sname,		\
2e33af029556cb8 Steven Rostedt           2010-04-22  185  		.enter_fields	= LIST_HEAD_INIT(__syscall_meta_##sname.enter_fields), \
3d56e331b653767 Steven Rostedt           2011-02-02  186  	};							\
3d56e331b653767 Steven Rostedt           2011-02-02  187  	static struct syscall_metadata __used			\
3d56e331b653767 Steven Rostedt           2011-02-02  188  	  __attribute__((section("__syscalls_metadata")))	\
3d56e331b653767 Steven Rostedt           2011-02-02  189  	 *__p_syscall_meta_##sname = &__syscall_meta_##sname;
cf5f5cea270655d Yonghong Song            2017-08-04  190  
cf5f5cea270655d Yonghong Song            2017-08-04  191  static inline int is_syscall_trace_event(struct trace_event_call *tp_event)
cf5f5cea270655d Yonghong Song            2017-08-04  192  {
cf5f5cea270655d Yonghong Song            2017-08-04  193  	return tp_event->class == &event_class_syscall_enter ||
cf5f5cea270655d Yonghong Song            2017-08-04  194  	       tp_event->class == &event_class_syscall_exit;
cf5f5cea270655d Yonghong Song            2017-08-04  195  }
cf5f5cea270655d Yonghong Song            2017-08-04  196  
99e621f796d7f03 Al Viro                  2013-03-05  197  #else
99e621f796d7f03 Al Viro                  2013-03-05  198  #define SYSCALL_METADATA(sname, nb, ...)
cf5f5cea270655d Yonghong Song            2017-08-04  199  
cf5f5cea270655d Yonghong Song            2017-08-04  200  static inline int is_syscall_trace_event(struct trace_event_call *tp_event)
cf5f5cea270655d Yonghong Song            2017-08-04  201  {
cf5f5cea270655d Yonghong Song            2017-08-04  202  	return 0;
cf5f5cea270655d Yonghong Song            2017-08-04  203  }
99e621f796d7f03 Al Viro                  2013-03-05  204  #endif
bed1ffca022cc87 Frederic Weisbecker      2009-03-13  205  
1bd21c6c21e8489 Dominik Brodowski        2018-04-05  206  #ifndef SYSCALL_DEFINE0
bed1ffca022cc87 Frederic Weisbecker      2009-03-13  207  #define SYSCALL_DEFINE0(sname)					\
99e621f796d7f03 Al Viro                  2013-03-05  208  	SYSCALL_METADATA(_##sname, 0);				\
c9a211951c7c79c Howard McLauchlan        2018-03-21  209  	asmlinkage long sys_##sname(void);			\
c9a211951c7c79c Howard McLauchlan        2018-03-21  210  	ALLOW_ERROR_INJECTION(sys_##sname, ERRNO);		\
bed1ffca022cc87 Frederic Weisbecker      2009-03-13  211  	asmlinkage long sys_##sname(void)
1bd21c6c21e8489 Dominik Brodowski        2018-04-05  212  #endif /* SYSCALL_DEFINE0 */
bed1ffca022cc87 Frederic Weisbecker      2009-03-13  213  
6c5979631b4b03c Heiko Carstens           2009-02-11  214  #define SYSCALL_DEFINE1(name, ...) SYSCALL_DEFINEx(1, _##name, __VA_ARGS__)
6c5979631b4b03c Heiko Carstens           2009-02-11  215  #define SYSCALL_DEFINE2(name, ...) SYSCALL_DEFINEx(2, _##name, __VA_ARGS__)
6c5979631b4b03c Heiko Carstens           2009-02-11  216  #define SYSCALL_DEFINE3(name, ...) SYSCALL_DEFINEx(3, _##name, __VA_ARGS__)
6c5979631b4b03c Heiko Carstens           2009-02-11  217  #define SYSCALL_DEFINE4(name, ...) SYSCALL_DEFINEx(4, _##name, __VA_ARGS__)
6c5979631b4b03c Heiko Carstens           2009-02-11  218  #define SYSCALL_DEFINE5(name, ...) SYSCALL_DEFINEx(5, _##name, __VA_ARGS__)
6c5979631b4b03c Heiko Carstens           2009-02-11  219  #define SYSCALL_DEFINE6(name, ...) SYSCALL_DEFINEx(6, _##name, __VA_ARGS__)
1a94bc34768e463 Heiko Carstens           2009-01-14  220  
609320c8a22715b Yonghong Song            2017-09-07  221  #define SYSCALL_DEFINE_MAXARGS	6
609320c8a22715b Yonghong Song            2017-09-07  222  
bed1ffca022cc87 Frederic Weisbecker      2009-03-13  223  #define SYSCALL_DEFINEx(x, sname, ...)				\
99e621f796d7f03 Al Viro                  2013-03-05 @224  	SYSCALL_METADATA(sname, x, __VA_ARGS__)			\
bed1ffca022cc87 Frederic Weisbecker      2009-03-13  225  	__SYSCALL_DEFINEx(x, sname, __VA_ARGS__)
bed1ffca022cc87 Frederic Weisbecker      2009-03-13  226  

:::::: The code at line 152 was first introduced by commit
:::::: 3d56e331b6537671c66f1b510bed0f1e0331dfc8 tracing: Replace syscall_meta_data struct array with pointer array

:::::: TO: Steven Rostedt <srostedt@redhat.com>
:::::: CC: Steven Rostedt <rostedt@goodmis.org>

---
0-DAY CI Kernel Test Service, Intel Corporation
https://lists.01.org/hyperkitty/list/kbuild-all(a)lists.01.org

[-- Attachment #2: config.gz --]
[-- Type: application/gzip, Size: 54689 bytes --]

  parent reply	other threads:[~2020-04-24  5:20 UTC|newest]

Thread overview: 34+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2020-04-22  8:30 [PATCH bpf-next 0/2] Change return code if failed to load object Mao Wenan
2020-04-22  8:30 ` Mao Wenan
2020-04-22  8:30 ` [PATCH bpf-next 1/2] bpf: Change error code when ops is NULL Mao Wenan
2020-04-22  8:30   ` Mao Wenan
2020-04-22  9:33   ` Dan Carpenter
2020-04-22  9:33     ` Dan Carpenter
2020-04-23  3:33     ` [PATCH bpf-next v2 0/2] Change return code if failed to load object Mao Wenan
2020-04-23  3:33       ` Mao Wenan
2020-04-23  3:33       ` [PATCH bpf-next v2 1/2] bpf: Change error code when ops is NULL Mao Wenan
2020-04-23  3:33         ` Mao Wenan
2020-04-23  5:43         ` Alexei Starovoitov
2020-04-23  5:43           ` Alexei Starovoitov
2020-04-23  6:25           ` maowenan
2020-04-23  6:25             ` maowenan
2020-04-23 16:07             ` Alexei Starovoitov
2020-04-23 16:07               ` Alexei Starovoitov
2020-04-24  1:13               ` maowenan
2020-04-24  1:13                 ` maowenan
2020-04-23  3:33       ` [PATCH bpf-next v2 2/2] libbpf: Return err if bpf_object__load failed Mao Wenan
2020-04-23  3:33         ` Mao Wenan
2020-04-24  5:10   ` [PATCH bpf-next 1/2] bpf: Change error code when ops is NULL kbuild test robot
2020-04-24  5:10     ` kbuild test robot
2020-04-24  5:10     ` kbuild test robot
2020-04-24  5:18   ` kbuild test robot [this message]
2020-04-24  5:18     ` kbuild test robot
2020-04-30  1:55   ` kbuild test robot
2020-04-30  2:04     ` kbuild test robot
2020-04-30  2:04     ` kbuild test robot
2020-04-22  8:30 ` [PATCH bpf-next 2/2] libbpf: Return err if bpf_object__load failed Mao Wenan
2020-04-22  8:30   ` Mao Wenan
2020-04-22 23:27   ` Andrii Nakryiko
2020-04-22 23:27     ` Andrii Nakryiko
2020-04-24  1:46 [PATCH bpf-next 1/2] bpf: Change error code when ops is NULL kbuild test robot
2020-04-24 13:41 kbuild test robot

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=202004241349.zMfvRjhe%lkp@intel.com \
    --to=lkp@intel.com \
    --cc=andriin@fb.com \
    --cc=ast@kernel.org \
    --cc=bpf@vger.kernel.org \
    --cc=daniel@iogearbox.net \
    --cc=john.fastabend@gmail.com \
    --cc=kafai@fb.com \
    --cc=kbuild-all@lists.01.org \
    --cc=kernel-janitors@vger.kernel.org \
    --cc=kpsingh@chromium.org \
    --cc=linux-kernel@vger.kernel.org \
    --cc=maowenan@huawei.com \
    --cc=netdev@vger.kernel.org \
    --cc=songliubraving@fb.com \
    --cc=yhs@fb.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.