/home/green/git/lustre-release/lnet/lnet/module.c:425:1: error: data definition has no type or storage class [-Werror] 425 | __bpf_kfunc_start_defs(); | ^~~~~~~~~~~~~~~~~~~~~~ /home/green/git/lustre-release/lnet/lnet/module.c:425:1: error: type defaults to ‘int’ in declaration of ‘__bpf_kfunc_start_defs’ [-Werror=implicit-int] /home/green/git/lustre-release/lnet/lnet/module.c:425:1: error: function declaration isn’t a prototype [-Werror=strict-prototypes] /home/green/git/lustre-release/lnet/lnet/module.c:427:12: error: expected ‘;’ before ‘struct’ 427 | __bpf_kfunc struct lnet_msg *bpf_lnet_get_msg(struct lnet_msg *msg__ign) | ^~~~~~~ | ; /home/green/git/lustre-release/lnet/lnet/module.c:437:12: error: expected ‘;’ before ‘void’ 437 | __bpf_kfunc void bpf_lnet_put_msg(struct lnet_msg *msg) | ^~~~~ | ; /home/green/git/lustre-release/lnet/lnet/module.c:445:12: error: expected ‘;’ before ‘void’ 445 | __bpf_kfunc void bpf_lnet_load_bytes(void *dest, int dest__sz, | ^~~~~ | ; /home/green/git/lustre-release/lnet/lnet/module.c:471:12: error: expected ‘;’ before ‘void’ 471 | __bpf_kfunc void bpf_lnet_lazy_load_bytes(void *dest, int dest__sz, | ^~~~~ | ; /home/green/git/lustre-release/lnet/lnet/module.c:483:12: error: expected ‘;’ before ‘void’ 483 | __bpf_kfunc void bpf_lnet_ev_load_bytes(void *dest, int dest__sz, | ^~~~~ | ; /home/green/git/lustre-release/lnet/lnet/module.c:514:1: error: data definition has no type or storage class [-Werror] 514 | __bpf_kfunc_end_defs(); | ^~~~~~~~~~~~~~~~~~~~ /home/green/git/lustre-release/lnet/lnet/module.c:514:1: error: type defaults to ‘int’ in declaration of ‘__bpf_kfunc_end_defs’ [-Werror=implicit-int] /home/green/git/lustre-release/lnet/lnet/module.c:514:1: error: function declaration isn’t a prototype [-Werror=strict-prototypes] /home/green/git/lustre-release/lnet/lnet/module.c:516:1: error: data definition has no type or storage class [-Werror] 516 | BTF_KFUNCS_START(bpf_lnet_kfunc_ids); | ^~~~~~~~~~~~~~~~ /home/green/git/lustre-release/lnet/lnet/module.c:516:1: error: type defaults to ‘int’ in declaration of ‘BTF_KFUNCS_START’ [-Werror=implicit-int] /home/green/git/lustre-release/lnet/lnet/module.c:516:1: error: parameter names (without types) in function declaration [-Werror] /home/green/git/lustre-release/lnet/lnet/module.c:517:48: error: expected ‘)’ before ‘|’ token 517 | BTF_ID_FLAGS(func, bpf_lnet_get_msg, KF_ACQUIRE | KF_RET_NULL); | ^~ | ) /home/green/git/lustre-release/lnet/lnet/module.c:518:1: error: data definition has no type or storage class [-Werror] 518 | BTF_ID_FLAGS(func, bpf_lnet_put_msg, KF_RELEASE); | ^~~~~~~~~~~~ /home/green/git/lustre-release/lnet/lnet/module.c:518:1: error: type defaults to ‘int’ in declaration of ‘BTF_ID_FLAGS’ [-Werror=implicit-int] /home/green/git/lustre-release/lnet/lnet/module.c:518:1: error: parameter names (without types) in function declaration [-Werror] /home/green/git/lustre-release/lnet/lnet/module.c:519:1: error: data definition has no type or storage class [-Werror] 519 | BTF_ID_FLAGS(func, bpf_lnet_load_bytes, KF_TRUSTED_ARGS); | ^~~~~~~~~~~~ /home/green/git/lustre-release/lnet/lnet/module.c:519:1: error: type defaults to ‘int’ in declaration of ‘BTF_ID_FLAGS’ [-Werror=implicit-int] /home/green/git/lustre-release/lnet/lnet/module.c:519:1: error: parameter names (without types) in function declaration [-Werror] /home/green/git/lustre-release/lnet/lnet/module.c:520:1: error: data definition has no type or storage class [-Werror] 520 | BTF_ID_FLAGS(func, bpf_lnet_lazy_load_bytes, KF_TRUSTED_ARGS); | ^~~~~~~~~~~~ /home/green/git/lustre-release/lnet/lnet/module.c:520:1: error: type defaults to ‘int’ in declaration of ‘BTF_ID_FLAGS’ [-Werror=implicit-int] /home/green/git/lustre-release/lnet/lnet/module.c:520:1: error: parameter names (without types) in function declaration [-Werror] /home/green/git/lustre-release/lnet/lnet/module.c:521:43: error: expected ‘)’ before numeric constant 521 | BTF_ID_FLAGS(func, bpf_lnet_ev_load_bytes, 0); | ^~ | ) /home/green/git/lustre-release/lnet/lnet/module.c:522:1: error: data definition has no type or storage class [-Werror] 522 | BTF_KFUNCS_END(bpf_lnet_kfunc_ids); | ^~~~~~~~~~~~~~ /home/green/git/lustre-release/lnet/lnet/module.c:522:1: error: type defaults to ‘int’ in declaration of ‘BTF_KFUNCS_END’ [-Werror=implicit-int] /home/green/git/lustre-release/lnet/lnet/module.c:522:1: error: parameter names (without types) in function declaration [-Werror] /home/green/git/lustre-release/lnet/lnet/module.c:524:21: error: variable ‘bpf_lnet_kfunc_set’ has initializer but incomplete type 524 | static const struct btf_kfunc_id_set bpf_lnet_kfunc_set = { | ^~~~~~~~~~~~~~~~ /home/green/git/lustre-release/lnet/lnet/module.c:525:10: error: ‘const struct btf_kfunc_id_set’ has no member named ‘owner’ 525 | .owner = THIS_MODULE, | ^~~~~ In file included from ./include/linux/linkage.h:7, from ./include/linux/kernel.h:9, from ./include/linux/list.h:9, from ./include/linux/miscdevice.h:5, from /home/green/git/lustre-release/lnet/lnet/module.c:13: ./include/linux/export.h:29:21: error: excess elements in struct initializer [-Werror] 29 | #define THIS_MODULE (&__this_module) | ^ /home/green/git/lustre-release/lnet/lnet/module.c:525:18: note: in expansion of macro ‘THIS_MODULE’ 525 | .owner = THIS_MODULE, | ^~~~~~~~~~~ ./include/linux/export.h:29:21: note: (near initialization for ‘bpf_lnet_kfunc_set’) 29 | #define THIS_MODULE (&__this_module) | ^ /home/green/git/lustre-release/lnet/lnet/module.c:525:18: note: in expansion of macro ‘THIS_MODULE’ 525 | .owner = THIS_MODULE, | ^~~~~~~~~~~ /home/green/git/lustre-release/lnet/lnet/module.c:526:10: error: ‘const struct btf_kfunc_id_set’ has no member named ‘set’ 526 | .set = &bpf_lnet_kfunc_ids, | ^~~ /home/green/git/lustre-release/lnet/lnet/module.c:526:19: error: ‘bpf_lnet_kfunc_ids’ undeclared here (not in a function); did you mean ‘bpf_lnet_kfunc_set’? 526 | .set = &bpf_lnet_kfunc_ids, | ^~~~~~~~~~~~~~~~~~ | bpf_lnet_kfunc_set /home/green/git/lustre-release/lnet/lnet/module.c:526:18: error: excess elements in struct initializer [-Werror] 526 | .set = &bpf_lnet_kfunc_ids, | ^ /home/green/git/lustre-release/lnet/lnet/module.c:526:18: note: (near initialization for ‘bpf_lnet_kfunc_set’) /home/green/git/lustre-release/lnet/lnet/module.c:529:1: error: data definition has no type or storage class [-Werror] 529 | BTF_ID_LIST(bpf_lnet_dtor_ids); | ^~~~~~~~~~~ /home/green/git/lustre-release/lnet/lnet/module.c:529:1: error: type defaults to ‘int’ in declaration of ‘BTF_ID_LIST’ [-Werror=implicit-int] /home/green/git/lustre-release/lnet/lnet/module.c:529:1: error: parameter names (without types) in function declaration [-Werror] /home/green/git/lustre-release/lnet/lnet/module.c:530:14: error: expected ‘{’ before ‘,’ token 530 | BTF_ID(struct, lnet_msg); | ^ /home/green/git/lustre-release/lnet/lnet/module.c:531:1: error: data definition has no type or storage class [-Werror] 531 | BTF_ID(func, bpf_lnet_put_msg); | ^~~~~~ /home/green/git/lustre-release/lnet/lnet/module.c:531:1: error: type defaults to ‘int’ in declaration of ‘BTF_ID’ [-Werror=implicit-int] /home/green/git/lustre-release/lnet/lnet/module.c:531:1: error: parameter names (without types) in function declaration [-Werror] /home/green/git/lustre-release/lnet/lnet/module.c: In function ‘lnet_init’: /home/green/git/lustre-release/lnet/lnet/module.c:536:40: error: array type has incomplete element type ‘struct btf_id_dtor_kfunc’ 536 | const struct btf_id_dtor_kfunc bpf_lnet_dtors[] = { | ^~~~~~~~~~~~~~ /home/green/git/lustre-release/lnet/lnet/module.c:538:43: error: ‘bpf_lnet_dtor_ids’ undeclared (first use in this function); did you mean ‘bpf_lnet_dtors’? 538 | .btf_id = bpf_lnet_dtor_ids[0], | ^~~~~~~~~~~~~~~~~ | bpf_lnet_dtors /home/green/git/lustre-release/lnet/lnet/module.c:538:43: note: each undeclared identifier is reported only once for each function it appears in /home/green/git/lustre-release/lnet/lnet/module.c:545:14: error: implicit declaration of function ‘register_btf_kfunc_id_set’ [-Werror=implicit-function-declaration] 545 | rc = register_btf_kfunc_id_set(BPF_PROG_TYPE_UNSPEC, &bpf_lnet_kfunc_set); | ^~~~~~~~~~~~~~~~~~~~~~~~~ /home/green/git/lustre-release/lnet/lnet/module.c:545:40: error: ‘BPF_PROG_TYPE_UNSPEC’ undeclared (first use in this function) 545 | rc = register_btf_kfunc_id_set(BPF_PROG_TYPE_UNSPEC, &bpf_lnet_kfunc_set); | ^~~~~~~~~~~~~~~~~~~~ /home/green/git/lustre-release/lnet/lnet/module.c:549:14: error: implicit declaration of function ‘register_btf_id_dtor_kfuncs’ [-Werror=implicit-function-declaration] 549 | rc = register_btf_id_dtor_kfuncs(bpf_lnet_dtors, | ^~~~~~~~~~~~~~~~~~~~~~~~~~~ In file included from ./include/linux/container_of.h:5, from ./include/linux/kernel.h:13, from ./include/linux/list.h:9, from ./include/linux/miscdevice.h:5, from /home/green/git/lustre-release/lnet/lnet/module.c:13: ./include/linux/build_bug.h:16:51: error: bit-field ‘’ width not an integer constant 16 | #define BUILD_BUG_ON_ZERO(e) ((int)(sizeof(struct { int:(-!!(e)); }))) | ^ ./include/linux/compiler.h:242:33: note: in expansion of macro ‘BUILD_BUG_ON_ZERO’ 242 | #define __must_be_array(a) BUILD_BUG_ON_ZERO(__same_type((a), &(a)[0])) | ^~~~~~~~~~~~~~~~~ ./include/linux/array_size.h:11:59: note: in expansion of macro ‘__must_be_array’ 11 | #define ARRAY_SIZE(arr) (sizeof(arr) / sizeof((arr)[0]) + __must_be_array(arr)) | ^~~~~~~~~~~~~~~ /home/green/git/lustre-release/lnet/lnet/module.c:550:42: note: in expansion of macro ‘ARRAY_SIZE’ 550 | ARRAY_SIZE(bpf_lnet_dtors), | ^~~~~~~~~~ /home/green/git/lustre-release/lnet/lnet/module.c:536:40: error: unused variable ‘bpf_lnet_dtors’ [-Werror=unused-variable] 536 | const struct btf_id_dtor_kfunc bpf_lnet_dtors[] = { | ^~~~~~~~~~~~~~ /home/green/git/lustre-release/lnet/lnet/module.c: At top level: /home/green/git/lustre-release/lnet/lnet/module.c:524:38: error: storage size of ‘bpf_lnet_kfunc_set’ isn’t known 524 | static const struct btf_kfunc_id_set bpf_lnet_kfunc_set = { | ^~~~~~~~~~~~~~~~~~ cc1: all warnings being treated as errors make[6]: *** [scripts/Makefile.build:249: /home/green/git/lustre-release/lnet/lnet/module.o] Error 1 make[6]: *** Waiting for unfinished jobs.... make[5]: *** [scripts/Makefile.build:478: /home/green/git/lustre-release/lnet/lnet] Error 2 make[4]: *** [scripts/Makefile.build:478: /home/green/git/lustre-release/lnet] Error 2 make[3]: *** [Makefile:1944: /home/green/git/lustre-release] Error 2 make[2]: *** [autoMakefile:1242: modules] Error 2 make[1]: *** [autoMakefile:744: all-recursive] Error 1 make: *** [autoMakefile:594: all] Error 2