====== Cleaning ====== ../../../scripts/Makefile.include:4: *** O=build_tools/ does not exist. Stop. ../../../scripts/Makefile.include:4: *** O=build_tools/ does not exist. Stop. ====== Baseline building the tree ====== make[1]: Circular /home/nipa/net-next/wt-1/build_tools/kselftest/alsa/global-timer <- /home/nipa/net-next/wt-1/build_tools/kselftest/alsa/global-timer dependency dropped. Warning: Kernel ABI header at 'tools/include/uapi/linux/if_xdp.h' differs from latest version at 'include/uapi/linux/if_xdp.h' In file included from create_dsq.bpf.c:9: /home/nipa/net-next/wt-1/tools/sched_ext/include/scx/common.bpf.h:33:17: error: use of undeclared identifier 'SCX_DSQ_FLAG_BUILTIN' 33 | _Static_assert(SCX_DSQ_FLAG_BUILTIN, | ^ /home/nipa/net-next/wt-1/tools/sched_ext/include/scx/common.bpf.h:44:49: warning: declaration of 'struct bpf_iter_scx_dsq' will not be visible outside of this function [-Wvisibility] 44 | void scx_bpf_dispatch_from_dsq_set_slice(struct bpf_iter_scx_dsq *it__iter, u64 slice) __ksym __weak; | ^ /home/nipa/net-next/wt-1/tools/sched_ext/include/scx/common.bpf.h:45:49: warning: declaration of 'struct bpf_iter_scx_dsq' will not be visible outside of this function [-Wvisibility] 45 | void scx_bpf_dispatch_from_dsq_set_vtime(struct bpf_iter_scx_dsq *it__iter, u64 vtime) __ksym __weak; | ^ /home/nipa/net-next/wt-1/tools/sched_ext/include/scx/common.bpf.h:46:39: warning: declaration of 'struct bpf_iter_scx_dsq' will not be visible outside of this function [-Wvisibility] 46 | bool scx_bpf_dispatch_from_dsq(struct bpf_iter_scx_dsq *it__iter, struct task_struct *p, u64 dsq_id, u64 enq_flags) __ksym __weak; | ^ /home/nipa/net-next/wt-1/tools/sched_ext/include/scx/common.bpf.h:47:45: warning: declaration of 'struct bpf_iter_scx_dsq' will not be visible outside of this function [-Wvisibility] 47 | bool scx_bpf_dispatch_vtime_from_dsq(struct bpf_iter_scx_dsq *it__iter, struct task_struct *p, u64 dsq_id, u64 enq_flags) __ksym __weak; | ^ /home/nipa/net-next/wt-1/tools/sched_ext/include/scx/common.bpf.h:52:33: warning: declaration of 'struct bpf_iter_scx_dsq' will not be visible outside of this function [-Wvisibility] 52 | int bpf_iter_scx_dsq_new(struct bpf_iter_scx_dsq *it, u64 dsq_id, u64 flags) __ksym __weak; | ^ /home/nipa/net-next/wt-1/tools/sched_ext/include/scx/common.bpf.h:53:50: warning: declaration of 'struct bpf_iter_scx_dsq' will not be visible outside of this function [-Wvisibility] 53 | struct task_struct *bpf_iter_scx_dsq_next(struct bpf_iter_scx_dsq *it) __ksym __weak; | ^ /home/nipa/net-next/wt-1/tools/sched_ext/include/scx/common.bpf.h:54:38: warning: declaration of 'struct bpf_iter_scx_dsq' will not be visible outside of this function [-Wvisibility] 54 | void bpf_iter_scx_dsq_destroy(struct bpf_iter_scx_dsq *it) __ksym __weak; | ^ create_dsq.bpf.c:14:14: warning: declaration of 'struct scx_exit_task_args' will not be visible outside of this function [-Wvisibility] 14 | struct scx_exit_task_args *args) | ^ create_dsq.bpf.c:14:14: warning: declaration of 'struct scx_exit_task_args' will not be visible outside of this function [-Wvisibility] create_dsq.bpf.c:13:6: error: conflicting types for '____create_dsq_exit_task' 13 | void BPF_STRUCT_OPS(create_dsq_exit_task, struct task_struct *p, | ^ /home/nipa/net-next/wt-1/tools/sched_ext/include/scx/common.bpf.h:140:32: note: expanded from macro 'BPF_STRUCT_OPS' 140 | SEC("struct_ops/"#name) \ | ^ /home/nipa/net-next/wt-1/build_tools/kselftest/sched_ext/build/include/bpf/bpf_tracing.h:683:48: note: expanded from macro '\ BPF_PROG' 683 | static __always_inline typeof(name(0)) \ | ^ :24:1: note: expanded from here 24 | ____create_dsq_exit_task | ^ create_dsq.bpf.c:13:6: note: previous declaration is here /home/nipa/net-next/wt-1/tools/sched_ext/include/scx/common.bpf.h:140:32: note: expanded from macro 'BPF_STRUCT_OPS' 140 | SEC("struct_ops/"#name) \ | ^ /home/nipa/net-next/wt-1/build_tools/kselftest/sched_ext/build/include/bpf/bpf_tracing.h:674:48: note: expanded from macro '\ BPF_PROG' 674 | static __always_inline typeof(name(0)) \ | ^ :15:1: note: expanded from here 15 | ____create_dsq_exit_task | ^ create_dsq.bpf.c:20:16: warning: declaration of 'struct scx_init_task_args' will not be visible outside of this function [-Wvisibility] 20 | struct scx_init_task_args *args) | ^ create_dsq.bpf.c:20:16: warning: declaration of 'struct scx_init_task_args' will not be visible outside of this function [-Wvisibility] create_dsq.bpf.c:19:5: error: conflicting types for '____create_dsq_init_task' 19 | s32 BPF_STRUCT_OPS_SLEEPABLE(create_dsq_init_task, struct task_struct *p, | ^ /home/nipa/net-next/wt-1/tools/sched_ext/include/scx/common.bpf.h:144:33: note: expanded from macro 'BPF_STRUCT_OPS_SLEEPABLE' 144 | SEC("struct_ops.s/"#name) \ | ^ /home/nipa/net-next/wt-1/build_tools/kselftest/sched_ext/build/include/bpf/bpf_tracing.h:683:48: note: expanded from macro '\ BPF_PROG' 683 | static __always_inline typeof(name(0)) \ | ^ :41:1: note: expanded from here 41 | ____create_dsq_init_task | ^ create_dsq.bpf.c:19:5: note: previous declaration is here /home/nipa/net-next/wt-1/tools/sched_ext/include/scx/common.bpf.h:144:33: note: expanded from macro 'BPF_STRUCT_OPS_SLEEPABLE' 144 | SEC("struct_ops.s/"#name) \ | ^ /home/nipa/net-next/wt-1/build_tools/kselftest/sched_ext/build/include/bpf/bpf_tracing.h:674:48: note: expanded from macro '\ BPF_PROG' 674 | static __always_inline typeof(name(0)) \ | ^ :32:1: note: expanded from here 32 | ____create_dsq_init_task | ^ create_dsq.bpf.c:53:22: error: variable has incomplete type 'struct sched_ext_ops' 53 | struct sched_ext_ops create_dsq_ops = { | ^ create_dsq.bpf.c:53:8: note: forward declaration of 'struct sched_ext_ops' 53 | struct sched_ext_ops create_dsq_ops = { | ^ 11 warnings and 4 errors generated. make[1]: *** [Makefile:136: /home/nipa/net-next/wt-1/build_tools/kselftest/sched_ext/build/obj/sched_ext/create_dsq.bpf.o] Error 1 make[1]: *** Waiting for unfinished jobs.... In file included from ddsp_bogus_dsq_fail.bpf.c:7: /home/nipa/net-next/wt-1/tools/sched_ext/include/scx/common.bpf.h:33:17: error: use of undeclared identifier 'SCX_DSQ_FLAG_BUILTIN' 33 | _Static_assert(SCX_DSQ_FLAG_BUILTIN, | ^ /home/nipa/net-next/wt-1/tools/sched_ext/include/scx/common.bpf.h:44:49: warning: declaration of 'struct bpf_iter_scx_dsq' will not be visible outside of this function [-Wvisibility] 44 | void scx_bpf_dispatch_from_dsq_set_slice(struct bpf_iter_scx_dsq *it__iter, u64 slice) __ksym __weak; | ^ /home/nipa/net-next/wt-1/tools/sched_ext/include/scx/common.bpf.h:45:49: warning: declaration of 'struct bpf_iter_scx_dsq' will not be visible outside of this function [-Wvisibility] 45 | void scx_bpf_dispatch_from_dsq_set_vtime(struct bpf_iter_scx_dsq *it__iter, u64 vtime) __ksym __weak; | ^ /home/nipa/net-next/wt-1/tools/sched_ext/include/scx/common.bpf.h:46:39: warning: declaration of 'struct bpf_iter_scx_dsq' will not be visible outside of this function [-Wvisibility] 46 | bool scx_bpf_dispatch_from_dsq(struct bpf_iter_scx_dsq *it__iter, struct task_struct *p, u64 dsq_id, u64 enq_flags) __ksym __weak; | ^ /home/nipa/net-next/wt-1/tools/sched_ext/include/scx/common.bpf.h:47:45: warning: declaration of 'struct bpf_iter_scx_dsq' will not be visible outside of this function [-Wvisibility] 47 | bool scx_bpf_dispatch_vtime_from_dsq(struct bpf_iter_scx_dsq *it__iter, struct task_struct *p, u64 dsq_id, u64 enq_flags) __ksym __weak; | ^ /home/nipa/net-next/wt-1/tools/sched_ext/include/scx/common.bpf.h:52:33: warning: declaration of 'struct bpf_iter_scx_dsq' will not be visible outside of this function [-Wvisibility] 52 | int bpf_iter_scx_dsq_new(struct bpf_iter_scx_dsq *it, u64 dsq_id, u64 flags) __ksym __weak; | ^ /home/nipa/net-next/wt-1/tools/sched_ext/include/scx/common.bpf.h:53:50: warning: declaration of 'struct bpf_iter_scx_dsq' will not be visible outside of this function [-Wvisibility] 53 | struct task_struct *bpf_iter_scx_dsq_next(struct bpf_iter_scx_dsq *it) __ksym __weak; | ^ /home/nipa/net-next/wt-1/tools/sched_ext/include/scx/common.bpf.h:54:38: warning: declaration of 'struct bpf_iter_scx_dsq' will not be visible outside of this function [-Wvisibility] 54 | void bpf_iter_scx_dsq_destroy(struct bpf_iter_scx_dsq *it) __ksym __weak; | ^ ddsp_bogus_dsq_fail.bpf.c:24:15: error: no member named 'scx' in 'struct task_struct' 24 | p->scx.dsq_vtime, 0); | ~ ^ ddsp_bogus_dsq_fail.bpf.c:23:41: error: use of undeclared identifier 'SCX_SLICE_DFL' 23 | scx_bpf_dispatch_vtime(p, 0xcafef00d, SCX_SLICE_DFL, | ^ ddsp_bogus_dsq_fail.bpf.c:31:54: warning: declaration of 'struct scx_exit_info' will not be visible outside of this function [-Wvisibility] 31 | void BPF_STRUCT_OPS(ddsp_bogus_dsq_fail_exit, struct scx_exit_info *ei) | ^ ddsp_bogus_dsq_fail.bpf.c:31:54: warning: declaration of 'struct scx_exit_info' will not be visible outside of this function [-Wvisibility] ddsp_bogus_dsq_fail.bpf.c:31:6: error: conflicting types for '____ddsp_bogus_dsq_fail_exit' 31 | void BPF_STRUCT_OPS(ddsp_bogus_dsq_fail_exit, struct scx_exit_info *ei) | ^ /home/nipa/net-next/wt-1/tools/sched_ext/include/scx/common.bpf.h:140:32: note: expanded from macro 'BPF_STRUCT_OPS' 140 | SEC("struct_ops/"#name) \ | ^ /home/nipa/net-next/wt-1/build_tools/kselftest/sched_ext/build/include/bpf/bpf_tracing.h:683:48: note: expanded from macro '\ BPF_PROG' 683 | static __always_inline typeof(name(0)) \ | ^ :57:1: note: expanded from here 57 | ____ddsp_bogus_dsq_fail_exit | ^ ddsp_bogus_dsq_fail.bpf.c:31:6: note: previous declaration is here /home/nipa/net-next/wt-1/tools/sched_ext/include/scx/common.bpf.h:140:32: note: expanded from macro 'BPF_STRUCT_OPS' 140 | SEC("struct_ops/"#name) \ | ^ /home/nipa/net-next/wt-1/build_tools/kselftest/sched_ext/build/include/bpf/bpf_tracing.h:674:48: note: expanded from macro '\ BPF_PROG' 674 | static __always_inline typeof(name(0)) \ | ^ :48:1: note: expanded from here 48 | ____ddsp_bogus_dsq_fail_exit | ^ ddsp_bogus_dsq_fail.bpf.c:33:2: error: incomplete definition of type 'struct scx_exit_info' 33 | UEI_RECORD(uei, ei); | ^~~~~~~~~~~~~~~~~~~ /home/nipa/net-next/wt-1/tools/sched_ext/include/scx/user_exit_info.h:42:40: note: expanded from macro 'UEI_RECORD' 42 | sizeof(__uei_name.reason), (__ei)->reason); \ | ~~~~~~^ ddsp_bogus_dsq_fail.bpf.c:31:54: note: forward declaration of 'struct scx_exit_info' 31 | void BPF_STRUCT_OPS(ddsp_bogus_dsq_fail_exit, struct scx_exit_info *ei) | ^ ddsp_bogus_dsq_fail.bpf.c:33:2: error: incomplete definition of type 'struct scx_exit_info' 33 | UEI_RECORD(uei, ei); | ^~~~~~~~~~~~~~~~~~~ /home/nipa/net-next/wt-1/tools/sched_ext/include/scx/user_exit_info.h:44:37: note: expanded from macro 'UEI_RECORD' 44 | sizeof(__uei_name.msg), (__ei)->msg); \ | ~~~~~~^ ddsp_bogus_dsq_fail.bpf.c:31:54: note: forward declaration of 'struct scx_exit_info' 31 | void BPF_STRUCT_OPS(ddsp_bogus_dsq_fail_exit, struct scx_exit_info *ei) | ^ ddsp_bogus_dsq_fail.bpf.c:33:2: error: incomplete definition of type 'struct scx_exit_info' 33 | UEI_RECORD(uei, ei); | ^~~~~~~~~~~~~~~~~~~ /home/nipa/net-next/wt-1/tools/sched_ext/include/scx/user_exit_info.h:46:36: note: expanded from macro 'UEI_RECORD' 46 | __uei_name##_dump_len, (__ei)->dump); \ | ~~~~~~^ ddsp_bogus_dsq_fail.bpf.c:31:54: note: forward declaration of 'struct scx_exit_info' 31 | void BPF_STRUCT_OPS(ddsp_bogus_dsq_fail_exit, struct scx_exit_info *ei) | ^ ddsp_bogus_dsq_fail.bpf.c:33:2: error: incomplete definition of type 'struct scx_exit_info' 33 | UEI_RECORD(uei, ei); | ^~~~~~~~~~~~~~~~~~~ /home/nipa/net-next/wt-1/tools/sched_ext/include/scx/user_exit_info.h:47:34: note: expanded from macro 'UEI_RECORD' 47 | if (bpf_core_field_exists((__ei)->exit_code)) \ | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~ /home/nipa/net-next/wt-1/build_tools/kselftest/sched_ext/build/include/bpf/bpf_core_read.h:188:49: note: expanded from macro 'bpf_core_field_exists' 188 | __builtin_preserve_field_info(___bpf_field_ref(field), BPF_FIELD_EXISTS) | ~~~~~~~~~~~~~~~~~^~~~~~ /home/nipa/net-next/wt-1/build_tools/kselftest/sched_ext/build/include/bpf/bpf_core_read.h:173:52: note: expanded from macro '___bpf_field_ref' 173 | ___bpf_apply(___bpf_field_ref, ___bpf_narg(args))(args) | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~ /home/nipa/net-next/wt-1/build_tools/kselftest/sched_ext/build/include/bpf/bpf_core_read.h:166:35: note: expanded from macro '___bpf_field_ref1' 166 | #define ___bpf_field_ref1(field) (field) | ^~~~~ ddsp_bogus_dsq_fail.bpf.c:31:54: note: forward declaration of 'struct scx_exit_info' 31 | void BPF_STRUCT_OPS(ddsp_bogus_dsq_fail_exit, struct scx_exit_info *ei) | ^ ddsp_bogus_dsq_fail.bpf.c:33:2: error: incomplete definition of type 'struct scx_exit_info' 33 | UEI_RECORD(uei, ei); | ^~~~~~~~~~~~~~~~~~~ /home/nipa/net-next/wt-1/tools/sched_ext/include/scx/user_exit_info.h:48:32: note: expanded from macro 'UEI_RECORD' 48 | __uei_name.exit_code = (__ei)->exit_code; \ | ~~~~~~^ ddsp_bogus_dsq_fail.bpf.c:31:54: note: forward declaration of 'struct scx_exit_info' 31 | void BPF_STRUCT_OPS(ddsp_bogus_dsq_fail_exit, struct scx_exit_info *ei) | ^ ddsp_bogus_dsq_fail.bpf.c:33:2: error: incomplete definition of type 'struct scx_exit_info' 33 | UEI_RECORD(uei, ei); | ^~~~~~~~~~~~~~~~~~~ /home/nipa/net-next/wt-1/tools/sched_ext/include/scx/user_exit_info.h:51:15: note: expanded from macro 'UEI_RECORD' 51 | (__ei)->kind); \ | ~~~~~~^ ddsp_bogus_dsq_fail.bpf.c:31:54: note: forward declaration of 'struct scx_exit_info' 31 | void BPF_STRUCT_OPS(ddsp_bogus_dsq_fail_exit, struct scx_exit_info *ei) | ^ ddsp_bogus_dsq_fail.bpf.c:37:22: error: variable has incomplete type 'struct sched_ext_ops' 37 | struct sched_ext_ops ddsp_bogus_dsq_fail_ops = { | ^ ddsp_bogus_dsq_fail.bpf.c:37:8: note: forward declaration of 'struct sched_ext_ops' 37 | struct sched_ext_ops ddsp_bogus_dsq_fail_ops = { | ^ 9 warnings and 11 errors generated. make[1]: *** [Makefile:136: /home/nipa/net-next/wt-1/build_tools/kselftest/sched_ext/build/obj/sched_ext/ddsp_bogus_dsq_fail.bpf.o] Error 1 In file included from ddsp_vtimelocal_fail.bpf.c:7: /home/nipa/net-next/wt-1/tools/sched_ext/include/scx/common.bpf.h:33:17: error: use of undeclared identifier 'SCX_DSQ_FLAG_BUILTIN' 33 | _Static_assert(SCX_DSQ_FLAG_BUILTIN, | ^ /home/nipa/net-next/wt-1/tools/sched_ext/include/scx/common.bpf.h:44:49: warning: declaration of 'struct bpf_iter_scx_dsq' will not be visible outside of this function [-Wvisibility] 44 | void scx_bpf_dispatch_from_dsq_set_slice(struct bpf_iter_scx_dsq *it__iter, u64 slice) __ksym __weak; | ^ /home/nipa/net-next/wt-1/tools/sched_ext/include/scx/common.bpf.h:45:49: warning: declaration of 'struct bpf_iter_scx_dsq' will not be visible outside of this function [-Wvisibility] 45 | void scx_bpf_dispatch_from_dsq_set_vtime(struct bpf_iter_scx_dsq *it__iter, u64 vtime) __ksym __weak; | ^ /home/nipa/net-next/wt-1/tools/sched_ext/include/scx/common.bpf.h:46:39: warning: declaration of 'struct bpf_iter_scx_dsq' will not be visible outside of this function [-Wvisibility] 46 | bool scx_bpf_dispatch_from_dsq(struct bpf_iter_scx_dsq *it__iter, struct task_struct *p, u64 dsq_id, u64 enq_flags) __ksym __weak; | ^ /home/nipa/net-next/wt-1/tools/sched_ext/include/scx/common.bpf.h:47:45: warning: declaration of 'struct bpf_iter_scx_dsq' will not be visible outside of this function [-Wvisibility] 47 | bool scx_bpf_dispatch_vtime_from_dsq(struct bpf_iter_scx_dsq *it__iter, struct task_struct *p, u64 dsq_id, u64 enq_flags) __ksym __weak; | ^ /home/nipa/net-next/wt-1/tools/sched_ext/include/scx/common.bpf.h:52:33: warning: declaration of 'struct bpf_iter_scx_dsq' will not be visible outside of this function [-Wvisibility] 52 | int bpf_iter_scx_dsq_new(struct bpf_iter_scx_dsq *it, u64 dsq_id, u64 flags) __ksym __weak; | ^ /home/nipa/net-next/wt-1/tools/sched_ext/include/scx/common.bpf.h:53:50: warning: declaration of 'struct bpf_iter_scx_dsq' will not be visible outside of this function [-Wvisibility] 53 | struct task_struct *bpf_iter_scx_dsq_next(struct bpf_iter_scx_dsq *it) __ksym __weak; | ^ /home/nipa/net-next/wt-1/tools/sched_ext/include/scx/common.bpf.h:54:38: warning: declaration of 'struct bpf_iter_scx_dsq' will not be visible outside of this function [-Wvisibility] 54 | void bpf_iter_scx_dsq_destroy(struct bpf_iter_scx_dsq *it) __ksym __weak; | ^ ddsp_vtimelocal_fail.bpf.c:21:15: error: no member named 'scx' in 'struct task_struct' 21 | p->scx.dsq_vtime, 0); | ~ ^ ddsp_vtimelocal_fail.bpf.c:20:29: error: use of undeclared identifier 'SCX_DSQ_LOCAL' 20 | scx_bpf_dispatch_vtime(p, SCX_DSQ_LOCAL, SCX_SLICE_DFL, | ^ ddsp_vtimelocal_fail.bpf.c:20:44: error: use of undeclared identifier 'SCX_SLICE_DFL' 20 | scx_bpf_dispatch_vtime(p, SCX_DSQ_LOCAL, SCX_SLICE_DFL, | ^ ddsp_vtimelocal_fail.bpf.c:28:55: warning: declaration of 'struct scx_exit_info' will not be visible outside of this function [-Wvisibility] 28 | void BPF_STRUCT_OPS(ddsp_vtimelocal_fail_exit, struct scx_exit_info *ei) | ^ ddsp_vtimelocal_fail.bpf.c:28:55: warning: declaration of 'struct scx_exit_info' will not be visible outside of this function [-Wvisibility] ddsp_vtimelocal_fail.bpf.c:28:6: error: conflicting types for '____ddsp_vtimelocal_fail_exit' 28 | void BPF_STRUCT_OPS(ddsp_vtimelocal_fail_exit, struct scx_exit_info *ei) | ^ /home/nipa/net-next/wt-1/tools/sched_ext/include/scx/common.bpf.h:140:32: note: expanded from macro 'BPF_STRUCT_OPS' 140 | SEC("struct_ops/"#name) \ | ^ /home/nipa/net-next/wt-1/build_tools/kselftest/sched_ext/build/include/bpf/bpf_tracing.h:683:48: note: expanded from macro '\ BPF_PROG' 683 | static __always_inline typeof(name(0)) \ | ^ :57:1: note: expanded from here 57 | ____ddsp_vtimelocal_fail_exit | ^ ddsp_vtimelocal_fail.bpf.c:28:6: note: previous declaration is here /home/nipa/net-next/wt-1/tools/sched_ext/include/scx/common.bpf.h:140:32: note: expanded from macro 'BPF_STRUCT_OPS' 140 | SEC("struct_ops/"#name) \ | ^ /home/nipa/net-next/wt-1/build_tools/kselftest/sched_ext/build/include/bpf/bpf_tracing.h:674:48: note: expanded from macro '\ BPF_PROG' 674 | static __always_inline typeof(name(0)) \ | ^ :48:1: note: expanded from here 48 | ____ddsp_vtimelocal_fail_exit | ^ ddsp_vtimelocal_fail.bpf.c:30:2: error: incomplete definition of type 'struct scx_exit_info' 30 | UEI_RECORD(uei, ei); | ^~~~~~~~~~~~~~~~~~~ /home/nipa/net-next/wt-1/tools/sched_ext/include/scx/user_exit_info.h:42:40: note: expanded from macro 'UEI_RECORD' 42 | sizeof(__uei_name.reason), (__ei)->reason); \ | ~~~~~~^ ddsp_vtimelocal_fail.bpf.c:28:55: note: forward declaration of 'struct scx_exit_info' 28 | void BPF_STRUCT_OPS(ddsp_vtimelocal_fail_exit, struct scx_exit_info *ei) | ^ ddsp_vtimelocal_fail.bpf.c:30:2: error: incomplete definition of type 'struct scx_exit_info' 30 | UEI_RECORD(uei, ei); | ^~~~~~~~~~~~~~~~~~~ /home/nipa/net-next/wt-1/tools/sched_ext/include/scx/user_exit_info.h:44:37: note: expanded from macro 'UEI_RECORD' 44 | sizeof(__uei_name.msg), (__ei)->msg); \ | ~~~~~~^ ddsp_vtimelocal_fail.bpf.c:28:55: note: forward declaration of 'struct scx_exit_info' 28 | void BPF_STRUCT_OPS(ddsp_vtimelocal_fail_exit, struct scx_exit_info *ei) | ^ ddsp_vtimelocal_fail.bpf.c:30:2: error: incomplete definition of type 'struct scx_exit_info' 30 | UEI_RECORD(uei, ei); | ^~~~~~~~~~~~~~~~~~~ /home/nipa/net-next/wt-1/tools/sched_ext/include/scx/user_exit_info.h:46:36: note: expanded from macro 'UEI_RECORD' 46 | __uei_name##_dump_len, (__ei)->dump); \ | ~~~~~~^ ddsp_vtimelocal_fail.bpf.c:28:55: note: forward declaration of 'struct scx_exit_info' 28 | void BPF_STRUCT_OPS(ddsp_vtimelocal_fail_exit, struct scx_exit_info *ei) | ^ ddsp_vtimelocal_fail.bpf.c:30:2: error: incomplete definition of type 'struct scx_exit_info' 30 | UEI_RECORD(uei, ei); | ^~~~~~~~~~~~~~~~~~~ /home/nipa/net-next/wt-1/tools/sched_ext/include/scx/user_exit_info.h:47:34: note: expanded from macro 'UEI_RECORD' 47 | if (bpf_core_field_exists((__ei)->exit_code)) \ | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~ /home/nipa/net-next/wt-1/build_tools/kselftest/sched_ext/build/include/bpf/bpf_core_read.h:188:49: note: expanded from macro 'bpf_core_field_exists' 188 | __builtin_preserve_field_info(___bpf_field_ref(field), BPF_FIELD_EXISTS) | ~~~~~~~~~~~~~~~~~^~~~~~ /home/nipa/net-next/wt-1/build_tools/kselftest/sched_ext/build/include/bpf/bpf_core_read.h:173:52: note: expanded from macro '___bpf_field_ref' 173 | ___bpf_apply(___bpf_field_ref, ___bpf_narg(args))(args) | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~ /home/nipa/net-next/wt-1/build_tools/kselftest/sched_ext/build/include/bpf/bpf_core_read.h:166:35: note: expanded from macro '___bpf_field_ref1' 166 | #define ___bpf_field_ref1(field) (field) | ^~~~~ ddsp_vtimelocal_fail.bpf.c:28:55: note: forward declaration of 'struct scx_exit_info' 28 | void BPF_STRUCT_OPS(ddsp_vtimelocal_fail_exit, struct scx_exit_info *ei) | ^ ddsp_vtimelocal_fail.bpf.c:30:2: error: incomplete definition of type 'struct scx_exit_info' 30 | UEI_RECORD(uei, ei); | ^~~~~~~~~~~~~~~~~~~ /home/nipa/net-next/wt-1/tools/sched_ext/include/scx/user_exit_info.h:48:32: note: expanded from macro 'UEI_RECORD' 48 | __uei_name.exit_code = (__ei)->exit_code; \ | ~~~~~~^ ddsp_vtimelocal_fail.bpf.c:28:55: note: forward declaration of 'struct scx_exit_info' 28 | void BPF_STRUCT_OPS(ddsp_vtimelocal_fail_exit, struct scx_exit_info *ei) | ^ ddsp_vtimelocal_fail.bpf.c:30:2: error: incomplete definition of type 'struct scx_exit_info' 30 | UEI_RECORD(uei, ei); | ^~~~~~~~~~~~~~~~~~~ /home/nipa/net-next/wt-1/tools/sched_ext/include/scx/user_exit_info.h:51:15: note: expanded from macro 'UEI_RECORD' 51 | (__ei)->kind); \ | ~~~~~~^ ddsp_vtimelocal_fail.bpf.c:28:55: note: forward declaration of 'struct scx_exit_info' 28 | void BPF_STRUCT_OPS(ddsp_vtimelocal_fail_exit, struct scx_exit_info *ei) | ^ ddsp_vtimelocal_fail.bpf.c:34:22: error: variable has incomplete type 'struct sched_ext_ops' 34 | struct sched_ext_ops ddsp_vtimelocal_fail_ops = { | ^ ddsp_vtimelocal_fail.bpf.c:34:8: note: forward declaration of 'struct sched_ext_ops' 34 | struct sched_ext_ops ddsp_vtimelocal_fail_ops = { | ^ 9 warnings and 12 errors generated. make[1]: *** [Makefile:136: /home/nipa/net-next/wt-1/build_tools/kselftest/sched_ext/build/obj/sched_ext/ddsp_vtimelocal_fail.bpf.o] Error 1 In file included from dsp_local_on.bpf.c:6: /home/nipa/net-next/wt-1/tools/sched_ext/include/scx/common.bpf.h:33:17: error: use of undeclared identifier 'SCX_DSQ_FLAG_BUILTIN' 33 | _Static_assert(SCX_DSQ_FLAG_BUILTIN, | ^ /home/nipa/net-next/wt-1/tools/sched_ext/include/scx/common.bpf.h:44:49: warning: declaration of 'struct bpf_iter_scx_dsq' will not be visible outside of this function [-Wvisibility] 44 | void scx_bpf_dispatch_from_dsq_set_slice(struct bpf_iter_scx_dsq *it__iter, u64 slice) __ksym __weak; | ^ /home/nipa/net-next/wt-1/tools/sched_ext/include/scx/common.bpf.h:45:49: warning: declaration of 'struct bpf_iter_scx_dsq' will not be visible outside of this function [-Wvisibility] 45 | void scx_bpf_dispatch_from_dsq_set_vtime(struct bpf_iter_scx_dsq *it__iter, u64 vtime) __ksym __weak; | ^ /home/nipa/net-next/wt-1/tools/sched_ext/include/scx/common.bpf.h:46:39: warning: declaration of 'struct bpf_iter_scx_dsq' will not be visible outside of this function [-Wvisibility] 46 | bool scx_bpf_dispatch_from_dsq(struct bpf_iter_scx_dsq *it__iter, struct task_struct *p, u64 dsq_id, u64 enq_flags) __ksym __weak; | ^ /home/nipa/net-next/wt-1/tools/sched_ext/include/scx/common.bpf.h:47:45: warning: declaration of 'struct bpf_iter_scx_dsq' will not be visible outside of this function [-Wvisibility] 47 | bool scx_bpf_dispatch_vtime_from_dsq(struct bpf_iter_scx_dsq *it__iter, struct task_struct *p, u64 dsq_id, u64 enq_flags) __ksym __weak; | ^ /home/nipa/net-next/wt-1/tools/sched_ext/include/scx/common.bpf.h:52:33: warning: declaration of 'struct bpf_iter_scx_dsq' will not be visible outside of this function [-Wvisibility] 52 | int bpf_iter_scx_dsq_new(struct bpf_iter_scx_dsq *it, u64 dsq_id, u64 flags) __ksym __weak; | ^ /home/nipa/net-next/wt-1/tools/sched_ext/include/scx/common.bpf.h:53:50: warning: declaration of 'struct bpf_iter_scx_dsq' will not be visible outside of this function [-Wvisibility] 53 | struct task_struct *bpf_iter_scx_dsq_next(struct bpf_iter_scx_dsq *it) __ksym __weak; | ^ /home/nipa/net-next/wt-1/tools/sched_ext/include/scx/common.bpf.h:54:38: warning: declaration of 'struct bpf_iter_scx_dsq' will not be visible outside of this function [-Wvisibility] 54 | void bpf_iter_scx_dsq_destroy(struct bpf_iter_scx_dsq *it) __ksym __weak; | ^ dsp_local_on.bpf.c:48:22: error: use of undeclared identifier 'SCX_DSQ_LOCAL_ON' 48 | scx_bpf_dispatch(p, SCX_DSQ_LOCAL_ON | target, SCX_SLICE_DFL, 0); | ^ dsp_local_on.bpf.c:48:49: error: use of undeclared identifier 'SCX_SLICE_DFL' 48 | scx_bpf_dispatch(p, SCX_DSQ_LOCAL_ON | target, SCX_SLICE_DFL, 0); | ^ dsp_local_on.bpf.c:52:47: warning: declaration of 'struct scx_exit_info' will not be visible outside of this function [-Wvisibility] 52 | void BPF_STRUCT_OPS(dsp_local_on_exit, struct scx_exit_info *ei) | ^ dsp_local_on.bpf.c:52:47: warning: declaration of 'struct scx_exit_info' will not be visible outside of this function [-Wvisibility] dsp_local_on.bpf.c:52:6: error: conflicting types for '____dsp_local_on_exit' 52 | void BPF_STRUCT_OPS(dsp_local_on_exit, struct scx_exit_info *ei) | ^ /home/nipa/net-next/wt-1/tools/sched_ext/include/scx/common.bpf.h:140:32: note: expanded from macro 'BPF_STRUCT_OPS' 140 | SEC("struct_ops/"#name) \ | ^ /home/nipa/net-next/wt-1/build_tools/kselftest/sched_ext/build/include/bpf/bpf_tracing.h:683:48: note: expanded from macro '\ BPF_PROG' 683 | static __always_inline typeof(name(0)) \ | ^ :104:1: note: expanded from here 104 | ____dsp_local_on_exit | ^ dsp_local_on.bpf.c:52:6: note: previous declaration is here /home/nipa/net-next/wt-1/tools/sched_ext/include/scx/common.bpf.h:140:32: note: expanded from macro 'BPF_STRUCT_OPS' 140 | SEC("struct_ops/"#name) \ | ^ /home/nipa/net-next/wt-1/build_tools/kselftest/sched_ext/build/include/bpf/bpf_tracing.h:674:48: note: expanded from macro '\ BPF_PROG' 674 | static __always_inline typeof(name(0)) \ | ^ :95:1: note: expanded from here 95 | ____dsp_local_on_exit | ^ dsp_local_on.bpf.c:54:2: error: incomplete definition of type 'struct scx_exit_info' 54 | UEI_RECORD(uei, ei); | ^~~~~~~~~~~~~~~~~~~ /home/nipa/net-next/wt-1/tools/sched_ext/include/scx/user_exit_info.h:42:40: note: expanded from macro 'UEI_RECORD' 42 | sizeof(__uei_name.reason), (__ei)->reason); \ | ~~~~~~^ dsp_local_on.bpf.c:52:47: note: forward declaration of 'struct scx_exit_info' 52 | void BPF_STRUCT_OPS(dsp_local_on_exit, struct scx_exit_info *ei) | ^ dsp_local_on.bpf.c:54:2: error: incomplete definition of type 'struct scx_exit_info' 54 | UEI_RECORD(uei, ei); | ^~~~~~~~~~~~~~~~~~~ /home/nipa/net-next/wt-1/tools/sched_ext/include/scx/user_exit_info.h:44:37: note: expanded from macro 'UEI_RECORD' 44 | sizeof(__uei_name.msg), (__ei)->msg); \ | ~~~~~~^ dsp_local_on.bpf.c:52:47: note: forward declaration of 'struct scx_exit_info' 52 | void BPF_STRUCT_OPS(dsp_local_on_exit, struct scx_exit_info *ei) | ^ dsp_local_on.bpf.c:54:2: error: incomplete definition of type 'struct scx_exit_info' 54 | UEI_RECORD(uei, ei); | ^~~~~~~~~~~~~~~~~~~ /home/nipa/net-next/wt-1/tools/sched_ext/include/scx/user_exit_info.h:46:36: note: expanded from macro 'UEI_RECORD' 46 | __uei_name##_dump_len, (__ei)->dump); \ | ~~~~~~^ dsp_local_on.bpf.c:52:47: note: forward declaration of 'struct scx_exit_info' 52 | void BPF_STRUCT_OPS(dsp_local_on_exit, struct scx_exit_info *ei) | ^ dsp_local_on.bpf.c:54:2: error: incomplete definition of type 'struct scx_exit_info' 54 | UEI_RECORD(uei, ei); | ^~~~~~~~~~~~~~~~~~~ /home/nipa/net-next/wt-1/tools/sched_ext/include/scx/user_exit_info.h:47:34: note: expanded from macro 'UEI_RECORD' 47 | if (bpf_core_field_exists((__ei)->exit_code)) \ | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~ /home/nipa/net-next/wt-1/build_tools/kselftest/sched_ext/build/include/bpf/bpf_core_read.h:188:49: note: expanded from macro 'bpf_core_field_exists' 188 | __builtin_preserve_field_info(___bpf_field_ref(field), BPF_FIELD_EXISTS) | ~~~~~~~~~~~~~~~~~^~~~~~ /home/nipa/net-next/wt-1/build_tools/kselftest/sched_ext/build/include/bpf/bpf_core_read.h:173:52: note: expanded from macro '___bpf_field_ref' 173 | ___bpf_apply(___bpf_field_ref, ___bpf_narg(args))(args) | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~ /home/nipa/net-next/wt-1/build_tools/kselftest/sched_ext/build/include/bpf/bpf_core_read.h:166:35: note: expanded from macro '___bpf_field_ref1' 166 | #define ___bpf_field_ref1(field) (field) | ^~~~~ dsp_local_on.bpf.c:52:47: note: forward declaration of 'struct scx_exit_info' 52 | void BPF_STRUCT_OPS(dsp_local_on_exit, struct scx_exit_info *ei) | ^ dsp_local_on.bpf.c:54:2: error: incomplete definition of type 'struct scx_exit_info' 54 | UEI_RECORD(uei, ei); | ^~~~~~~~~~~~~~~~~~~ /home/nipa/net-next/wt-1/tools/sched_ext/include/scx/user_exit_info.h:48:32: note: expanded from macro 'UEI_RECORD' 48 | __uei_name.exit_code = (__ei)->exit_code; \ | ~~~~~~^ dsp_local_on.bpf.c:52:47: note: forward declaration of 'struct scx_exit_info' 52 | void BPF_STRUCT_OPS(dsp_local_on_exit, struct scx_exit_info *ei) | ^ dsp_local_on.bpf.c:54:2: error: incomplete definition of type 'struct scx_exit_info' 54 | UEI_RECORD(uei, ei); | ^~~~~~~~~~~~~~~~~~~ /home/nipa/net-next/wt-1/tools/sched_ext/include/scx/user_exit_info.h:51:15: note: expanded from macro 'UEI_RECORD' 51 | (__ei)->kind); \ | ~~~~~~^ dsp_local_on.bpf.c:52:47: note: forward declaration of 'struct scx_exit_info' 52 | void BPF_STRUCT_OPS(dsp_local_on_exit, struct scx_exit_info *ei) | ^ dsp_local_on.bpf.c:58:22: error: variable has incomplete type 'struct sched_ext_ops' 58 | struct sched_ext_ops dsp_local_on_ops = { | ^ dsp_local_on.bpf.c:58:8: note: forward declaration of 'struct sched_ext_ops' 58 | struct sched_ext_ops dsp_local_on_ops = { | ^ 9 warnings and 11 errors generated. make[1]: *** [Makefile:136: /home/nipa/net-next/wt-1/build_tools/kselftest/sched_ext/build/obj/sched_ext/dsp_local_on.bpf.o] Error 1 In file included from enq_last_no_enq_fails.bpf.c:11: /home/nipa/net-next/wt-1/tools/sched_ext/include/scx/common.bpf.h:33:17: error: use of undeclared identifier 'SCX_DSQ_FLAG_BUILTIN' 33 | _Static_assert(SCX_DSQ_FLAG_BUILTIN, | ^ /home/nipa/net-next/wt-1/tools/sched_ext/include/scx/common.bpf.h:44:49: warning: declaration of 'struct bpf_iter_scx_dsq' will not be visible outside of this function [-Wvisibility] 44 | void scx_bpf_dispatch_from_dsq_set_slice(struct bpf_iter_scx_dsq *it__iter, u64 slice) __ksym __weak; | ^ /home/nipa/net-next/wt-1/tools/sched_ext/include/scx/common.bpf.h:45:49: warning: declaration of 'struct bpf_iter_scx_dsq' will not be visible outside of this function [-Wvisibility] 45 | void scx_bpf_dispatch_from_dsq_set_vtime(struct bpf_iter_scx_dsq *it__iter, u64 vtime) __ksym __weak; | ^ /home/nipa/net-next/wt-1/tools/sched_ext/include/scx/common.bpf.h:46:39: warning: declaration of 'struct bpf_iter_scx_dsq' will not be visible outside of this function [-Wvisibility] 46 | bool scx_bpf_dispatch_from_dsq(struct bpf_iter_scx_dsq *it__iter, struct task_struct *p, u64 dsq_id, u64 enq_flags) __ksym __weak; | ^ /home/nipa/net-next/wt-1/tools/sched_ext/include/scx/common.bpf.h:47:45: warning: declaration of 'struct bpf_iter_scx_dsq' will not be visible outside of this function [-Wvisibility] 47 | bool scx_bpf_dispatch_vtime_from_dsq(struct bpf_iter_scx_dsq *it__iter, struct task_struct *p, u64 dsq_id, u64 enq_flags) __ksym __weak; | ^ /home/nipa/net-next/wt-1/tools/sched_ext/include/scx/common.bpf.h:52:33: warning: declaration of 'struct bpf_iter_scx_dsq' will not be visible outside of this function [-Wvisibility] 52 | int bpf_iter_scx_dsq_new(struct bpf_iter_scx_dsq *it, u64 dsq_id, u64 flags) __ksym __weak; | ^ /home/nipa/net-next/wt-1/tools/sched_ext/include/scx/common.bpf.h:53:50: warning: declaration of 'struct bpf_iter_scx_dsq' will not be visible outside of this function [-Wvisibility] 53 | struct task_struct *bpf_iter_scx_dsq_next(struct bpf_iter_scx_dsq *it) __ksym __weak; | ^ /home/nipa/net-next/wt-1/tools/sched_ext/include/scx/common.bpf.h:54:38: warning: declaration of 'struct bpf_iter_scx_dsq' will not be visible outside of this function [-Wvisibility] 54 | void bpf_iter_scx_dsq_destroy(struct bpf_iter_scx_dsq *it) __ksym __weak; | ^ enq_last_no_enq_fails.bpf.c:19:13: error: use of undeclared identifier 'SCX_OPS_ENQ_LAST' 19 | .flags = SCX_OPS_ENQ_LAST, | ^ enq_last_no_enq_fails.bpf.c:16:22: error: variable has incomplete type 'struct sched_ext_ops' 16 | struct sched_ext_ops enq_last_no_enq_fails_ops = { | ^ enq_last_no_enq_fails.bpf.c:16:8: note: forward declaration of 'struct sched_ext_ops' 16 | struct sched_ext_ops enq_last_no_enq_fails_ops = { | ^ 7 warnings and 3 errors generated. make[1]: *** [Makefile:136: /home/nipa/net-next/wt-1/build_tools/kselftest/sched_ext/build/obj/sched_ext/enq_last_no_enq_fails.bpf.o] Error 1 In file included from enq_select_cpu_fails.bpf.c:8: /home/nipa/net-next/wt-1/tools/sched_ext/include/scx/common.bpf.h:33:17: error: use of undeclared identifier 'SCX_DSQ_FLAG_BUILTIN' 33 | _Static_assert(SCX_DSQ_FLAG_BUILTIN, | ^ /home/nipa/net-next/wt-1/tools/sched_ext/include/scx/common.bpf.h:44:49: warning: declaration of 'struct bpf_iter_scx_dsq' will not be visible outside of this function [-Wvisibility] 44 | void scx_bpf_dispatch_from_dsq_set_slice(struct bpf_iter_scx_dsq *it__iter, u64 slice) __ksym __weak; | ^ /home/nipa/net-next/wt-1/tools/sched_ext/include/scx/common.bpf.h:45:49: warning: declaration of 'struct bpf_iter_scx_dsq' will not be visible outside of this function [-Wvisibility] 45 | void scx_bpf_dispatch_from_dsq_set_vtime(struct bpf_iter_scx_dsq *it__iter, u64 vtime) __ksym __weak; | ^ /home/nipa/net-next/wt-1/tools/sched_ext/include/scx/common.bpf.h:46:39: warning: declaration of 'struct bpf_iter_scx_dsq' will not be visible outside of this function [-Wvisibility] 46 | bool scx_bpf_dispatch_from_dsq(struct bpf_iter_scx_dsq *it__iter, struct task_struct *p, u64 dsq_id, u64 enq_flags) __ksym __weak; | ^ /home/nipa/net-next/wt-1/tools/sched_ext/include/scx/common.bpf.h:47:45: warning: declaration of 'struct bpf_iter_scx_dsq' will not be visible outside of this function [-Wvisibility] 47 | bool scx_bpf_dispatch_vtime_from_dsq(struct bpf_iter_scx_dsq *it__iter, struct task_struct *p, u64 dsq_id, u64 enq_flags) __ksym __weak; | ^ /home/nipa/net-next/wt-1/tools/sched_ext/include/scx/common.bpf.h:52:33: warning: declaration of 'struct bpf_iter_scx_dsq' will not be visible outside of this function [-Wvisibility] 52 | int bpf_iter_scx_dsq_new(struct bpf_iter_scx_dsq *it, u64 dsq_id, u64 flags) __ksym __weak; | ^ /home/nipa/net-next/wt-1/tools/sched_ext/include/scx/common.bpf.h:53:50: warning: declaration of 'struct bpf_iter_scx_dsq' will not be visible outside of this function [-Wvisibility] 53 | struct task_struct *bpf_iter_scx_dsq_next(struct bpf_iter_scx_dsq *it) __ksym __weak; | ^ /home/nipa/net-next/wt-1/tools/sched_ext/include/scx/common.bpf.h:54:38: warning: declaration of 'struct bpf_iter_scx_dsq' will not be visible outside of this function [-Wvisibility] 54 | void bpf_iter_scx_dsq_destroy(struct bpf_iter_scx_dsq *it) __ksym __weak; | ^ enq_select_cpu_fails.bpf.c:34:22: error: use of undeclared identifier 'SCX_DSQ_GLOBAL' 34 | scx_bpf_dispatch(p, SCX_DSQ_GLOBAL, SCX_SLICE_DFL, enq_flags); | ^ enq_select_cpu_fails.bpf.c:34:38: error: use of undeclared identifier 'SCX_SLICE_DFL' 34 | scx_bpf_dispatch(p, SCX_DSQ_GLOBAL, SCX_SLICE_DFL, enq_flags); | ^ enq_select_cpu_fails.bpf.c:38:22: error: variable has incomplete type 'struct sched_ext_ops' 38 | struct sched_ext_ops enq_select_cpu_fails_ops = { | ^ enq_select_cpu_fails.bpf.c:38:8: note: forward declaration of 'struct sched_ext_ops' 38 | struct sched_ext_ops enq_select_cpu_fails_ops = { | ^ 7 warnings and 4 errors generated. make[1]: *** [Makefile:136: /home/nipa/net-next/wt-1/build_tools/kselftest/sched_ext/build/obj/sched_ext/enq_select_cpu_fails.bpf.o] Error 1 In file included from exit.bpf.c:7: /home/nipa/net-next/wt-1/tools/sched_ext/include/scx/common.bpf.h:33:17: error: use of undeclared identifier 'SCX_DSQ_FLAG_BUILTIN' 33 | _Static_assert(SCX_DSQ_FLAG_BUILTIN, | ^ /home/nipa/net-next/wt-1/tools/sched_ext/include/scx/common.bpf.h:44:49: warning: declaration of 'struct bpf_iter_scx_dsq' will not be visible outside of this function [-Wvisibility] 44 | void scx_bpf_dispatch_from_dsq_set_slice(struct bpf_iter_scx_dsq *it__iter, u64 slice) __ksym __weak; | ^ /home/nipa/net-next/wt-1/tools/sched_ext/include/scx/common.bpf.h:45:49: warning: declaration of 'struct bpf_iter_scx_dsq' will not be visible outside of this function [-Wvisibility] 45 | void scx_bpf_dispatch_from_dsq_set_vtime(struct bpf_iter_scx_dsq *it__iter, u64 vtime) __ksym __weak; | ^ /home/nipa/net-next/wt-1/tools/sched_ext/include/scx/common.bpf.h:46:39: warning: declaration of 'struct bpf_iter_scx_dsq' will not be visible outside of this function [-Wvisibility] 46 | bool scx_bpf_dispatch_from_dsq(struct bpf_iter_scx_dsq *it__iter, struct task_struct *p, u64 dsq_id, u64 enq_flags) __ksym __weak; | ^ /home/nipa/net-next/wt-1/tools/sched_ext/include/scx/common.bpf.h:47:45: warning: declaration of 'struct bpf_iter_scx_dsq' will not be visible outside of this function [-Wvisibility] 47 | bool scx_bpf_dispatch_vtime_from_dsq(struct bpf_iter_scx_dsq *it__iter, struct task_struct *p, u64 dsq_id, u64 enq_flags) __ksym __weak; | ^ /home/nipa/net-next/wt-1/tools/sched_ext/include/scx/common.bpf.h:52:33: warning: declaration of 'struct bpf_iter_scx_dsq' will not be visible outside of this function [-Wvisibility] 52 | int bpf_iter_scx_dsq_new(struct bpf_iter_scx_dsq *it, u64 dsq_id, u64 flags) __ksym __weak; | ^ /home/nipa/net-next/wt-1/tools/sched_ext/include/scx/common.bpf.h:53:50: warning: declaration of 'struct bpf_iter_scx_dsq' will not be visible outside of this function [-Wvisibility] 53 | struct task_struct *bpf_iter_scx_dsq_next(struct bpf_iter_scx_dsq *it) __ksym __weak; | ^ /home/nipa/net-next/wt-1/tools/sched_ext/include/scx/common.bpf.h:54:38: warning: declaration of 'struct bpf_iter_scx_dsq' will not be visible outside of this function [-Wvisibility] 54 | void bpf_iter_scx_dsq_destroy(struct bpf_iter_scx_dsq *it) __ksym __weak; | ^ exit.bpf.c:34:22: error: use of undeclared identifier 'SCX_DSQ_GLOBAL' 34 | scx_bpf_dispatch(p, SCX_DSQ_GLOBAL, SCX_SLICE_DFL, enq_flags); | ^ exit.bpf.c:34:38: error: use of undeclared identifier 'SCX_SLICE_DFL' 34 | scx_bpf_dispatch(p, SCX_DSQ_GLOBAL, SCX_SLICE_DFL, enq_flags); | ^ exit.bpf.c:42:18: error: use of undeclared identifier 'SCX_DSQ_GLOBAL' 42 | scx_bpf_consume(SCX_DSQ_GLOBAL); | ^ exit.bpf.c:52:14: warning: declaration of 'struct scx_init_task_args' will not be visible outside of this function [-Wvisibility] 52 | struct scx_init_task_args *args) | ^ exit.bpf.c:52:14: warning: declaration of 'struct scx_init_task_args' will not be visible outside of this function [-Wvisibility] exit.bpf.c:51:5: error: conflicting types for '____exit_init_task' 51 | s32 BPF_STRUCT_OPS(exit_init_task, struct task_struct *p, | ^ /home/nipa/net-next/wt-1/tools/sched_ext/include/scx/common.bpf.h:140:32: note: expanded from macro 'BPF_STRUCT_OPS' 140 | SEC("struct_ops/"#name) \ | ^ /home/nipa/net-next/wt-1/build_tools/kselftest/sched_ext/build/include/bpf/bpf_tracing.h:683:48: note: expanded from macro '\ BPF_PROG' 683 | static __always_inline typeof(name(0)) \ | ^ :136:1: note: expanded from here 136 | ____exit_init_task | ^ exit.bpf.c:51:5: note: previous declaration is here /home/nipa/net-next/wt-1/tools/sched_ext/include/scx/common.bpf.h:140:32: note: expanded from macro 'BPF_STRUCT_OPS' 140 | SEC("struct_ops/"#name) \ | ^ /home/nipa/net-next/wt-1/build_tools/kselftest/sched_ext/build/include/bpf/bpf_tracing.h:674:48: note: expanded from macro '\ BPF_PROG' 674 | static __always_inline typeof(name(0)) \ | ^ :127:1: note: expanded from here 127 | ____exit_init_task | ^ exit.bpf.c:60:39: warning: declaration of 'struct scx_exit_info' will not be visible outside of this function [-Wvisibility] 60 | void BPF_STRUCT_OPS(exit_exit, struct scx_exit_info *ei) | ^ exit.bpf.c:60:39: warning: declaration of 'struct scx_exit_info' will not be visible outside of this function [-Wvisibility] exit.bpf.c:60:6: error: conflicting types for '____exit_exit' 60 | void BPF_STRUCT_OPS(exit_exit, struct scx_exit_info *ei) | ^ /home/nipa/net-next/wt-1/tools/sched_ext/include/scx/common.bpf.h:140:32: note: expanded from macro 'BPF_STRUCT_OPS' 140 | SEC("struct_ops/"#name) \ | ^ /home/nipa/net-next/wt-1/build_tools/kselftest/sched_ext/build/include/bpf/bpf_tracing.h:683:48: note: expanded from macro '\ BPF_PROG' 683 | static __always_inline typeof(name(0)) \ | ^ :160:1: note: expanded from here 160 | ____exit_exit | ^ exit.bpf.c:60:6: note: previous declaration is here /home/nipa/net-next/wt-1/tools/sched_ext/include/scx/common.bpf.h:140:32: note: expanded from macro 'BPF_STRUCT_OPS' 140 | SEC("struct_ops/"#name) \ | ^ /home/nipa/net-next/wt-1/build_tools/kselftest/sched_ext/build/include/bpf/bpf_tracing.h:674:48: note: expanded from macro '\ BPF_PROG' 674 | static __always_inline typeof(name(0)) \ | ^ :151:1: note: expanded from here 151 | ____exit_exit | ^ exit.bpf.c:62:2: error: incomplete definition of type 'struct scx_exit_info' 62 | UEI_RECORD(uei, ei); | ^~~~~~~~~~~~~~~~~~~ /home/nipa/net-next/wt-1/tools/sched_ext/include/scx/user_exit_info.h:42:40: note: expanded from macro 'UEI_RECORD' 42 | sizeof(__uei_name.reason), (__ei)->reason); \ | ~~~~~~^ exit.bpf.c:60:39: note: forward declaration of 'struct scx_exit_info' 60 | void BPF_STRUCT_OPS(exit_exit, struct scx_exit_info *ei) | ^ exit.bpf.c:62:2: error: incomplete definition of type 'struct scx_exit_info' 62 | UEI_RECORD(uei, ei); | ^~~~~~~~~~~~~~~~~~~ /home/nipa/net-next/wt-1/tools/sched_ext/include/scx/user_exit_info.h:44:37: note: expanded from macro 'UEI_RECORD' 44 | sizeof(__uei_name.msg), (__ei)->msg); \ | ~~~~~~^ exit.bpf.c:60:39: note: forward declaration of 'struct scx_exit_info' 60 | void BPF_STRUCT_OPS(exit_exit, struct scx_exit_info *ei) | ^ exit.bpf.c:62:2: error: incomplete definition of type 'struct scx_exit_info' 62 | UEI_RECORD(uei, ei); | ^~~~~~~~~~~~~~~~~~~ /home/nipa/net-next/wt-1/tools/sched_ext/include/scx/user_exit_info.h:46:36: note: expanded from macro 'UEI_RECORD' 46 | __uei_name##_dump_len, (__ei)->dump); \ | ~~~~~~^ exit.bpf.c:60:39: note: forward declaration of 'struct scx_exit_info' 60 | void BPF_STRUCT_OPS(exit_exit, struct scx_exit_info *ei) | ^ exit.bpf.c:62:2: error: incomplete definition of type 'struct scx_exit_info' 62 | UEI_RECORD(uei, ei); | ^~~~~~~~~~~~~~~~~~~ /home/nipa/net-next/wt-1/tools/sched_ext/include/scx/user_exit_info.h:47:34: note: expanded from macro 'UEI_RECORD' 47 | if (bpf_core_field_exists((__ei)->exit_code)) \ | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~ /home/nipa/net-next/wt-1/build_tools/kselftest/sched_ext/build/include/bpf/bpf_core_read.h:188:49: note: expanded from macro 'bpf_core_field_exists' 188 | __builtin_preserve_field_info(___bpf_field_ref(field), BPF_FIELD_EXISTS) | ~~~~~~~~~~~~~~~~~^~~~~~ /home/nipa/net-next/wt-1/build_tools/kselftest/sched_ext/build/include/bpf/bpf_core_read.h:173:52: note: expanded from macro '___bpf_field_ref' 173 | ___bpf_apply(___bpf_field_ref, ___bpf_narg(args))(args) | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~ /home/nipa/net-next/wt-1/build_tools/kselftest/sched_ext/build/include/bpf/bpf_core_read.h:166:35: note: expanded from macro '___bpf_field_ref1' 166 | #define ___bpf_field_ref1(field) (field) | ^~~~~ exit.bpf.c:60:39: note: forward declaration of 'struct scx_exit_info' 60 | void BPF_STRUCT_OPS(exit_exit, struct scx_exit_info *ei) | ^ exit.bpf.c:62:2: error: incomplete definition of type 'struct scx_exit_info' 62 | UEI_RECORD(uei, ei); | ^~~~~~~~~~~~~~~~~~~ /home/nipa/net-next/wt-1/tools/sched_ext/include/scx/user_exit_info.h:48:32: note: expanded from macro 'UEI_RECORD' 48 | __uei_name.exit_code = (__ei)->exit_code; \ | ~~~~~~^ exit.bpf.c:60:39: note: forward declaration of 'struct scx_exit_info' 60 | void BPF_STRUCT_OPS(exit_exit, struct scx_exit_info *ei) | ^ exit.bpf.c:62:2: error: incomplete definition of type 'struct scx_exit_info' 62 | UEI_RECORD(uei, ei); | ^~~~~~~~~~~~~~~~~~~ /home/nipa/net-next/wt-1/tools/sched_ext/include/scx/user_exit_info.h:51:15: note: expanded from macro 'UEI_RECORD' 51 | (__ei)->kind); \ | ~~~~~~^ exit.bpf.c:60:39: note: forward declaration of 'struct scx_exit_info' 60 | void BPF_STRUCT_OPS(exit_exit, struct scx_exit_info *ei) | ^ exit.bpf.c:74:22: error: variable has incomplete type 'struct sched_ext_ops' 74 | struct sched_ext_ops exit_ops = { | ^ exit.bpf.c:74:8: note: forward declaration of 'struct sched_ext_ops' 74 | struct sched_ext_ops exit_ops = { | ^ 11 warnings and 13 errors generated. make[1]: *** [Makefile:136: /home/nipa/net-next/wt-1/build_tools/kselftest/sched_ext/build/obj/sched_ext/exit.bpf.o] Error 1 ====== Building the tree before the patch ====== make[1]: Circular /home/nipa/net-next/wt-1/build_tools/kselftest/alsa/global-timer <- /home/nipa/net-next/wt-1/build_tools/kselftest/alsa/global-timer dependency dropped. In file included from enq_last_no_enq_fails.bpf.c:11: /home/nipa/net-next/wt-1/tools/sched_ext/include/scx/common.bpf.h:33:17: error: use of undeclared identifier 'SCX_DSQ_FLAG_BUILTIN' 33 | _Static_assert(SCX_DSQ_FLAG_BUILTIN, | ^ /home/nipa/net-next/wt-1/tools/sched_ext/include/scx/common.bpf.h:44:49: warning: declaration of 'struct bpf_iter_scx_dsq' will not be visible outside of this function [-Wvisibility] 44 | void scx_bpf_dispatch_from_dsq_set_slice(struct bpf_iter_scx_dsq *it__iter, u64 slice) __ksym __weak; | ^ /home/nipa/net-next/wt-1/tools/sched_ext/include/scx/common.bpf.h:45:49: warning: declaration of 'struct bpf_iter_scx_dsq' will not be visible outside of this function [-Wvisibility] 45 | void scx_bpf_dispatch_from_dsq_set_vtime(struct bpf_iter_scx_dsq *it__iter, u64 vtime) __ksym __weak; | ^ /home/nipa/net-next/wt-1/tools/sched_ext/include/scx/common.bpf.h:46:39: warning: declaration of 'struct bpf_iter_scx_dsq' will not be visible outside of this function [-Wvisibility] 46 | bool scx_bpf_dispatch_from_dsq(struct bpf_iter_scx_dsq *it__iter, struct task_struct *p, u64 dsq_id, u64 enq_flags) __ksym __weak; | ^ /home/nipa/net-next/wt-1/tools/sched_ext/include/scx/common.bpf.h:47:45: warning: declaration of 'struct bpf_iter_scx_dsq' will not be visible outside of this function [-Wvisibility] 47 | bool scx_bpf_dispatch_vtime_from_dsq(struct bpf_iter_scx_dsq *it__iter, struct task_struct *p, u64 dsq_id, u64 enq_flags) __ksym __weak; | ^ /home/nipa/net-next/wt-1/tools/sched_ext/include/scx/common.bpf.h:52:33: warning: declaration of 'struct bpf_iter_scx_dsq' will not be visible outside of this function [-Wvisibility] 52 | int bpf_iter_scx_dsq_new(struct bpf_iter_scx_dsq *it, u64 dsq_id, u64 flags) __ksym __weak; | ^ /home/nipa/net-next/wt-1/tools/sched_ext/include/scx/common.bpf.h:53:50: warning: declaration of 'struct bpf_iter_scx_dsq' will not be visible outside of this function [-Wvisibility] 53 | struct task_struct *bpf_iter_scx_dsq_next(struct bpf_iter_scx_dsq *it) __ksym __weak; | ^ /home/nipa/net-next/wt-1/tools/sched_ext/include/scx/common.bpf.h:54:38: warning: declaration of 'struct bpf_iter_scx_dsq' will not be visible outside of this function [-Wvisibility] 54 | void bpf_iter_scx_dsq_destroy(struct bpf_iter_scx_dsq *it) __ksym __weak; | ^ enq_last_no_enq_fails.bpf.c:19:13: error: use of undeclared identifier 'SCX_OPS_ENQ_LAST' 19 | .flags = SCX_OPS_ENQ_LAST, | ^ enq_last_no_enq_fails.bpf.c:16:22: error: variable has incomplete type 'struct sched_ext_ops' 16 | struct sched_ext_ops enq_last_no_enq_fails_ops = { | ^ enq_last_no_enq_fails.bpf.c:16:8: note: forward declaration of 'struct sched_ext_ops' 16 | struct sched_ext_ops enq_last_no_enq_fails_ops = { | ^ 7 warnings and 3 errors generated. make[1]: *** [Makefile:136: /home/nipa/net-next/wt-1/build_tools/kselftest/sched_ext/build/obj/sched_ext/enq_last_no_enq_fails.bpf.o] Error 1 make[1]: *** Waiting for unfinished jobs.... In file included from ddsp_bogus_dsq_fail.bpf.c:7: /home/nipa/net-next/wt-1/tools/sched_ext/include/scx/common.bpf.h:33:17: error: use of undeclared identifier 'SCX_DSQ_FLAG_BUILTIN' 33 | _Static_assert(SCX_DSQ_FLAG_BUILTIN, | ^ /home/nipa/net-next/wt-1/tools/sched_ext/include/scx/common.bpf.h:44:49: warning: declaration of 'struct bpf_iter_scx_dsq' will not be visible outside of this function [-Wvisibility] 44 | void scx_bpf_dispatch_from_dsq_set_slice(struct bpf_iter_scx_dsq *it__iter, u64 slice) __ksym __weak; | ^ /home/nipa/net-next/wt-1/tools/sched_ext/include/scx/common.bpf.h:45:49: warning: declaration of 'struct bpf_iter_scx_dsq' will not be visible outside of this function [-Wvisibility] 45 | void scx_bpf_dispatch_from_dsq_set_vtime(struct bpf_iter_scx_dsq *it__iter, u64 vtime) __ksym __weak; | ^ /home/nipa/net-next/wt-1/tools/sched_ext/include/scx/common.bpf.h:46:39: warning: declaration of 'struct bpf_iter_scx_dsq' will not be visible outside of this function [-Wvisibility] 46 | bool scx_bpf_dispatch_from_dsq(struct bpf_iter_scx_dsq *it__iter, struct task_struct *p, u64 dsq_id, u64 enq_flags) __ksym __weak; | ^ /home/nipa/net-next/wt-1/tools/sched_ext/include/scx/common.bpf.h:47:45: warning: declaration of 'struct bpf_iter_scx_dsq' will not be visible outside of this function [-Wvisibility] 47 | bool scx_bpf_dispatch_vtime_from_dsq(struct bpf_iter_scx_dsq *it__iter, struct task_struct *p, u64 dsq_id, u64 enq_flags) __ksym __weak; | ^ /home/nipa/net-next/wt-1/tools/sched_ext/include/scx/common.bpf.h:52:33: warning: declaration of 'struct bpf_iter_scx_dsq' will not be visible outside of this function [-Wvisibility] 52 | int bpf_iter_scx_dsq_new(struct bpf_iter_scx_dsq *it, u64 dsq_id, u64 flags) __ksym __weak; | ^ /home/nipa/net-next/wt-1/tools/sched_ext/include/scx/common.bpf.h:53:50: warning: declaration of 'struct bpf_iter_scx_dsq' will not be visible outside of this function [-Wvisibility] 53 | struct task_struct *bpf_iter_scx_dsq_next(struct bpf_iter_scx_dsq *it) __ksym __weak; | ^ /home/nipa/net-next/wt-1/tools/sched_ext/include/scx/common.bpf.h:54:38: warning: declaration of 'struct bpf_iter_scx_dsq' will not be visible outside of this function [-Wvisibility] 54 | void bpf_iter_scx_dsq_destroy(struct bpf_iter_scx_dsq *it) __ksym __weak; | ^ ddsp_bogus_dsq_fail.bpf.c:24:15: error: no member named 'scx' in 'struct task_struct' 24 | p->scx.dsq_vtime, 0); | ~ ^ ddsp_bogus_dsq_fail.bpf.c:23:41: error: use of undeclared identifier 'SCX_SLICE_DFL' 23 | scx_bpf_dispatch_vtime(p, 0xcafef00d, SCX_SLICE_DFL, | ^ ddsp_bogus_dsq_fail.bpf.c:31:54: warning: declaration of 'struct scx_exit_info' will not be visible outside of this function [-Wvisibility] 31 | void BPF_STRUCT_OPS(ddsp_bogus_dsq_fail_exit, struct scx_exit_info *ei) | ^ ddsp_bogus_dsq_fail.bpf.c:31:54: warning: declaration of 'struct scx_exit_info' will not be visible outside of this function [-Wvisibility] ddsp_bogus_dsq_fail.bpf.c:31:6: error: conflicting types for '____ddsp_bogus_dsq_fail_exit' 31 | void BPF_STRUCT_OPS(ddsp_bogus_dsq_fail_exit, struct scx_exit_info *ei) | ^ /home/nipa/net-next/wt-1/tools/sched_ext/include/scx/common.bpf.h:140:32: note: expanded from macro 'BPF_STRUCT_OPS' 140 | SEC("struct_ops/"#name) \ | ^ /home/nipa/net-next/wt-1/build_tools/kselftest/sched_ext/build/include/bpf/bpf_tracing.h:683:48: note: expanded from macro '\ BPF_PROG' 683 | static __always_inline typeof(name(0)) \ | ^ :57:1: note: expanded from here 57 | ____ddsp_bogus_dsq_fail_exit | ^ ddsp_bogus_dsq_fail.bpf.c:31:6: note: previous declaration is here /home/nipa/net-next/wt-1/tools/sched_ext/include/scx/common.bpf.h:140:32: note: expanded from macro 'BPF_STRUCT_OPS' 140 | SEC("struct_ops/"#name) \ | ^ /home/nipa/net-next/wt-1/build_tools/kselftest/sched_ext/build/include/bpf/bpf_tracing.h:674:48: note: expanded from macro '\ BPF_PROG' 674 | static __always_inline typeof(name(0)) \ | ^ :48:1: note: expanded from here 48 | ____ddsp_bogus_dsq_fail_exit | ^ ddsp_bogus_dsq_fail.bpf.c:33:2: error: incomplete definition of type 'struct scx_exit_info' 33 | UEI_RECORD(uei, ei); | ^~~~~~~~~~~~~~~~~~~ /home/nipa/net-next/wt-1/tools/sched_ext/include/scx/user_exit_info.h:42:40: note: expanded from macro 'UEI_RECORD' 42 | sizeof(__uei_name.reason), (__ei)->reason); \ | ~~~~~~^ ddsp_bogus_dsq_fail.bpf.c:31:54: note: forward declaration of 'struct scx_exit_info' 31 | void BPF_STRUCT_OPS(ddsp_bogus_dsq_fail_exit, struct scx_exit_info *ei) | ^ ddsp_bogus_dsq_fail.bpf.c:33:2: error: incomplete definition of type 'struct scx_exit_info' 33 | UEI_RECORD(uei, ei); | ^~~~~~~~~~~~~~~~~~~ /home/nipa/net-next/wt-1/tools/sched_ext/include/scx/user_exit_info.h:44:37: note: expanded from macro 'UEI_RECORD' 44 | sizeof(__uei_name.msg), (__ei)->msg); \ | ~~~~~~^ ddsp_bogus_dsq_fail.bpf.c:31:54: note: forward declaration of 'struct scx_exit_info' 31 | void BPF_STRUCT_OPS(ddsp_bogus_dsq_fail_exit, struct scx_exit_info *ei) | ^ ddsp_bogus_dsq_fail.bpf.c:33:2: error: incomplete definition of type 'struct scx_exit_info' 33 | UEI_RECORD(uei, ei); | ^~~~~~~~~~~~~~~~~~~ /home/nipa/net-next/wt-1/tools/sched_ext/include/scx/user_exit_info.h:46:36: note: expanded from macro 'UEI_RECORD' 46 | __uei_name##_dump_len, (__ei)->dump); \ | ~~~~~~^ ddsp_bogus_dsq_fail.bpf.c:31:54: note: forward declaration of 'struct scx_exit_info' 31 | void BPF_STRUCT_OPS(ddsp_bogus_dsq_fail_exit, struct scx_exit_info *ei) | ^ ddsp_bogus_dsq_fail.bpf.c:33:2: error: incomplete definition of type 'struct scx_exit_info' 33 | UEI_RECORD(uei, ei); | ^~~~~~~~~~~~~~~~~~~ /home/nipa/net-next/wt-1/tools/sched_ext/include/scx/user_exit_info.h:47:34: note: expanded from macro 'UEI_RECORD' 47 | if (bpf_core_field_exists((__ei)->exit_code)) \ | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~ /home/nipa/net-next/wt-1/build_tools/kselftest/sched_ext/build/include/bpf/bpf_core_read.h:188:49: note: expanded from macro 'bpf_core_field_exists' 188 | __builtin_preserve_field_info(___bpf_field_ref(field), BPF_FIELD_EXISTS) | ~~~~~~~~~~~~~~~~~^~~~~~ /home/nipa/net-next/wt-1/build_tools/kselftest/sched_ext/build/include/bpf/bpf_core_read.h:173:52: note: expanded from macro '___bpf_field_ref' 173 | ___bpf_apply(___bpf_field_ref, ___bpf_narg(args))(args) | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~ /home/nipa/net-next/wt-1/build_tools/kselftest/sched_ext/build/include/bpf/bpf_core_read.h:166:35: note: expanded from macro '___bpf_field_ref1' 166 | #define ___bpf_field_ref1(field) (field) | ^~~~~ ddsp_bogus_dsq_fail.bpf.c:31:54: note: forward declaration of 'struct scx_exit_info' 31 | void BPF_STRUCT_OPS(ddsp_bogus_dsq_fail_exit, struct scx_exit_info *ei) | ^ ddsp_bogus_dsq_fail.bpf.c:33:2: error: incomplete definition of type 'struct scx_exit_info' 33 | UEI_RECORD(uei, ei); | ^~~~~~~~~~~~~~~~~~~ /home/nipa/net-next/wt-1/tools/sched_ext/include/scx/user_exit_info.h:48:32: note: expanded from macro 'UEI_RECORD' 48 | __uei_name.exit_code = (__ei)->exit_code; \ | ~~~~~~^ ddsp_bogus_dsq_fail.bpf.c:31:54: note: forward declaration of 'struct scx_exit_info' 31 | void BPF_STRUCT_OPS(ddsp_bogus_dsq_fail_exit, struct scx_exit_info *ei) | ^ ddsp_bogus_dsq_fail.bpf.c:33:2: error: incomplete definition of type 'struct scx_exit_info' 33 | UEI_RECORD(uei, ei); | ^~~~~~~~~~~~~~~~~~~ /home/nipa/net-next/wt-1/tools/sched_ext/include/scx/user_exit_info.h:51:15: note: expanded from macro 'UEI_RECORD' 51 | (__ei)->kind); \ | ~~~~~~^ ddsp_bogus_dsq_fail.bpf.c:31:54: note: forward declaration of 'struct scx_exit_info' 31 | void BPF_STRUCT_OPS(ddsp_bogus_dsq_fail_exit, struct scx_exit_info *ei) | ^ ddsp_bogus_dsq_fail.bpf.c:37:22: error: variable has incomplete type 'struct sched_ext_ops' 37 | struct sched_ext_ops ddsp_bogus_dsq_fail_ops = { | ^ ddsp_bogus_dsq_fail.bpf.c:37:8: note: forward declaration of 'struct sched_ext_ops' 37 | struct sched_ext_ops ddsp_bogus_dsq_fail_ops = { | ^ 9 warnings and 11 errors generated. make[1]: *** [Makefile:136: /home/nipa/net-next/wt-1/build_tools/kselftest/sched_ext/build/obj/sched_ext/ddsp_bogus_dsq_fail.bpf.o] Error 1 In file included from dsp_local_on.bpf.c:6: /home/nipa/net-next/wt-1/tools/sched_ext/include/scx/common.bpf.h:33:17: error: use of undeclared identifier 'SCX_DSQ_FLAG_BUILTIN' 33 | _Static_assert(SCX_DSQ_FLAG_BUILTIN, | ^ /home/nipa/net-next/wt-1/tools/sched_ext/include/scx/common.bpf.h:44:49: warning: declaration of 'struct bpf_iter_scx_dsq' will not be visible outside of this function [-Wvisibility] 44 | void scx_bpf_dispatch_from_dsq_set_slice(struct bpf_iter_scx_dsq *it__iter, u64 slice) __ksym __weak; | ^ /home/nipa/net-next/wt-1/tools/sched_ext/include/scx/common.bpf.h:45:49: warning: declaration of 'struct bpf_iter_scx_dsq' will not be visible outside of this function [-Wvisibility] 45 | void scx_bpf_dispatch_from_dsq_set_vtime(struct bpf_iter_scx_dsq *it__iter, u64 vtime) __ksym __weak; | ^ /home/nipa/net-next/wt-1/tools/sched_ext/include/scx/common.bpf.h:46:39: warning: declaration of 'struct bpf_iter_scx_dsq' will not be visible outside of this function [-Wvisibility] 46 | bool scx_bpf_dispatch_from_dsq(struct bpf_iter_scx_dsq *it__iter, struct task_struct *p, u64 dsq_id, u64 enq_flags) __ksym __weak; | ^ /home/nipa/net-next/wt-1/tools/sched_ext/include/scx/common.bpf.h:47:45: warning: declaration of 'struct bpf_iter_scx_dsq' will not be visible outside of this function [-Wvisibility] 47 | bool scx_bpf_dispatch_vtime_from_dsq(struct bpf_iter_scx_dsq *it__iter, struct task_struct *p, u64 dsq_id, u64 enq_flags) __ksym __weak; | ^ /home/nipa/net-next/wt-1/tools/sched_ext/include/scx/common.bpf.h:52:33: warning: declaration of 'struct bpf_iter_scx_dsq' will not be visible outside of this function [-Wvisibility] 52 | int bpf_iter_scx_dsq_new(struct bpf_iter_scx_dsq *it, u64 dsq_id, u64 flags) __ksym __weak; | ^ /home/nipa/net-next/wt-1/tools/sched_ext/include/scx/common.bpf.h:53:50: warning: declaration of 'struct bpf_iter_scx_dsq' will not be visible outside of this function [-Wvisibility] 53 | struct task_struct *bpf_iter_scx_dsq_next(struct bpf_iter_scx_dsq *it) __ksym __weak; | ^ /home/nipa/net-next/wt-1/tools/sched_ext/include/scx/common.bpf.h:54:38: warning: declaration of 'struct bpf_iter_scx_dsq' will not be visible outside of this function [-Wvisibility] 54 | void bpf_iter_scx_dsq_destroy(struct bpf_iter_scx_dsq *it) __ksym __weak; | ^ dsp_local_on.bpf.c:48:22: error: use of undeclared identifier 'SCX_DSQ_LOCAL_ON' 48 | scx_bpf_dispatch(p, SCX_DSQ_LOCAL_ON | target, SCX_SLICE_DFL, 0); | ^ dsp_local_on.bpf.c:48:49: error: use of undeclared identifier 'SCX_SLICE_DFL' 48 | scx_bpf_dispatch(p, SCX_DSQ_LOCAL_ON | target, SCX_SLICE_DFL, 0); | ^ dsp_local_on.bpf.c:52:47: warning: declaration of 'struct scx_exit_info' will not be visible outside of this function [-Wvisibility] 52 | void BPF_STRUCT_OPS(dsp_local_on_exit, struct scx_exit_info *ei) | ^ dsp_local_on.bpf.c:52:47: warning: declaration of 'struct scx_exit_info' will not be visible outside of this function [-Wvisibility] dsp_local_on.bpf.c:52:6: error: conflicting types for '____dsp_local_on_exit' 52 | void BPF_STRUCT_OPS(dsp_local_on_exit, struct scx_exit_info *ei) | ^ /home/nipa/net-next/wt-1/tools/sched_ext/include/scx/common.bpf.h:140:32: note: expanded from macro 'BPF_STRUCT_OPS' 140 | SEC("struct_ops/"#name) \ | ^ /home/nipa/net-next/wt-1/build_tools/kselftest/sched_ext/build/include/bpf/bpf_tracing.h:683:48: note: expanded from macro '\ BPF_PROG' 683 | static __always_inline typeof(name(0)) \ | ^ :104:1: note: expanded from here 104 | ____dsp_local_on_exit | ^ dsp_local_on.bpf.c:52:6: note: previous declaration is here /home/nipa/net-next/wt-1/tools/sched_ext/include/scx/common.bpf.h:140:32: note: expanded from macro 'BPF_STRUCT_OPS' 140 | SEC("struct_ops/"#name) \ | ^ /home/nipa/net-next/wt-1/build_tools/kselftest/sched_ext/build/include/bpf/bpf_tracing.h:674:48: note: expanded from macro '\ BPF_PROG' 674 | static __always_inline typeof(name(0)) \ | ^ :95:1: note: expanded from here 95 | ____dsp_local_on_exit | ^ dsp_local_on.bpf.c:54:2: error: incomplete definition of type 'struct scx_exit_info' 54 | UEI_RECORD(uei, ei); | ^~~~~~~~~~~~~~~~~~~ /home/nipa/net-next/wt-1/tools/sched_ext/include/scx/user_exit_info.h:42:40: note: expanded from macro 'UEI_RECORD' 42 | sizeof(__uei_name.reason), (__ei)->reason); \ | ~~~~~~^ dsp_local_on.bpf.c:52:47: note: forward declaration of 'struct scx_exit_info' 52 | void BPF_STRUCT_OPS(dsp_local_on_exit, struct scx_exit_info *ei) | ^ dsp_local_on.bpf.c:54:2: error: incomplete definition of type 'struct scx_exit_info' 54 | UEI_RECORD(uei, ei); | ^~~~~~~~~~~~~~~~~~~ /home/nipa/net-next/wt-1/tools/sched_ext/include/scx/user_exit_info.h:44:37: note: expanded from macro 'UEI_RECORD' 44 | sizeof(__uei_name.msg), (__ei)->msg); \ | ~~~~~~^ dsp_local_on.bpf.c:52:47: note: forward declaration of 'struct scx_exit_info' 52 | void BPF_STRUCT_OPS(dsp_local_on_exit, struct scx_exit_info *ei) | ^ dsp_local_on.bpf.c:54:2: error: incomplete definition of type 'struct scx_exit_info' 54 | UEI_RECORD(uei, ei); | ^~~~~~~~~~~~~~~~~~~ /home/nipa/net-next/wt-1/tools/sched_ext/include/scx/user_exit_info.h:46:36: note: expanded from macro 'UEI_RECORD' 46 | __uei_name##_dump_len, (__ei)->dump); \ | ~~~~~~^ dsp_local_on.bpf.c:52:47: note: forward declaration of 'struct scx_exit_info' 52 | void BPF_STRUCT_OPS(dsp_local_on_exit, struct scx_exit_info *ei) | ^ dsp_local_on.bpf.c:54:2: error: incomplete definition of type 'struct scx_exit_info' 54 | UEI_RECORD(uei, ei); | ^~~~~~~~~~~~~~~~~~~ /home/nipa/net-next/wt-1/tools/sched_ext/include/scx/user_exit_info.h:47:34: note: expanded from macro 'UEI_RECORD' 47 | if (bpf_core_field_exists((__ei)->exit_code)) \ | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~ /home/nipa/net-next/wt-1/build_tools/kselftest/sched_ext/build/include/bpf/bpf_core_read.h:188:49: note: expanded from macro 'bpf_core_field_exists' 188 | __builtin_preserve_field_info(___bpf_field_ref(field), BPF_FIELD_EXISTS) | ~~~~~~~~~~~~~~~~~^~~~~~ /home/nipa/net-next/wt-1/build_tools/kselftest/sched_ext/build/include/bpf/bpf_core_read.h:173:52: note: expanded from macro '___bpf_field_ref' 173 | ___bpf_apply(___bpf_field_ref, ___bpf_narg(args))(args) | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~ /home/nipa/net-next/wt-1/build_tools/kselftest/sched_ext/build/include/bpf/bpf_core_read.h:166:35: note: expanded from macro '___bpf_field_ref1' 166 | #define ___bpf_field_ref1(field) (field) | ^~~~~ dsp_local_on.bpf.c:52:47: note: forward declaration of 'struct scx_exit_info' 52 | void BPF_STRUCT_OPS(dsp_local_on_exit, struct scx_exit_info *ei) | ^ dsp_local_on.bpf.c:54:2: error: incomplete definition of type 'struct scx_exit_info' 54 | UEI_RECORD(uei, ei); | ^~~~~~~~~~~~~~~~~~~ /home/nipa/net-next/wt-1/tools/sched_ext/include/scx/user_exit_info.h:48:32: note: expanded from macro 'UEI_RECORD' 48 | __uei_name.exit_code = (__ei)->exit_code; \ | ~~~~~~^ dsp_local_on.bpf.c:52:47: note: forward declaration of 'struct scx_exit_info' 52 | void BPF_STRUCT_OPS(dsp_local_on_exit, struct scx_exit_info *ei) | ^ dsp_local_on.bpf.c:54:2: error: incomplete definition of type 'struct scx_exit_info' 54 | UEI_RECORD(uei, ei); | ^~~~~~~~~~~~~~~~~~~ /home/nipa/net-next/wt-1/tools/sched_ext/include/scx/user_exit_info.h:51:15: note: expanded from macro 'UEI_RECORD' 51 | (__ei)->kind); \ | ~~~~~~^ dsp_local_on.bpf.c:52:47: note: forward declaration of 'struct scx_exit_info' 52 | void BPF_STRUCT_OPS(dsp_local_on_exit, struct scx_exit_info *ei) | ^ dsp_local_on.bpf.c:58:22: error: variable has incomplete type 'struct sched_ext_ops' 58 | struct sched_ext_ops dsp_local_on_ops = { | ^ dsp_local_on.bpf.c:58:8: note: forward declaration of 'struct sched_ext_ops' 58 | struct sched_ext_ops dsp_local_on_ops = { | ^ 9 warnings and 11 errors generated. make[1]: *** [Makefile:136: /home/nipa/net-next/wt-1/build_tools/kselftest/sched_ext/build/obj/sched_ext/dsp_local_on.bpf.o] Error 1 In file included from create_dsq.bpf.c:9: /home/nipa/net-next/wt-1/tools/sched_ext/include/scx/common.bpf.h:33:17: error: use of undeclared identifier 'SCX_DSQ_FLAG_BUILTIN' 33 | _Static_assert(SCX_DSQ_FLAG_BUILTIN, | ^ /home/nipa/net-next/wt-1/tools/sched_ext/include/scx/common.bpf.h:44:49: warning: declaration of 'struct bpf_iter_scx_dsq' will not be visible outside of this function [-Wvisibility] 44 | void scx_bpf_dispatch_from_dsq_set_slice(struct bpf_iter_scx_dsq *it__iter, u64 slice) __ksym __weak; | ^ /home/nipa/net-next/wt-1/tools/sched_ext/include/scx/common.bpf.h:45:49: warning: declaration of 'struct bpf_iter_scx_dsq' will not be visible outside of this function [-Wvisibility] 45 | void scx_bpf_dispatch_from_dsq_set_vtime(struct bpf_iter_scx_dsq *it__iter, u64 vtime) __ksym __weak; | ^ /home/nipa/net-next/wt-1/tools/sched_ext/include/scx/common.bpf.h:46:39: warning: declaration of 'struct bpf_iter_scx_dsq' will not be visible outside of this function [-Wvisibility] 46 | bool scx_bpf_dispatch_from_dsq(struct bpf_iter_scx_dsq *it__iter, struct task_struct *p, u64 dsq_id, u64 enq_flags) __ksym __weak; | ^ /home/nipa/net-next/wt-1/tools/sched_ext/include/scx/common.bpf.h:47:45: warning: declaration of 'struct bpf_iter_scx_dsq' will not be visible outside of this function [-Wvisibility] 47 | bool scx_bpf_dispatch_vtime_from_dsq(struct bpf_iter_scx_dsq *it__iter, struct task_struct *p, u64 dsq_id, u64 enq_flags) __ksym __weak; | ^ /home/nipa/net-next/wt-1/tools/sched_ext/include/scx/common.bpf.h:52:33: warning: declaration of 'struct bpf_iter_scx_dsq' will not be visible outside of this function [-Wvisibility] 52 | int bpf_iter_scx_dsq_new(struct bpf_iter_scx_dsq *it, u64 dsq_id, u64 flags) __ksym __weak; | ^ /home/nipa/net-next/wt-1/tools/sched_ext/include/scx/common.bpf.h:53:50: warning: declaration of 'struct bpf_iter_scx_dsq' will not be visible outside of this function [-Wvisibility] 53 | struct task_struct *bpf_iter_scx_dsq_next(struct bpf_iter_scx_dsq *it) __ksym __weak; | ^ /home/nipa/net-next/wt-1/tools/sched_ext/include/scx/common.bpf.h:54:38: warning: declaration of 'struct bpf_iter_scx_dsq' will not be visible outside of this function [-Wvisibility] 54 | void bpf_iter_scx_dsq_destroy(struct bpf_iter_scx_dsq *it) __ksym __weak; | ^ create_dsq.bpf.c:14:14: warning: declaration of 'struct scx_exit_task_args' will not be visible outside of this function [-Wvisibility] 14 | struct scx_exit_task_args *args) | ^ create_dsq.bpf.c:14:14: warning: declaration of 'struct scx_exit_task_args' will not be visible outside of this function [-Wvisibility] create_dsq.bpf.c:13:6: error: conflicting types for '____create_dsq_exit_task' 13 | void BPF_STRUCT_OPS(create_dsq_exit_task, struct task_struct *p, | ^ /home/nipa/net-next/wt-1/tools/sched_ext/include/scx/common.bpf.h:140:32: note: expanded from macro 'BPF_STRUCT_OPS' 140 | SEC("struct_ops/"#name) \ | ^ /home/nipa/net-next/wt-1/build_tools/kselftest/sched_ext/build/include/bpf/bpf_tracing.h:683:48: note: expanded from macro '\ BPF_PROG' 683 | static __always_inline typeof(name(0)) \ | ^ :24:1: note: expanded from here 24 | ____create_dsq_exit_task | ^ create_dsq.bpf.c:13:6: note: previous declaration is here /home/nipa/net-next/wt-1/tools/sched_ext/include/scx/common.bpf.h:140:32: note: expanded from macro 'BPF_STRUCT_OPS' 140 | SEC("struct_ops/"#name) \ | ^ /home/nipa/net-next/wt-1/build_tools/kselftest/sched_ext/build/include/bpf/bpf_tracing.h:674:48: note: expanded from macro '\ BPF_PROG' 674 | static __always_inline typeof(name(0)) \ | ^ :15:1: note: expanded from here 15 | ____create_dsq_exit_task | ^ create_dsq.bpf.c:20:16: warning: declaration of 'struct scx_init_task_args' will not be visible outside of this function [-Wvisibility] 20 | struct scx_init_task_args *args) | ^ create_dsq.bpf.c:20:16: warning: declaration of 'struct scx_init_task_args' will not be visible outside of this function [-Wvisibility] create_dsq.bpf.c:19:5: error: conflicting types for '____create_dsq_init_task' 19 | s32 BPF_STRUCT_OPS_SLEEPABLE(create_dsq_init_task, struct task_struct *p, | ^ /home/nipa/net-next/wt-1/tools/sched_ext/include/scx/common.bpf.h:144:33: note: expanded from macro 'BPF_STRUCT_OPS_SLEEPABLE' 144 | SEC("struct_ops.s/"#name) \ | ^ /home/nipa/net-next/wt-1/build_tools/kselftest/sched_ext/build/include/bpf/bpf_tracing.h:683:48: note: expanded from macro '\ BPF_PROG' 683 | static __always_inline typeof(name(0)) \ | ^ :41:1: note: expanded from here 41 | ____create_dsq_init_task | ^ create_dsq.bpf.c:19:5: note: previous declaration is here /home/nipa/net-next/wt-1/tools/sched_ext/include/scx/common.bpf.h:144:33: note: expanded from macro 'BPF_STRUCT_OPS_SLEEPABLE' 144 | SEC("struct_ops.s/"#name) \ | ^ /home/nipa/net-next/wt-1/build_tools/kselftest/sched_ext/build/include/bpf/bpf_tracing.h:674:48: note: expanded from macro '\ BPF_PROG' 674 | static __always_inline typeof(name(0)) \ | ^ :32:1: note: expanded from here 32 | ____create_dsq_init_task | ^ create_dsq.bpf.c:53:22: error: variable has incomplete type 'struct sched_ext_ops' 53 | struct sched_ext_ops create_dsq_ops = { | ^ create_dsq.bpf.c:53:8: note: forward declaration of 'struct sched_ext_ops' 53 | struct sched_ext_ops create_dsq_ops = { | ^ 11 warnings and 4 errors generated. make[1]: *** [Makefile:136: /home/nipa/net-next/wt-1/build_tools/kselftest/sched_ext/build/obj/sched_ext/create_dsq.bpf.o] Error 1 In file included from ddsp_vtimelocal_fail.bpf.c:7: /home/nipa/net-next/wt-1/tools/sched_ext/include/scx/common.bpf.h:33:17: error: use of undeclared identifier 'SCX_DSQ_FLAG_BUILTIN' 33 | _Static_assert(SCX_DSQ_FLAG_BUILTIN, | ^ /home/nipa/net-next/wt-1/tools/sched_ext/include/scx/common.bpf.h:44:49: warning: declaration of 'struct bpf_iter_scx_dsq' will not be visible outside of this function [-Wvisibility] 44 | void scx_bpf_dispatch_from_dsq_set_slice(struct bpf_iter_scx_dsq *it__iter, u64 slice) __ksym __weak; | ^ /home/nipa/net-next/wt-1/tools/sched_ext/include/scx/common.bpf.h:45:49: warning: declaration of 'struct bpf_iter_scx_dsq' will not be visible outside of this function [-Wvisibility] 45 | void scx_bpf_dispatch_from_dsq_set_vtime(struct bpf_iter_scx_dsq *it__iter, u64 vtime) __ksym __weak; | ^ /home/nipa/net-next/wt-1/tools/sched_ext/include/scx/common.bpf.h:46:39: warning: declaration of 'struct bpf_iter_scx_dsq' will not be visible outside of this function [-Wvisibility] 46 | bool scx_bpf_dispatch_from_dsq(struct bpf_iter_scx_dsq *it__iter, struct task_struct *p, u64 dsq_id, u64 enq_flags) __ksym __weak; | ^ /home/nipa/net-next/wt-1/tools/sched_ext/include/scx/common.bpf.h:47:45: warning: declaration of 'struct bpf_iter_scx_dsq' will not be visible outside of this function [-Wvisibility] 47 | bool scx_bpf_dispatch_vtime_from_dsq(struct bpf_iter_scx_dsq *it__iter, struct task_struct *p, u64 dsq_id, u64 enq_flags) __ksym __weak; | ^ /home/nipa/net-next/wt-1/tools/sched_ext/include/scx/common.bpf.h:52:33: warning: declaration of 'struct bpf_iter_scx_dsq' will not be visible outside of this function [-Wvisibility] 52 | int bpf_iter_scx_dsq_new(struct bpf_iter_scx_dsq *it, u64 dsq_id, u64 flags) __ksym __weak; | ^ /home/nipa/net-next/wt-1/tools/sched_ext/include/scx/common.bpf.h:53:50: warning: declaration of 'struct bpf_iter_scx_dsq' will not be visible outside of this function [-Wvisibility] 53 | struct task_struct *bpf_iter_scx_dsq_next(struct bpf_iter_scx_dsq *it) __ksym __weak; | ^ /home/nipa/net-next/wt-1/tools/sched_ext/include/scx/common.bpf.h:54:38: warning: declaration of 'struct bpf_iter_scx_dsq' will not be visible outside of this function [-Wvisibility] 54 | void bpf_iter_scx_dsq_destroy(struct bpf_iter_scx_dsq *it) __ksym __weak; | ^ ddsp_vtimelocal_fail.bpf.c:21:15: error: no member named 'scx' in 'struct task_struct' 21 | p->scx.dsq_vtime, 0); | ~ ^ ddsp_vtimelocal_fail.bpf.c:20:29: error: use of undeclared identifier 'SCX_DSQ_LOCAL' 20 | scx_bpf_dispatch_vtime(p, SCX_DSQ_LOCAL, SCX_SLICE_DFL, | ^ ddsp_vtimelocal_fail.bpf.c:20:44: error: use of undeclared identifier 'SCX_SLICE_DFL' 20 | scx_bpf_dispatch_vtime(p, SCX_DSQ_LOCAL, SCX_SLICE_DFL, | ^ ddsp_vtimelocal_fail.bpf.c:28:55: warning: declaration of 'struct scx_exit_info' will not be visible outside of this function [-Wvisibility] 28 | void BPF_STRUCT_OPS(ddsp_vtimelocal_fail_exit, struct scx_exit_info *ei) | ^ ddsp_vtimelocal_fail.bpf.c:28:55: warning: declaration of 'struct scx_exit_info' will not be visible outside of this function [-Wvisibility] ddsp_vtimelocal_fail.bpf.c:28:6: error: conflicting types for '____ddsp_vtimelocal_fail_exit' 28 | void BPF_STRUCT_OPS(ddsp_vtimelocal_fail_exit, struct scx_exit_info *ei) | ^ /home/nipa/net-next/wt-1/tools/sched_ext/include/scx/common.bpf.h:140:32: note: expanded from macro 'BPF_STRUCT_OPS' 140 | SEC("struct_ops/"#name) \ | ^ /home/nipa/net-next/wt-1/build_tools/kselftest/sched_ext/build/include/bpf/bpf_tracing.h:683:48: note: expanded from macro '\ BPF_PROG' 683 | static __always_inline typeof(name(0)) \ | ^ :57:1: note: expanded from here 57 | ____ddsp_vtimelocal_fail_exit | ^ ddsp_vtimelocal_fail.bpf.c:28:6: note: previous declaration is here /home/nipa/net-next/wt-1/tools/sched_ext/include/scx/common.bpf.h:140:32: note: expanded from macro 'BPF_STRUCT_OPS' 140 | SEC("struct_ops/"#name) \ | ^ /home/nipa/net-next/wt-1/build_tools/kselftest/sched_ext/build/include/bpf/bpf_tracing.h:674:48: note: expanded from macro '\ BPF_PROG' 674 | static __always_inline typeof(name(0)) \ | ^ :48:1: note: expanded from here 48 | ____ddsp_vtimelocal_fail_exit | ^ ddsp_vtimelocal_fail.bpf.c:30:2: error: incomplete definition of type 'struct scx_exit_info' 30 | UEI_RECORD(uei, ei); | ^~~~~~~~~~~~~~~~~~~ /home/nipa/net-next/wt-1/tools/sched_ext/include/scx/user_exit_info.h:42:40: note: expanded from macro 'UEI_RECORD' 42 | sizeof(__uei_name.reason), (__ei)->reason); \ | ~~~~~~^ ddsp_vtimelocal_fail.bpf.c:28:55: note: forward declaration of 'struct scx_exit_info' 28 | void BPF_STRUCT_OPS(ddsp_vtimelocal_fail_exit, struct scx_exit_info *ei) | ^ ddsp_vtimelocal_fail.bpf.c:30:2: error: incomplete definition of type 'struct scx_exit_info' 30 | UEI_RECORD(uei, ei); | ^~~~~~~~~~~~~~~~~~~ /home/nipa/net-next/wt-1/tools/sched_ext/include/scx/user_exit_info.h:44:37: note: expanded from macro 'UEI_RECORD' 44 | sizeof(__uei_name.msg), (__ei)->msg); \ | ~~~~~~^ ddsp_vtimelocal_fail.bpf.c:28:55: note: forward declaration of 'struct scx_exit_info' 28 | void BPF_STRUCT_OPS(ddsp_vtimelocal_fail_exit, struct scx_exit_info *ei) | ^ ddsp_vtimelocal_fail.bpf.c:30:2: error: incomplete definition of type 'struct scx_exit_info' 30 | UEI_RECORD(uei, ei); | ^~~~~~~~~~~~~~~~~~~ /home/nipa/net-next/wt-1/tools/sched_ext/include/scx/user_exit_info.h:46:36: note: expanded from macro 'UEI_RECORD' 46 | __uei_name##_dump_len, (__ei)->dump); \ | ~~~~~~^ ddsp_vtimelocal_fail.bpf.c:28:55: note: forward declaration of 'struct scx_exit_info' 28 | void BPF_STRUCT_OPS(ddsp_vtimelocal_fail_exit, struct scx_exit_info *ei) | ^ ddsp_vtimelocal_fail.bpf.c:30:2: error: incomplete definition of type 'struct scx_exit_info' 30 | UEI_RECORD(uei, ei); | ^~~~~~~~~~~~~~~~~~~ /home/nipa/net-next/wt-1/tools/sched_ext/include/scx/user_exit_info.h:47:34: note: expanded from macro 'UEI_RECORD' 47 | if (bpf_core_field_exists((__ei)->exit_code)) \ | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~ /home/nipa/net-next/wt-1/build_tools/kselftest/sched_ext/build/include/bpf/bpf_core_read.h:188:49: note: expanded from macro 'bpf_core_field_exists' 188 | __builtin_preserve_field_info(___bpf_field_ref(field), BPF_FIELD_EXISTS) | ~~~~~~~~~~~~~~~~~^~~~~~ /home/nipa/net-next/wt-1/build_tools/kselftest/sched_ext/build/include/bpf/bpf_core_read.h:173:52: note: expanded from macro '___bpf_field_ref' 173 | ___bpf_apply(___bpf_field_ref, ___bpf_narg(args))(args) | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~ /home/nipa/net-next/wt-1/build_tools/kselftest/sched_ext/build/include/bpf/bpf_core_read.h:166:35: note: expanded from macro '___bpf_field_ref1' 166 | #define ___bpf_field_ref1(field) (field) | ^~~~~ ddsp_vtimelocal_fail.bpf.c:28:55: note: forward declaration of 'struct scx_exit_info' 28 | void BPF_STRUCT_OPS(ddsp_vtimelocal_fail_exit, struct scx_exit_info *ei) | ^ ddsp_vtimelocal_fail.bpf.c:30:2: error: incomplete definition of type 'struct scx_exit_info' 30 | UEI_RECORD(uei, ei); | ^~~~~~~~~~~~~~~~~~~ /home/nipa/net-next/wt-1/tools/sched_ext/include/scx/user_exit_info.h:48:32: note: expanded from macro 'UEI_RECORD' 48 | __uei_name.exit_code = (__ei)->exit_code; \ | ~~~~~~^ ddsp_vtimelocal_fail.bpf.c:28:55: note: forward declaration of 'struct scx_exit_info' 28 | void BPF_STRUCT_OPS(ddsp_vtimelocal_fail_exit, struct scx_exit_info *ei) | ^ ddsp_vtimelocal_fail.bpf.c:30:2: error: incomplete definition of type 'struct scx_exit_info' 30 | UEI_RECORD(uei, ei); | ^~~~~~~~~~~~~~~~~~~ /home/nipa/net-next/wt-1/tools/sched_ext/include/scx/user_exit_info.h:51:15: note: expanded from macro 'UEI_RECORD' 51 | (__ei)->kind); \ | ~~~~~~^ ddsp_vtimelocal_fail.bpf.c:28:55: note: forward declaration of 'struct scx_exit_info' 28 | void BPF_STRUCT_OPS(ddsp_vtimelocal_fail_exit, struct scx_exit_info *ei) | ^ ddsp_vtimelocal_fail.bpf.c:34:22: error: variable has incomplete type 'struct sched_ext_ops' 34 | struct sched_ext_ops ddsp_vtimelocal_fail_ops = { | ^ ddsp_vtimelocal_fail.bpf.c:34:8: note: forward declaration of 'struct sched_ext_ops' 34 | struct sched_ext_ops ddsp_vtimelocal_fail_ops = { | ^ 9 warnings and 12 errors generated. make[1]: *** [Makefile:136: /home/nipa/net-next/wt-1/build_tools/kselftest/sched_ext/build/obj/sched_ext/ddsp_vtimelocal_fail.bpf.o] Error 1 In file included from init_enable_count.bpf.c:11: /home/nipa/net-next/wt-1/tools/sched_ext/include/scx/common.bpf.h:33:17: error: use of undeclared identifier 'SCX_DSQ_FLAG_BUILTIN' 33 | _Static_assert(SCX_DSQ_FLAG_BUILTIN, | ^ /home/nipa/net-next/wt-1/tools/sched_ext/include/scx/common.bpf.h:44:49: warning: declaration of 'struct bpf_iter_scx_dsq' will not be visible outside of this function [-Wvisibility] 44 | void scx_bpf_dispatch_from_dsq_set_slice(struct bpf_iter_scx_dsq *it__iter, u64 slice) __ksym __weak; | ^ /home/nipa/net-next/wt-1/tools/sched_ext/include/scx/common.bpf.h:45:49: warning: declaration of 'struct bpf_iter_scx_dsq' will not be visible outside of this function [-Wvisibility] 45 | void scx_bpf_dispatch_from_dsq_set_vtime(struct bpf_iter_scx_dsq *it__iter, u64 vtime) __ksym __weak; | ^ /home/nipa/net-next/wt-1/tools/sched_ext/include/scx/common.bpf.h:46:39: warning: declaration of 'struct bpf_iter_scx_dsq' will not be visible outside of this function [-Wvisibility] 46 | bool scx_bpf_dispatch_from_dsq(struct bpf_iter_scx_dsq *it__iter, struct task_struct *p, u64 dsq_id, u64 enq_flags) __ksym __weak; | ^ /home/nipa/net-next/wt-1/tools/sched_ext/include/scx/common.bpf.h:47:45: warning: declaration of 'struct bpf_iter_scx_dsq' will not be visible outside of this function [-Wvisibility] 47 | bool scx_bpf_dispatch_vtime_from_dsq(struct bpf_iter_scx_dsq *it__iter, struct task_struct *p, u64 dsq_id, u64 enq_flags) __ksym __weak; | ^ /home/nipa/net-next/wt-1/tools/sched_ext/include/scx/common.bpf.h:52:33: warning: declaration of 'struct bpf_iter_scx_dsq' will not be visible outside of this function [-Wvisibility] 52 | int bpf_iter_scx_dsq_new(struct bpf_iter_scx_dsq *it, u64 dsq_id, u64 flags) __ksym __weak; | ^ /home/nipa/net-next/wt-1/tools/sched_ext/include/scx/common.bpf.h:53:50: warning: declaration of 'struct bpf_iter_scx_dsq' will not be visible outside of this function [-Wvisibility] 53 | struct task_struct *bpf_iter_scx_dsq_next(struct bpf_iter_scx_dsq *it) __ksym __weak; | ^ /home/nipa/net-next/wt-1/tools/sched_ext/include/scx/common.bpf.h:54:38: warning: declaration of 'struct bpf_iter_scx_dsq' will not be visible outside of this function [-Wvisibility] 54 | void bpf_iter_scx_dsq_destroy(struct bpf_iter_scx_dsq *it) __ksym __weak; | ^ init_enable_count.bpf.c:19:16: warning: declaration of 'struct scx_init_task_args' will not be visible outside of this function [-Wvisibility] 19 | struct scx_init_task_args *args) | ^ init_enable_count.bpf.c:19:16: warning: declaration of 'struct scx_init_task_args' will not be visible outside of this function [-Wvisibility] init_enable_count.bpf.c:18:5: error: conflicting types for '____cnt_init_task' 18 | s32 BPF_STRUCT_OPS_SLEEPABLE(cnt_init_task, struct task_struct *p, | ^ /home/nipa/net-next/wt-1/tools/sched_ext/include/scx/common.bpf.h:144:33: note: expanded from macro 'BPF_STRUCT_OPS_SLEEPABLE' 144 | SEC("struct_ops.s/"#name) \ | ^ /home/nipa/net-next/wt-1/build_tools/kselftest/sched_ext/build/include/bpf/bpf_tracing.h:683:48: note: expanded from macro '\ BPF_PROG' 683 | static __always_inline typeof(name(0)) \ | ^ :24:1: note: expanded from here 24 | ____cnt_init_task | ^ init_enable_count.bpf.c:18:5: note: previous declaration is here /home/nipa/net-next/wt-1/tools/sched_ext/include/scx/common.bpf.h:144:33: note: expanded from macro 'BPF_STRUCT_OPS_SLEEPABLE' 144 | SEC("struct_ops.s/"#name) \ | ^ /home/nipa/net-next/wt-1/build_tools/kselftest/sched_ext/build/include/bpf/bpf_tracing.h:674:48: note: expanded from macro '\ BPF_PROG' 674 | static __always_inline typeof(name(0)) \ | ^ :15:1: note: expanded from here 15 | ____cnt_init_task | ^ init_enable_count.bpf.c:23:10: error: incomplete definition of type 'struct scx_init_task_args' 23 | if (args->fork) | ~~~~^ init_enable_count.bpf.c:19:16: note: forward declaration of 'struct scx_init_task_args' 19 | struct scx_init_task_args *args) | ^ init_enable_count.bpf.c:47:22: error: variable has incomplete type 'struct sched_ext_ops' 47 | struct sched_ext_ops init_enable_count_ops = { | ^ init_enable_count.bpf.c:47:8: note: forward declaration of 'struct sched_ext_ops' 47 | struct sched_ext_ops init_enable_count_ops = { | ^ 9 warnings and 4 errors generated. make[1]: *** [Makefile:136: /home/nipa/net-next/wt-1/build_tools/kselftest/sched_ext/build/obj/sched_ext/init_enable_count.bpf.o] Error 1 In file included from maybe_null_fail_yld.bpf.c:6: /home/nipa/net-next/wt-1/tools/sched_ext/include/scx/common.bpf.h:33:17: error: use of undeclared identifier 'SCX_DSQ_FLAG_BUILTIN' 33 | _Static_assert(SCX_DSQ_FLAG_BUILTIN, | ^ /home/nipa/net-next/wt-1/tools/sched_ext/include/scx/common.bpf.h:44:49: warning: declaration of 'struct bpf_iter_scx_dsq' will not be visible outside of this function [-Wvisibility] 44 | void scx_bpf_dispatch_from_dsq_set_slice(struct bpf_iter_scx_dsq *it__iter, u64 slice) __ksym __weak; | ^ /home/nipa/net-next/wt-1/tools/sched_ext/include/scx/common.bpf.h:45:49: warning: declaration of 'struct bpf_iter_scx_dsq' will not be visible outside of this function [-Wvisibility] 45 | void scx_bpf_dispatch_from_dsq_set_vtime(struct bpf_iter_scx_dsq *it__iter, u64 vtime) __ksym __weak; | ^ /home/nipa/net-next/wt-1/tools/sched_ext/include/scx/common.bpf.h:46:39: warning: declaration of 'struct bpf_iter_scx_dsq' will not be visible outside of this function [-Wvisibility] 46 | bool scx_bpf_dispatch_from_dsq(struct bpf_iter_scx_dsq *it__iter, struct task_struct *p, u64 dsq_id, u64 enq_flags) __ksym __weak; | ^ /home/nipa/net-next/wt-1/tools/sched_ext/include/scx/common.bpf.h:47:45: warning: declaration of 'struct bpf_iter_scx_dsq' will not be visible outside of this function [-Wvisibility] 47 | bool scx_bpf_dispatch_vtime_from_dsq(struct bpf_iter_scx_dsq *it__iter, struct task_struct *p, u64 dsq_id, u64 enq_flags) __ksym __weak; | ^ /home/nipa/net-next/wt-1/tools/sched_ext/include/scx/common.bpf.h:52:33: warning: declaration of 'struct bpf_iter_scx_dsq' will not be visible outside of this function [-Wvisibility] 52 | int bpf_iter_scx_dsq_new(struct bpf_iter_scx_dsq *it, u64 dsq_id, u64 flags) __ksym __weak; | ^ /home/nipa/net-next/wt-1/tools/sched_ext/include/scx/common.bpf.h:53:50: warning: declaration of 'struct bpf_iter_scx_dsq' will not be visible outside of this function [-Wvisibility] 53 | struct task_struct *bpf_iter_scx_dsq_next(struct bpf_iter_scx_dsq *it) __ksym __weak; | ^ /home/nipa/net-next/wt-1/tools/sched_ext/include/scx/common.bpf.h:54:38: warning: declaration of 'struct bpf_iter_scx_dsq' will not be visible outside of this function [-Wvisibility] 54 | void bpf_iter_scx_dsq_destroy(struct bpf_iter_scx_dsq *it) __ksym __weak; | ^ maybe_null_fail_yld.bpf.c:24:22: error: variable has incomplete type 'struct sched_ext_ops' 24 | struct sched_ext_ops maybe_null_fail = { | ^ maybe_null_fail_yld.bpf.c:24:8: note: forward declaration of 'struct sched_ext_ops' 24 | struct sched_ext_ops maybe_null_fail = { | ^ 7 warnings and 2 errors generated. make[1]: *** [Makefile:136: /home/nipa/net-next/wt-1/build_tools/kselftest/sched_ext/build/obj/sched_ext/maybe_null_fail_yld.bpf.o] Error 1 In file included from hotplug.bpf.c:7: /home/nipa/net-next/wt-1/tools/sched_ext/include/scx/common.bpf.h:33:17: error: use of undeclared identifier 'SCX_DSQ_FLAG_BUILTIN' 33 | _Static_assert(SCX_DSQ_FLAG_BUILTIN, | ^ /home/nipa/net-next/wt-1/tools/sched_ext/include/scx/common.bpf.h:44:49: warning: declaration of 'struct bpf_iter_scx_dsq' will not be visible outside of this function [-Wvisibility] 44 | void scx_bpf_dispatch_from_dsq_set_slice(struct bpf_iter_scx_dsq *it__iter, u64 slice) __ksym __weak; | ^ /home/nipa/net-next/wt-1/tools/sched_ext/include/scx/common.bpf.h:45:49: warning: declaration of 'struct bpf_iter_scx_dsq' will not be visible outside of this function [-Wvisibility] 45 | void scx_bpf_dispatch_from_dsq_set_vtime(struct bpf_iter_scx_dsq *it__iter, u64 vtime) __ksym __weak; | ^ /home/nipa/net-next/wt-1/tools/sched_ext/include/scx/common.bpf.h:46:39: warning: declaration of 'struct bpf_iter_scx_dsq' will not be visible outside of this function [-Wvisibility] 46 | bool scx_bpf_dispatch_from_dsq(struct bpf_iter_scx_dsq *it__iter, struct task_struct *p, u64 dsq_id, u64 enq_flags) __ksym __weak; | ^ /home/nipa/net-next/wt-1/tools/sched_ext/include/scx/common.bpf.h:47:45: warning: declaration of 'struct bpf_iter_scx_dsq' will not be visible outside of this function [-Wvisibility] 47 | bool scx_bpf_dispatch_vtime_from_dsq(struct bpf_iter_scx_dsq *it__iter, struct task_struct *p, u64 dsq_id, u64 enq_flags) __ksym __weak; | ^ /home/nipa/net-next/wt-1/tools/sched_ext/include/scx/common.bpf.h:52:33: warning: declaration of 'struct bpf_iter_scx_dsq' will not be visible outside of this function [-Wvisibility] 52 | int bpf_iter_scx_dsq_new(struct bpf_iter_scx_dsq *it, u64 dsq_id, u64 flags) __ksym __weak; | ^ /home/nipa/net-next/wt-1/tools/sched_ext/include/scx/common.bpf.h:53:50: warning: declaration of 'struct bpf_iter_scx_dsq' will not be visible outside of this function [-Wvisibility] 53 | struct task_struct *bpf_iter_scx_dsq_next(struct bpf_iter_scx_dsq *it) __ksym __weak; | ^ /home/nipa/net-next/wt-1/tools/sched_ext/include/scx/common.bpf.h:54:38: warning: declaration of 'struct bpf_iter_scx_dsq' will not be visible outside of this function [-Wvisibility] 54 | void bpf_iter_scx_dsq_destroy(struct bpf_iter_scx_dsq *it) __ksym __weak; | ^ hotplug.bpf.c:15:42: warning: declaration of 'struct scx_exit_info' will not be visible outside of this function [-Wvisibility] 15 | void BPF_STRUCT_OPS(hotplug_exit, struct scx_exit_info *ei) | ^ hotplug.bpf.c:15:42: warning: declaration of 'struct scx_exit_info' will not be visible outside of this function [-Wvisibility] hotplug.bpf.c:15:6: error: conflicting types for '____hotplug_exit' 15 | void BPF_STRUCT_OPS(hotplug_exit, struct scx_exit_info *ei) | ^ /home/nipa/net-next/wt-1/tools/sched_ext/include/scx/common.bpf.h:140:32: note: expanded from macro 'BPF_STRUCT_OPS' 140 | SEC("struct_ops/"#name) \ | ^ /home/nipa/net-next/wt-1/build_tools/kselftest/sched_ext/build/include/bpf/bpf_tracing.h:683:48: note: expanded from macro '\ BPF_PROG' 683 | static __always_inline typeof(name(0)) \ | ^ :40:1: note: expanded from here 40 | ____hotplug_exit | ^ hotplug.bpf.c:15:6: note: previous declaration is here /home/nipa/net-next/wt-1/tools/sched_ext/include/scx/common.bpf.h:140:32: note: expanded from macro 'BPF_STRUCT_OPS' 140 | SEC("struct_ops/"#name) \ | ^ /home/nipa/net-next/wt-1/build_tools/kselftest/sched_ext/build/include/bpf/bpf_tracing.h:674:48: note: expanded from macro '\ BPF_PROG' 674 | static __always_inline typeof(name(0)) \ | ^ :31:1: note: expanded from here 31 | ____hotplug_exit | ^ hotplug.bpf.c:17:2: error: incomplete definition of type 'struct scx_exit_info' 17 | UEI_RECORD(uei, ei); | ^~~~~~~~~~~~~~~~~~~ /home/nipa/net-next/wt-1/tools/sched_ext/include/scx/user_exit_info.h:42:40: note: expanded from macro 'UEI_RECORD' 42 | sizeof(__uei_name.reason), (__ei)->reason); \ | ~~~~~~^ hotplug.bpf.c:15:42: note: forward declaration of 'struct scx_exit_info' 15 | void BPF_STRUCT_OPS(hotplug_exit, struct scx_exit_info *ei) | ^ hotplug.bpf.c:17:2: error: incomplete definition of type 'struct scx_exit_info' 17 | UEI_RECORD(uei, ei); | ^~~~~~~~~~~~~~~~~~~ /home/nipa/net-next/wt-1/tools/sched_ext/include/scx/user_exit_info.h:44:37: note: expanded from macro 'UEI_RECORD' 44 | sizeof(__uei_name.msg), (__ei)->msg); \ | ~~~~~~^ hotplug.bpf.c:15:42: note: forward declaration of 'struct scx_exit_info' 15 | void BPF_STRUCT_OPS(hotplug_exit, struct scx_exit_info *ei) | ^ hotplug.bpf.c:17:2: error: incomplete definition of type 'struct scx_exit_info' 17 | UEI_RECORD(uei, ei); | ^~~~~~~~~~~~~~~~~~~ /home/nipa/net-next/wt-1/tools/sched_ext/include/scx/user_exit_info.h:46:36: note: expanded from macro 'UEI_RECORD' 46 | __uei_name##_dump_len, (__ei)->dump); \ | ~~~~~~^ hotplug.bpf.c:15:42: note: forward declaration of 'struct scx_exit_info' 15 | void BPF_STRUCT_OPS(hotplug_exit, struct scx_exit_info *ei) | ^ hotplug.bpf.c:17:2: error: incomplete definition of type 'struct scx_exit_info' 17 | UEI_RECORD(uei, ei); | ^~~~~~~~~~~~~~~~~~~ /home/nipa/net-next/wt-1/tools/sched_ext/include/scx/user_exit_info.h:47:34: note: expanded from macro 'UEI_RECORD' 47 | if (bpf_core_field_exists((__ei)->exit_code)) \ | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~ /home/nipa/net-next/wt-1/build_tools/kselftest/sched_ext/build/include/bpf/bpf_core_read.h:188:49: note: expanded from macro 'bpf_core_field_exists' 188 | __builtin_preserve_field_info(___bpf_field_ref(field), BPF_FIELD_EXISTS) | ~~~~~~~~~~~~~~~~~^~~~~~ /home/nipa/net-next/wt-1/build_tools/kselftest/sched_ext/build/include/bpf/bpf_core_read.h:173:52: note: expanded from macro '___bpf_field_ref' 173 | ___bpf_apply(___bpf_field_ref, ___bpf_narg(args))(args) | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~ /home/nipa/net-next/wt-1/build_tools/kselftest/sched_ext/build/include/bpf/bpf_core_read.h:166:35: note: expanded from macro '___bpf_field_ref1' 166 | #define ___bpf_field_ref1(field) (field) | ^~~~~ hotplug.bpf.c:15:42: note: forward declaration of 'struct scx_exit_info' 15 | void BPF_STRUCT_OPS(hotplug_exit, struct scx_exit_info *ei) | ^ hotplug.bpf.c:17:2: error: incomplete definition of type 'struct scx_exit_info' 17 | UEI_RECORD(uei, ei); | ^~~~~~~~~~~~~~~~~~~ /home/nipa/net-next/wt-1/tools/sched_ext/include/scx/user_exit_info.h:48:32: note: expanded from macro 'UEI_RECORD' 48 | __uei_name.exit_code = (__ei)->exit_code; \ | ~~~~~~^ hotplug.bpf.c:15:42: note: forward declaration of 'struct scx_exit_info' 15 | void BPF_STRUCT_OPS(hotplug_exit, struct scx_exit_info *ei) | ^ hotplug.bpf.c:17:2: error: incomplete definition of type 'struct scx_exit_info' 17 | UEI_RECORD(uei, ei); | ^~~~~~~~~~~~~~~~~~~ /home/nipa/net-next/wt-1/tools/sched_ext/include/scx/user_exit_info.h:51:15: note: expanded from macro 'UEI_RECORD' 51 | (__ei)->kind); \ | ~~~~~~^ hotplug.bpf.c:15:42: note: forward declaration of 'struct scx_exit_info' 15 | void BPF_STRUCT_OPS(hotplug_exit, struct scx_exit_info *ei) | ^ hotplug.bpf.c:28:13: error: use of undeclared identifier 'SCX_ECODE_ACT_RESTART' 28 | s64 code = SCX_ECODE_ACT_RESTART | HOTPLUG_EXIT_RSN; | ^ hotplug.bpf.c:48:22: error: variable has incomplete type 'struct sched_ext_ops' 48 | struct sched_ext_ops hotplug_cb_ops = { | ^ hotplug.bpf.c:48:8: note: forward declaration of 'struct sched_ext_ops' 48 | struct sched_ext_ops hotplug_cb_ops = { | ^ hotplug.bpf.c:57:22: error: variable has incomplete type 'struct sched_ext_ops' 57 | struct sched_ext_ops hotplug_nocb_ops = { | ^ hotplug.bpf.c:48:8: note: forward declaration of 'struct sched_ext_ops' 48 | struct sched_ext_ops hotplug_cb_ops = { | ^ 9 warnings and 11 errors generated. make[1]: *** [Makefile:136: /home/nipa/net-next/wt-1/build_tools/kselftest/sched_ext/build/obj/sched_ext/hotplug.bpf.o] Error 1 In file included from prog_run.bpf.c:10: /home/nipa/net-next/wt-1/tools/sched_ext/include/scx/common.bpf.h:33:17: error: use of undeclared identifier 'SCX_DSQ_FLAG_BUILTIN' 33 | _Static_assert(SCX_DSQ_FLAG_BUILTIN, | ^ /home/nipa/net-next/wt-1/tools/sched_ext/include/scx/common.bpf.h:44:49: warning: declaration of 'struct bpf_iter_scx_dsq' will not be visible outside of this function [-Wvisibility] 44 | void scx_bpf_dispatch_from_dsq_set_slice(struct bpf_iter_scx_dsq *it__iter, u64 slice) __ksym __weak; | ^ /home/nipa/net-next/wt-1/tools/sched_ext/include/scx/common.bpf.h:45:49: warning: declaration of 'struct bpf_iter_scx_dsq' will not be visible outside of this function [-Wvisibility] 45 | void scx_bpf_dispatch_from_dsq_set_vtime(struct bpf_iter_scx_dsq *it__iter, u64 vtime) __ksym __weak; | ^ /home/nipa/net-next/wt-1/tools/sched_ext/include/scx/common.bpf.h:46:39: warning: declaration of 'struct bpf_iter_scx_dsq' will not be visible outside of this function [-Wvisibility] 46 | bool scx_bpf_dispatch_from_dsq(struct bpf_iter_scx_dsq *it__iter, struct task_struct *p, u64 dsq_id, u64 enq_flags) __ksym __weak; | ^ /home/nipa/net-next/wt-1/tools/sched_ext/include/scx/common.bpf.h:47:45: warning: declaration of 'struct bpf_iter_scx_dsq' will not be visible outside of this function [-Wvisibility] 47 | bool scx_bpf_dispatch_vtime_from_dsq(struct bpf_iter_scx_dsq *it__iter, struct task_struct *p, u64 dsq_id, u64 enq_flags) __ksym __weak; | ^ /home/nipa/net-next/wt-1/tools/sched_ext/include/scx/common.bpf.h:52:33: warning: declaration of 'struct bpf_iter_scx_dsq' will not be visible outside of this function [-Wvisibility] 52 | int bpf_iter_scx_dsq_new(struct bpf_iter_scx_dsq *it, u64 dsq_id, u64 flags) __ksym __weak; | ^ /home/nipa/net-next/wt-1/tools/sched_ext/include/scx/common.bpf.h:53:50: warning: declaration of 'struct bpf_iter_scx_dsq' will not be visible outside of this function [-Wvisibility] 53 | struct task_struct *bpf_iter_scx_dsq_next(struct bpf_iter_scx_dsq *it) __ksym __weak; | ^ /home/nipa/net-next/wt-1/tools/sched_ext/include/scx/common.bpf.h:54:38: warning: declaration of 'struct bpf_iter_scx_dsq' will not be visible outside of this function [-Wvisibility] 54 | void bpf_iter_scx_dsq_destroy(struct bpf_iter_scx_dsq *it) __ksym __weak; | ^ prog_run.bpf.c:24:43: warning: declaration of 'struct scx_exit_info' will not be visible outside of this function [-Wvisibility] 24 | void BPF_STRUCT_OPS(prog_run_exit, struct scx_exit_info *ei) | ^ prog_run.bpf.c:24:43: warning: declaration of 'struct scx_exit_info' will not be visible outside of this function [-Wvisibility] prog_run.bpf.c:24:6: error: conflicting types for '____prog_run_exit' 24 | void BPF_STRUCT_OPS(prog_run_exit, struct scx_exit_info *ei) | ^ /home/nipa/net-next/wt-1/tools/sched_ext/include/scx/common.bpf.h:140:32: note: expanded from macro 'BPF_STRUCT_OPS' 140 | SEC("struct_ops/"#name) \ | ^ /home/nipa/net-next/wt-1/build_tools/kselftest/sched_ext/build/include/bpf/bpf_tracing.h:683:48: note: expanded from macro '\ BPF_PROG' 683 | static __always_inline typeof(name(0)) \ | ^ :63:1: note: expanded from here 63 | ____prog_run_exit | ^ prog_run.bpf.c:24:6: note: previous declaration is here /home/nipa/net-next/wt-1/tools/sched_ext/include/scx/common.bpf.h:140:32: note: expanded from macro 'BPF_STRUCT_OPS' 140 | SEC("struct_ops/"#name) \ | ^ /home/nipa/net-next/wt-1/build_tools/kselftest/sched_ext/build/include/bpf/bpf_tracing.h:674:48: note: expanded from macro '\ BPF_PROG' 674 | static __always_inline typeof(name(0)) \ | ^ :54:1: note: expanded from here 54 | ____prog_run_exit | ^ prog_run.bpf.c:26:2: error: incomplete definition of type 'struct scx_exit_info' 26 | UEI_RECORD(uei, ei); | ^~~~~~~~~~~~~~~~~~~ /home/nipa/net-next/wt-1/tools/sched_ext/include/scx/user_exit_info.h:42:40: note: expanded from macro 'UEI_RECORD' 42 | sizeof(__uei_name.reason), (__ei)->reason); \ | ~~~~~~^ prog_run.bpf.c:24:43: note: forward declaration of 'struct scx_exit_info' 24 | void BPF_STRUCT_OPS(prog_run_exit, struct scx_exit_info *ei) | ^ prog_run.bpf.c:26:2: error: incomplete definition of type 'struct scx_exit_info' 26 | UEI_RECORD(uei, ei); | ^~~~~~~~~~~~~~~~~~~ /home/nipa/net-next/wt-1/tools/sched_ext/include/scx/user_exit_info.h:44:37: note: expanded from macro 'UEI_RECORD' 44 | sizeof(__uei_name.msg), (__ei)->msg); \ | ~~~~~~^ prog_run.bpf.c:24:43: note: forward declaration of 'struct scx_exit_info' 24 | void BPF_STRUCT_OPS(prog_run_exit, struct scx_exit_info *ei) | ^ prog_run.bpf.c:26:2: error: incomplete definition of type 'struct scx_exit_info' 26 | UEI_RECORD(uei, ei); | ^~~~~~~~~~~~~~~~~~~ /home/nipa/net-next/wt-1/tools/sched_ext/include/scx/user_exit_info.h:46:36: note: expanded from macro 'UEI_RECORD' 46 | __uei_name##_dump_len, (__ei)->dump); \ | ~~~~~~^ prog_run.bpf.c:24:43: note: forward declaration of 'struct scx_exit_info' 24 | void BPF_STRUCT_OPS(prog_run_exit, struct scx_exit_info *ei) | ^ prog_run.bpf.c:26:2: error: incomplete definition of type 'struct scx_exit_info' 26 | UEI_RECORD(uei, ei); | ^~~~~~~~~~~~~~~~~~~ /home/nipa/net-next/wt-1/tools/sched_ext/include/scx/user_exit_info.h:47:34: note: expanded from macro 'UEI_RECORD' 47 | if (bpf_core_field_exists((__ei)->exit_code)) \ | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~ /home/nipa/net-next/wt-1/build_tools/kselftest/sched_ext/build/include/bpf/bpf_core_read.h:188:49: note: expanded from macro 'bpf_core_field_exists' 188 | __builtin_preserve_field_info(___bpf_field_ref(field), BPF_FIELD_EXISTS) | ~~~~~~~~~~~~~~~~~^~~~~~ /home/nipa/net-next/wt-1/build_tools/kselftest/sched_ext/build/include/bpf/bpf_core_read.h:173:52: note: expanded from macro '___bpf_field_ref' 173 | ___bpf_apply(___bpf_field_ref, ___bpf_narg(args))(args) | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~ /home/nipa/net-next/wt-1/build_tools/kselftest/sched_ext/build/include/bpf/bpf_core_read.h:166:35: note: expanded from macro '___bpf_field_ref1' 166 | #define ___bpf_field_ref1(field) (field) | ^~~~~ prog_run.bpf.c:24:43: note: forward declaration of 'struct scx_exit_info' 24 | void BPF_STRUCT_OPS(prog_run_exit, struct scx_exit_info *ei) | ^ prog_run.bpf.c:26:2: error: incomplete definition of type 'struct scx_exit_info' 26 | UEI_RECORD(uei, ei); | ^~~~~~~~~~~~~~~~~~~ /home/nipa/net-next/wt-1/tools/sched_ext/include/scx/user_exit_info.h:48:32: note: expanded from macro 'UEI_RECORD' 48 | __uei_name.exit_code = (__ei)->exit_code; \ | ~~~~~~^ prog_run.bpf.c:24:43: note: forward declaration of 'struct scx_exit_info' 24 | void BPF_STRUCT_OPS(prog_run_exit, struct scx_exit_info *ei) | ^ prog_run.bpf.c:26:2: error: incomplete definition of type 'struct scx_exit_info' 26 | UEI_RECORD(uei, ei); | ^~~~~~~~~~~~~~~~~~~ /home/nipa/net-next/wt-1/tools/sched_ext/include/scx/user_exit_info.h:51:15: note: expanded from macro 'UEI_RECORD' 51 | (__ei)->kind); \ | ~~~~~~^ prog_run.bpf.c:24:43: note: forward declaration of 'struct scx_exit_info' 24 | void BPF_STRUCT_OPS(prog_run_exit, struct scx_exit_info *ei) | ^ prog_run.bpf.c:30:22: error: variable has incomplete type 'struct sched_ext_ops' 30 | struct sched_ext_ops prog_run_ops = { | ^ prog_run.bpf.c:30:8: note: forward declaration of 'struct sched_ext_ops' 30 | struct sched_ext_ops prog_run_ops = { | ^ 9 warnings and 9 errors generated. make[1]: *** [Makefile:136: /home/nipa/net-next/wt-1/build_tools/kselftest/sched_ext/build/obj/sched_ext/prog_run.bpf.o] Error 1 In file included from maybe_null_fail_dsp.bpf.c:6: /home/nipa/net-next/wt-1/tools/sched_ext/include/scx/common.bpf.h:33:17: error: use of undeclared identifier 'SCX_DSQ_FLAG_BUILTIN' 33 | _Static_assert(SCX_DSQ_FLAG_BUILTIN, | ^ /home/nipa/net-next/wt-1/tools/sched_ext/include/scx/common.bpf.h:44:49: warning: declaration of 'struct bpf_iter_scx_dsq' will not be visible outside of this function [-Wvisibility] 44 | void scx_bpf_dispatch_from_dsq_set_slice(struct bpf_iter_scx_dsq *it__iter, u64 slice) __ksym __weak; | ^ /home/nipa/net-next/wt-1/tools/sched_ext/include/scx/common.bpf.h:45:49: warning: declaration of 'struct bpf_iter_scx_dsq' will not be visible outside of this function [-Wvisibility] 45 | void scx_bpf_dispatch_from_dsq_set_vtime(struct bpf_iter_scx_dsq *it__iter, u64 vtime) __ksym __weak; | ^ /home/nipa/net-next/wt-1/tools/sched_ext/include/scx/common.bpf.h:46:39: warning: declaration of 'struct bpf_iter_scx_dsq' will not be visible outside of this function [-Wvisibility] 46 | bool scx_bpf_dispatch_from_dsq(struct bpf_iter_scx_dsq *it__iter, struct task_struct *p, u64 dsq_id, u64 enq_flags) __ksym __weak; | ^ /home/nipa/net-next/wt-1/tools/sched_ext/include/scx/common.bpf.h:47:45: warning: declaration of 'struct bpf_iter_scx_dsq' will not be visible outside of this function [-Wvisibility] 47 | bool scx_bpf_dispatch_vtime_from_dsq(struct bpf_iter_scx_dsq *it__iter, struct task_struct *p, u64 dsq_id, u64 enq_flags) __ksym __weak; | ^ /home/nipa/net-next/wt-1/tools/sched_ext/include/scx/common.bpf.h:52:33: warning: declaration of 'struct bpf_iter_scx_dsq' will not be visible outside of this function [-Wvisibility] 52 | int bpf_iter_scx_dsq_new(struct bpf_iter_scx_dsq *it, u64 dsq_id, u64 flags) __ksym __weak; | ^ /home/nipa/net-next/wt-1/tools/sched_ext/include/scx/common.bpf.h:53:50: warning: declaration of 'struct bpf_iter_scx_dsq' will not be visible outside of this function [-Wvisibility] 53 | struct task_struct *bpf_iter_scx_dsq_next(struct bpf_iter_scx_dsq *it) __ksym __weak; | ^ /home/nipa/net-next/wt-1/tools/sched_ext/include/scx/common.bpf.h:54:38: warning: declaration of 'struct bpf_iter_scx_dsq' will not be visible outside of this function [-Wvisibility] 54 | void bpf_iter_scx_dsq_destroy(struct bpf_iter_scx_dsq *it) __ksym __weak; | ^ maybe_null_fail_dsp.bpf.c:17:18: error: no member named 'scx' in 'struct task_struct' 17 | vtime_test = p->scx.dsq_vtime; | ~ ^ maybe_null_fail_dsp.bpf.c:21:22: error: variable has incomplete type 'struct sched_ext_ops' 21 | struct sched_ext_ops maybe_null_fail = { | ^ maybe_null_fail_dsp.bpf.c:21:8: note: forward declaration of 'struct sched_ext_ops' 21 | struct sched_ext_ops maybe_null_fail = { | ^ 7 warnings and 3 errors generated. make[1]: *** [Makefile:136: /home/nipa/net-next/wt-1/build_tools/kselftest/sched_ext/build/obj/sched_ext/maybe_null_fail_dsp.bpf.o] Error 1 In file included from select_cpu_dispatch_bad_dsq.bpf.c:11: /home/nipa/net-next/wt-1/tools/sched_ext/include/scx/common.bpf.h:33:17: error: use of undeclared identifier 'SCX_DSQ_FLAG_BUILTIN' 33 | _Static_assert(SCX_DSQ_FLAG_BUILTIN, | ^ /home/nipa/net-next/wt-1/tools/sched_ext/include/scx/common.bpf.h:44:49: warning: declaration of 'struct bpf_iter_scx_dsq' will not be visible outside of this function [-Wvisibility] 44 | void scx_bpf_dispatch_from_dsq_set_slice(struct bpf_iter_scx_dsq *it__iter, u64 slice) __ksym __weak; | ^ /home/nipa/net-next/wt-1/tools/sched_ext/include/scx/common.bpf.h:45:49: warning: declaration of 'struct bpf_iter_scx_dsq' will not be visible outside of this function [-Wvisibility] 45 | void scx_bpf_dispatch_from_dsq_set_vtime(struct bpf_iter_scx_dsq *it__iter, u64 vtime) __ksym __weak; | ^ /home/nipa/net-next/wt-1/tools/sched_ext/include/scx/common.bpf.h:46:39: warning: declaration of 'struct bpf_iter_scx_dsq' will not be visible outside of this function [-Wvisibility] 46 | bool scx_bpf_dispatch_from_dsq(struct bpf_iter_scx_dsq *it__iter, struct task_struct *p, u64 dsq_id, u64 enq_flags) __ksym __weak; | ^ /home/nipa/net-next/wt-1/tools/sched_ext/include/scx/common.bpf.h:47:45: warning: declaration of 'struct bpf_iter_scx_dsq' will not be visible outside of this function [-Wvisibility] 47 | bool scx_bpf_dispatch_vtime_from_dsq(struct bpf_iter_scx_dsq *it__iter, struct task_struct *p, u64 dsq_id, u64 enq_flags) __ksym __weak; | ^ /home/nipa/net-next/wt-1/tools/sched_ext/include/scx/common.bpf.h:52:33: warning: declaration of 'struct bpf_iter_scx_dsq' will not be visible outside of this function [-Wvisibility] 52 | int bpf_iter_scx_dsq_new(struct bpf_iter_scx_dsq *it, u64 dsq_id, u64 flags) __ksym __weak; | ^ /home/nipa/net-next/wt-1/tools/sched_ext/include/scx/common.bpf.h:53:50: warning: declaration of 'struct bpf_iter_scx_dsq' will not be visible outside of this function [-Wvisibility] 53 | struct task_struct *bpf_iter_scx_dsq_next(struct bpf_iter_scx_dsq *it) __ksym __weak; | ^ /home/nipa/net-next/wt-1/tools/sched_ext/include/scx/common.bpf.h:54:38: warning: declaration of 'struct bpf_iter_scx_dsq' will not be visible outside of this function [-Wvisibility] 54 | void bpf_iter_scx_dsq_destroy(struct bpf_iter_scx_dsq *it) __ksym __weak; | ^ select_cpu_dispatch_bad_dsq.bpf.c:21:34: error: use of undeclared identifier 'SCX_SLICE_DFL' 21 | scx_bpf_dispatch(p, 0xcafef00d, SCX_SLICE_DFL, 0); | ^ select_cpu_dispatch_bad_dsq.bpf.c:26:62: warning: declaration of 'struct scx_exit_info' will not be visible outside of this function [-Wvisibility] 26 | void BPF_STRUCT_OPS(select_cpu_dispatch_bad_dsq_exit, struct scx_exit_info *ei) | ^ select_cpu_dispatch_bad_dsq.bpf.c:26:62: warning: declaration of 'struct scx_exit_info' will not be visible outside of this function [-Wvisibility] select_cpu_dispatch_bad_dsq.bpf.c:26:6: error: conflicting types for '____select_cpu_dispatch_bad_dsq_exit' 26 | void BPF_STRUCT_OPS(select_cpu_dispatch_bad_dsq_exit, struct scx_exit_info *ei) | ^ /home/nipa/net-next/wt-1/tools/sched_ext/include/scx/common.bpf.h:140:32: note: expanded from macro 'BPF_STRUCT_OPS' 140 | SEC("struct_ops/"#name) \ | ^ /home/nipa/net-next/wt-1/build_tools/kselftest/sched_ext/build/include/bpf/bpf_tracing.h:683:48: note: expanded from macro '\ BPF_PROG' 683 | static __always_inline typeof(name(0)) \ | ^ :57:1: note: expanded from here 57 | ____select_cpu_dispatch_bad_dsq_exit | ^ select_cpu_dispatch_bad_dsq.bpf.c:26:6: note: previous declaration is here /home/nipa/net-next/wt-1/tools/sched_ext/include/scx/common.bpf.h:140:32: note: expanded from macro 'BPF_STRUCT_OPS' 140 | SEC("struct_ops/"#name) \ | ^ /home/nipa/net-next/wt-1/build_tools/kselftest/sched_ext/build/include/bpf/bpf_tracing.h:674:48: note: expanded from macro '\ BPF_PROG' 674 | static __always_inline typeof(name(0)) \ | ^ :48:1: note: expanded from here 48 | ____select_cpu_dispatch_bad_dsq_exit | ^ select_cpu_dispatch_bad_dsq.bpf.c:28:2: error: incomplete definition of type 'struct scx_exit_info' 28 | UEI_RECORD(uei, ei); | ^~~~~~~~~~~~~~~~~~~ /home/nipa/net-next/wt-1/tools/sched_ext/include/scx/user_exit_info.h:42:40: note: expanded from macro 'UEI_RECORD' 42 | sizeof(__uei_name.reason), (__ei)->reason); \ | ~~~~~~^ select_cpu_dispatch_bad_dsq.bpf.c:26:62: note: forward declaration of 'struct scx_exit_info' 26 | void BPF_STRUCT_OPS(select_cpu_dispatch_bad_dsq_exit, struct scx_exit_info *ei) | ^ select_cpu_dispatch_bad_dsq.bpf.c:28:2: error: incomplete definition of type 'struct scx_exit_info' 28 | UEI_RECORD(uei, ei); | ^~~~~~~~~~~~~~~~~~~ /home/nipa/net-next/wt-1/tools/sched_ext/include/scx/user_exit_info.h:44:37: note: expanded from macro 'UEI_RECORD' 44 | sizeof(__uei_name.msg), (__ei)->msg); \ | ~~~~~~^ select_cpu_dispatch_bad_dsq.bpf.c:26:62: note: forward declaration of 'struct scx_exit_info' 26 | void BPF_STRUCT_OPS(select_cpu_dispatch_bad_dsq_exit, struct scx_exit_info *ei) | ^ select_cpu_dispatch_bad_dsq.bpf.c:28:2: error: incomplete definition of type 'struct scx_exit_info' 28 | UEI_RECORD(uei, ei); | ^~~~~~~~~~~~~~~~~~~ /home/nipa/net-next/wt-1/tools/sched_ext/include/scx/user_exit_info.h:46:36: note: expanded from macro 'UEI_RECORD' 46 | __uei_name##_dump_len, (__ei)->dump); \ | ~~~~~~^ select_cpu_dispatch_bad_dsq.bpf.c:26:62: note: forward declaration of 'struct scx_exit_info' 26 | void BPF_STRUCT_OPS(select_cpu_dispatch_bad_dsq_exit, struct scx_exit_info *ei) | ^ select_cpu_dispatch_bad_dsq.bpf.c:28:2: error: incomplete definition of type 'struct scx_exit_info' 28 | UEI_RECORD(uei, ei); | ^~~~~~~~~~~~~~~~~~~ /home/nipa/net-next/wt-1/tools/sched_ext/include/scx/user_exit_info.h:47:34: note: expanded from macro 'UEI_RECORD' 47 | if (bpf_core_field_exists((__ei)->exit_code)) \ | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~ /home/nipa/net-next/wt-1/build_tools/kselftest/sched_ext/build/include/bpf/bpf_core_read.h:188:49: note: expanded from macro 'bpf_core_field_exists' 188 | __builtin_preserve_field_info(___bpf_field_ref(field), BPF_FIELD_EXISTS) | ~~~~~~~~~~~~~~~~~^~~~~~ /home/nipa/net-next/wt-1/build_tools/kselftest/sched_ext/build/include/bpf/bpf_core_read.h:173:52: note: expanded from macro '___bpf_field_ref' 173 | ___bpf_apply(___bpf_field_ref, ___bpf_narg(args))(args) | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~ /home/nipa/net-next/wt-1/build_tools/kselftest/sched_ext/build/include/bpf/bpf_core_read.h:166:35: note: expanded from macro '___bpf_field_ref1' 166 | #define ___bpf_field_ref1(field) (field) | ^~~~~ select_cpu_dispatch_bad_dsq.bpf.c:26:62: note: forward declaration of 'struct scx_exit_info' 26 | void BPF_STRUCT_OPS(select_cpu_dispatch_bad_dsq_exit, struct scx_exit_info *ei) | ^ select_cpu_dispatch_bad_dsq.bpf.c:28:2: error: incomplete definition of type 'struct scx_exit_info' 28 | UEI_RECORD(uei, ei); | ^~~~~~~~~~~~~~~~~~~ /home/nipa/net-next/wt-1/tools/sched_ext/include/scx/user_exit_info.h:48:32: note: expanded from macro 'UEI_RECORD' 48 | __uei_name.exit_code = (__ei)->exit_code; \ | ~~~~~~^ select_cpu_dispatch_bad_dsq.bpf.c:26:62: note: forward declaration of 'struct scx_exit_info' 26 | void BPF_STRUCT_OPS(select_cpu_dispatch_bad_dsq_exit, struct scx_exit_info *ei) | ^ select_cpu_dispatch_bad_dsq.bpf.c:28:2: error: incomplete definition of type 'struct scx_exit_info' 28 | UEI_RECORD(uei, ei); | ^~~~~~~~~~~~~~~~~~~ /home/nipa/net-next/wt-1/tools/sched_ext/include/scx/user_exit_info.h:51:15: note: expanded from macro 'UEI_RECORD' 51 | (__ei)->kind); \ | ~~~~~~^ select_cpu_dispatch_bad_dsq.bpf.c:26:62: note: forward declaration of 'struct scx_exit_info' 26 | void BPF_STRUCT_OPS(select_cpu_dispatch_bad_dsq_exit, struct scx_exit_info *ei) | ^ select_cpu_dispatch_bad_dsq.bpf.c:32:22: error: variable has incomplete type 'struct sched_ext_ops' 32 | struct sched_ext_ops select_cpu_dispatch_bad_dsq_ops = { | ^ select_cpu_dispatch_bad_dsq.bpf.c:32:8: note: forward declaration of 'struct sched_ext_ops' 32 | struct sched_ext_ops select_cpu_dispatch_bad_dsq_ops = { | ^ 9 warnings and 10 errors generated. make[1]: *** [Makefile:136: /home/nipa/net-next/wt-1/build_tools/kselftest/sched_ext/build/obj/sched_ext/select_cpu_dispatch_bad_dsq.bpf.o] Error 1 In file included from enq_select_cpu_fails.bpf.c:8: /home/nipa/net-next/wt-1/tools/sched_ext/include/scx/common.bpf.h:33:17: error: use of undeclared identifier 'SCX_DSQ_FLAG_BUILTIN' 33 | _Static_assert(SCX_DSQ_FLAG_BUILTIN, | ^ /home/nipa/net-next/wt-1/tools/sched_ext/include/scx/common.bpf.h:44:49: warning: declaration of 'struct bpf_iter_scx_dsq' will not be visible outside of this function [-Wvisibility] 44 | void scx_bpf_dispatch_from_dsq_set_slice(struct bpf_iter_scx_dsq *it__iter, u64 slice) __ksym __weak; | ^ /home/nipa/net-next/wt-1/tools/sched_ext/include/scx/common.bpf.h:45:49: warning: declaration of 'struct bpf_iter_scx_dsq' will not be visible outside of this function [-Wvisibility] 45 | void scx_bpf_dispatch_from_dsq_set_vtime(struct bpf_iter_scx_dsq *it__iter, u64 vtime) __ksym __weak; | ^ /home/nipa/net-next/wt-1/tools/sched_ext/include/scx/common.bpf.h:46:39: warning: declaration of 'struct bpf_iter_scx_dsq' will not be visible outside of this function [-Wvisibility] 46 | bool scx_bpf_dispatch_from_dsq(struct bpf_iter_scx_dsq *it__iter, struct task_struct *p, u64 dsq_id, u64 enq_flags) __ksym __weak; | ^ /home/nipa/net-next/wt-1/tools/sched_ext/include/scx/common.bpf.h:47:45: warning: declaration of 'struct bpf_iter_scx_dsq' will not be visible outside of this function [-Wvisibility] 47 | bool scx_bpf_dispatch_vtime_from_dsq(struct bpf_iter_scx_dsq *it__iter, struct task_struct *p, u64 dsq_id, u64 enq_flags) __ksym __weak; | ^ /home/nipa/net-next/wt-1/tools/sched_ext/include/scx/common.bpf.h:52:33: warning: declaration of 'struct bpf_iter_scx_dsq' will not be visible outside of this function [-Wvisibility] 52 | int bpf_iter_scx_dsq_new(struct bpf_iter_scx_dsq *it, u64 dsq_id, u64 flags) __ksym __weak; | ^ /home/nipa/net-next/wt-1/tools/sched_ext/include/scx/common.bpf.h:53:50: warning: declaration of 'struct bpf_iter_scx_dsq' will not be visible outside of this function [-Wvisibility] 53 | struct task_struct *bpf_iter_scx_dsq_next(struct bpf_iter_scx_dsq *it) __ksym __weak; | ^ /home/nipa/net-next/wt-1/tools/sched_ext/include/scx/common.bpf.h:54:38: warning: declaration of 'struct bpf_iter_scx_dsq' will not be visible outside of this function [-Wvisibility] 54 | void bpf_iter_scx_dsq_destroy(struct bpf_iter_scx_dsq *it) __ksym __weak; | ^ enq_select_cpu_fails.bpf.c:34:22: error: use of undeclared identifier 'SCX_DSQ_GLOBAL' 34 | scx_bpf_dispatch(p, SCX_DSQ_GLOBAL, SCX_SLICE_DFL, enq_flags); | ^ enq_select_cpu_fails.bpf.c:34:38: error: use of undeclared identifier 'SCX_SLICE_DFL' 34 | scx_bpf_dispatch(p, SCX_DSQ_GLOBAL, SCX_SLICE_DFL, enq_flags); | ^ enq_select_cpu_fails.bpf.c:38:22: error: variable has incomplete type 'struct sched_ext_ops' 38 | struct sched_ext_ops enq_select_cpu_fails_ops = { | ^ enq_select_cpu_fails.bpf.c:38:8: note: forward declaration of 'struct sched_ext_ops' 38 | struct sched_ext_ops enq_select_cpu_fails_ops = { | ^ 7 warnings and 4 errors generated. make[1]: *** [Makefile:136: /home/nipa/net-next/wt-1/build_tools/kselftest/sched_ext/build/obj/sched_ext/enq_select_cpu_fails.bpf.o] Error 1 In file included from select_cpu_dfl.bpf.c:11: /home/nipa/net-next/wt-1/tools/sched_ext/include/scx/common.bpf.h:33:17: error: use of undeclared identifier 'SCX_DSQ_FLAG_BUILTIN' 33 | _Static_assert(SCX_DSQ_FLAG_BUILTIN, | ^ /home/nipa/net-next/wt-1/tools/sched_ext/include/scx/common.bpf.h:44:49: warning: declaration of 'struct bpf_iter_scx_dsq' will not be visible outside of this function [-Wvisibility] 44 | void scx_bpf_dispatch_from_dsq_set_slice(struct bpf_iter_scx_dsq *it__iter, u64 slice) __ksym __weak; | ^ /home/nipa/net-next/wt-1/tools/sched_ext/include/scx/common.bpf.h:45:49: warning: declaration of 'struct bpf_iter_scx_dsq' will not be visible outside of this function [-Wvisibility] 45 | void scx_bpf_dispatch_from_dsq_set_vtime(struct bpf_iter_scx_dsq *it__iter, u64 vtime) __ksym __weak; | ^ /home/nipa/net-next/wt-1/tools/sched_ext/include/scx/common.bpf.h:46:39: warning: declaration of 'struct bpf_iter_scx_dsq' will not be visible outside of this function [-Wvisibility] 46 | bool scx_bpf_dispatch_from_dsq(struct bpf_iter_scx_dsq *it__iter, struct task_struct *p, u64 dsq_id, u64 enq_flags) __ksym __weak; | ^ /home/nipa/net-next/wt-1/tools/sched_ext/include/scx/common.bpf.h:47:45: warning: declaration of 'struct bpf_iter_scx_dsq' will not be visible outside of this function [-Wvisibility] 47 | bool scx_bpf_dispatch_vtime_from_dsq(struct bpf_iter_scx_dsq *it__iter, struct task_struct *p, u64 dsq_id, u64 enq_flags) __ksym __weak; | ^ /home/nipa/net-next/wt-1/tools/sched_ext/include/scx/common.bpf.h:52:33: warning: declaration of 'struct bpf_iter_scx_dsq' will not be visible outside of this function [-Wvisibility] 52 | int bpf_iter_scx_dsq_new(struct bpf_iter_scx_dsq *it, u64 dsq_id, u64 flags) __ksym __weak; | ^ /home/nipa/net-next/wt-1/tools/sched_ext/include/scx/common.bpf.h:53:50: warning: declaration of 'struct bpf_iter_scx_dsq' will not be visible outside of this function [-Wvisibility] 53 | struct task_struct *bpf_iter_scx_dsq_next(struct bpf_iter_scx_dsq *it) __ksym __weak; | ^ /home/nipa/net-next/wt-1/tools/sched_ext/include/scx/common.bpf.h:54:38: warning: declaration of 'struct bpf_iter_scx_dsq' will not be visible outside of this function [-Wvisibility] 54 | void bpf_iter_scx_dsq_destroy(struct bpf_iter_scx_dsq *it) __ksym __weak; | ^ select_cpu_dfl.bpf.c:33:22: error: use of undeclared identifier 'SCX_DSQ_GLOBAL' 33 | scx_bpf_dispatch(p, SCX_DSQ_GLOBAL, SCX_SLICE_DFL, enq_flags); | ^ select_cpu_dfl.bpf.c:33:38: error: use of undeclared identifier 'SCX_SLICE_DFL' 33 | scx_bpf_dispatch(p, SCX_DSQ_GLOBAL, SCX_SLICE_DFL, enq_flags); | ^ select_cpu_dfl.bpf.c:37:22: error: variable has incomplete type 'struct sched_ext_ops' 37 | struct sched_ext_ops select_cpu_dfl_ops = { | ^ select_cpu_dfl.bpf.c:37:8: note: forward declaration of 'struct sched_ext_ops' 37 | struct sched_ext_ops select_cpu_dfl_ops = { | ^ 7 warnings and 4 errors generated. make[1]: *** [Makefile:136: /home/nipa/net-next/wt-1/build_tools/kselftest/sched_ext/build/obj/sched_ext/select_cpu_dfl.bpf.o] Error 1 In file included from select_cpu_dfl_nodispatch.bpf.c:12: /home/nipa/net-next/wt-1/tools/sched_ext/include/scx/common.bpf.h:33:17: error: use of undeclared identifier 'SCX_DSQ_FLAG_BUILTIN' 33 | _Static_assert(SCX_DSQ_FLAG_BUILTIN, | ^ /home/nipa/net-next/wt-1/tools/sched_ext/include/scx/common.bpf.h:44:49: warning: declaration of 'struct bpf_iter_scx_dsq' will not be visible outside of this function [-Wvisibility] 44 | void scx_bpf_dispatch_from_dsq_set_slice(struct bpf_iter_scx_dsq *it__iter, u64 slice) __ksym __weak; | ^ /home/nipa/net-next/wt-1/tools/sched_ext/include/scx/common.bpf.h:45:49: warning: declaration of 'struct bpf_iter_scx_dsq' will not be visible outside of this function [-Wvisibility] 45 | void scx_bpf_dispatch_from_dsq_set_vtime(struct bpf_iter_scx_dsq *it__iter, u64 vtime) __ksym __weak; | ^ /home/nipa/net-next/wt-1/tools/sched_ext/include/scx/common.bpf.h:46:39: warning: declaration of 'struct bpf_iter_scx_dsq' will not be visible outside of this function [-Wvisibility] 46 | bool scx_bpf_dispatch_from_dsq(struct bpf_iter_scx_dsq *it__iter, struct task_struct *p, u64 dsq_id, u64 enq_flags) __ksym __weak; | ^ /home/nipa/net-next/wt-1/tools/sched_ext/include/scx/common.bpf.h:47:45: warning: declaration of 'struct bpf_iter_scx_dsq' will not be visible outside of this function [-Wvisibility] 47 | bool scx_bpf_dispatch_vtime_from_dsq(struct bpf_iter_scx_dsq *it__iter, struct task_struct *p, u64 dsq_id, u64 enq_flags) __ksym __weak; | ^ /home/nipa/net-next/wt-1/tools/sched_ext/include/scx/common.bpf.h:52:33: warning: declaration of 'struct bpf_iter_scx_dsq' will not be visible outside of this function [-Wvisibility] 52 | int bpf_iter_scx_dsq_new(struct bpf_iter_scx_dsq *it, u64 dsq_id, u64 flags) __ksym __weak; | ^ /home/nipa/net-next/wt-1/tools/sched_ext/include/scx/common.bpf.h:53:50: warning: declaration of 'struct bpf_iter_scx_dsq' will not be visible outside of this function [-Wvisibility] 53 | struct task_struct *bpf_iter_scx_dsq_next(struct bpf_iter_scx_dsq *it) __ksym __weak; | ^ /home/nipa/net-next/wt-1/tools/sched_ext/include/scx/common.bpf.h:54:38: warning: declaration of 'struct bpf_iter_scx_dsq' will not be visible outside of this function [-Wvisibility] 54 | void bpf_iter_scx_dsq_destroy(struct bpf_iter_scx_dsq *it) __ksym __weak; | ^ select_cpu_dfl_nodispatch.bpf.c:55:15: error: use of undeclared identifier 'SCX_DSQ_GLOBAL' 55 | u64 dsq_id = SCX_DSQ_GLOBAL; | ^ select_cpu_dfl_nodispatch.bpf.c:65:12: error: use of undeclared identifier 'SCX_DSQ_LOCAL' 65 | dsq_id = SCX_DSQ_LOCAL; | ^ select_cpu_dfl_nodispatch.bpf.c:70:30: error: use of undeclared identifier 'SCX_SLICE_DFL' 70 | scx_bpf_dispatch(p, dsq_id, SCX_SLICE_DFL, enq_flags); | ^ select_cpu_dfl_nodispatch.bpf.c:74:36: warning: declaration of 'struct scx_init_task_args' will not be visible outside of this function [-Wvisibility] 74 | struct task_struct *p, struct scx_init_task_args *args) | ^ select_cpu_dfl_nodispatch.bpf.c:74:36: warning: declaration of 'struct scx_init_task_args' will not be visible outside of this function [-Wvisibility] select_cpu_dfl_nodispatch.bpf.c:73:5: error: conflicting types for '____select_cpu_dfl_nodispatch_init_task' 73 | s32 BPF_STRUCT_OPS(select_cpu_dfl_nodispatch_init_task, | ^ /home/nipa/net-next/wt-1/tools/sched_ext/include/scx/common.bpf.h:140:32: note: expanded from macro 'BPF_STRUCT_OPS' 140 | SEC("struct_ops/"#name) \ | ^ /home/nipa/net-next/wt-1/build_tools/kselftest/sched_ext/build/include/bpf/bpf_tracing.h:683:48: note: expanded from macro '\ BPF_PROG' 683 | static __always_inline typeof(name(0)) \ | ^ :78:1: note: expanded from here 78 | ____select_cpu_dfl_nodispatch_init_task | ^ select_cpu_dfl_nodispatch.bpf.c:73:5: note: previous declaration is here /home/nipa/net-next/wt-1/tools/sched_ext/include/scx/common.bpf.h:140:32: note: expanded from macro 'BPF_STRUCT_OPS' 140 | SEC("struct_ops/"#name) \ | ^ /home/nipa/net-next/wt-1/build_tools/kselftest/sched_ext/build/include/bpf/bpf_tracing.h:674:48: note: expanded from macro '\ BPF_PROG' 674 | static __always_inline typeof(name(0)) \ | ^ :69:1: note: expanded from here 69 | ____select_cpu_dfl_nodispatch_init_task | ^ select_cpu_dfl_nodispatch.bpf.c:84:22: error: variable has incomplete type 'struct sched_ext_ops' 84 | struct sched_ext_ops select_cpu_dfl_nodispatch_ops = { | ^ select_cpu_dfl_nodispatch.bpf.c:84:8: note: forward declaration of 'struct sched_ext_ops' 84 | struct sched_ext_ops select_cpu_dfl_nodispatch_ops = { | ^ 9 warnings and 6 errors generated. make[1]: *** [Makefile:136: /home/nipa/net-next/wt-1/build_tools/kselftest/sched_ext/build/obj/sched_ext/select_cpu_dfl_nodispatch.bpf.o] Error 1 In file included from select_cpu_dispatch.bpf.c:11: /home/nipa/net-next/wt-1/tools/sched_ext/include/scx/common.bpf.h:33:17: error: use of undeclared identifier 'SCX_DSQ_FLAG_BUILTIN' 33 | _Static_assert(SCX_DSQ_FLAG_BUILTIN, | ^ /home/nipa/net-next/wt-1/tools/sched_ext/include/scx/common.bpf.h:44:49: warning: declaration of 'struct bpf_iter_scx_dsq' will not be visible outside of this function [-Wvisibility] 44 | void scx_bpf_dispatch_from_dsq_set_slice(struct bpf_iter_scx_dsq *it__iter, u64 slice) __ksym __weak; | ^ /home/nipa/net-next/wt-1/tools/sched_ext/include/scx/common.bpf.h:45:49: warning: declaration of 'struct bpf_iter_scx_dsq' will not be visible outside of this function [-Wvisibility] 45 | void scx_bpf_dispatch_from_dsq_set_vtime(struct bpf_iter_scx_dsq *it__iter, u64 vtime) __ksym __weak; | ^ /home/nipa/net-next/wt-1/tools/sched_ext/include/scx/common.bpf.h:46:39: warning: declaration of 'struct bpf_iter_scx_dsq' will not be visible outside of this function [-Wvisibility] 46 | bool scx_bpf_dispatch_from_dsq(struct bpf_iter_scx_dsq *it__iter, struct task_struct *p, u64 dsq_id, u64 enq_flags) __ksym __weak; | ^ /home/nipa/net-next/wt-1/tools/sched_ext/include/scx/common.bpf.h:47:45: warning: declaration of 'struct bpf_iter_scx_dsq' will not be visible outside of this function [-Wvisibility] 47 | bool scx_bpf_dispatch_vtime_from_dsq(struct bpf_iter_scx_dsq *it__iter, struct task_struct *p, u64 dsq_id, u64 enq_flags) __ksym __weak; | ^ /home/nipa/net-next/wt-1/tools/sched_ext/include/scx/common.bpf.h:52:33: warning: declaration of 'struct bpf_iter_scx_dsq' will not be visible outside of this function [-Wvisibility] 52 | int bpf_iter_scx_dsq_new(struct bpf_iter_scx_dsq *it, u64 dsq_id, u64 flags) __ksym __weak; | ^ /home/nipa/net-next/wt-1/tools/sched_ext/include/scx/common.bpf.h:53:50: warning: declaration of 'struct bpf_iter_scx_dsq' will not be visible outside of this function [-Wvisibility] 53 | struct task_struct *bpf_iter_scx_dsq_next(struct bpf_iter_scx_dsq *it) __ksym __weak; | ^ /home/nipa/net-next/wt-1/tools/sched_ext/include/scx/common.bpf.h:54:38: warning: declaration of 'struct bpf_iter_scx_dsq' will not be visible outside of this function [-Wvisibility] 54 | void bpf_iter_scx_dsq_destroy(struct bpf_iter_scx_dsq *it) __ksym __weak; | ^ select_cpu_dispatch.bpf.c:18:15: error: use of undeclared identifier 'SCX_DSQ_LOCAL' 18 | u64 dsq_id = SCX_DSQ_LOCAL; | ^ select_cpu_dispatch.bpf.c:28:11: error: use of undeclared identifier 'SCX_DSQ_GLOBAL' 28 | dsq_id = SCX_DSQ_GLOBAL; | ^ select_cpu_dispatch.bpf.c:32:30: error: use of undeclared identifier 'SCX_SLICE_DFL' 32 | scx_bpf_dispatch(p, dsq_id, SCX_SLICE_DFL, 0); | ^ select_cpu_dispatch.bpf.c:37:22: error: variable has incomplete type 'struct sched_ext_ops' 37 | struct sched_ext_ops select_cpu_dispatch_ops = { | ^ select_cpu_dispatch.bpf.c:37:8: note: forward declaration of 'struct sched_ext_ops' 37 | struct sched_ext_ops select_cpu_dispatch_ops = { | ^ 7 warnings and 5 errors generated. make[1]: *** [Makefile:136: /home/nipa/net-next/wt-1/build_tools/kselftest/sched_ext/build/obj/sched_ext/select_cpu_dispatch.bpf.o] Error 1 In file included from select_cpu_dispatch_dbl_dsp.bpf.c:11: /home/nipa/net-next/wt-1/tools/sched_ext/include/scx/common.bpf.h:33:17: error: use of undeclared identifier 'SCX_DSQ_FLAG_BUILTIN' 33 | _Static_assert(SCX_DSQ_FLAG_BUILTIN, | ^ /home/nipa/net-next/wt-1/tools/sched_ext/include/scx/common.bpf.h:44:49: warning: declaration of 'struct bpf_iter_scx_dsq' will not be visible outside of this function [-Wvisibility] 44 | void scx_bpf_dispatch_from_dsq_set_slice(struct bpf_iter_scx_dsq *it__iter, u64 slice) __ksym __weak; | ^ /home/nipa/net-next/wt-1/tools/sched_ext/include/scx/common.bpf.h:45:49: warning: declaration of 'struct bpf_iter_scx_dsq' will not be visible outside of this function [-Wvisibility] 45 | void scx_bpf_dispatch_from_dsq_set_vtime(struct bpf_iter_scx_dsq *it__iter, u64 vtime) __ksym __weak; | ^ /home/nipa/net-next/wt-1/tools/sched_ext/include/scx/common.bpf.h:46:39: warning: declaration of 'struct bpf_iter_scx_dsq' will not be visible outside of this function [-Wvisibility] 46 | bool scx_bpf_dispatch_from_dsq(struct bpf_iter_scx_dsq *it__iter, struct task_struct *p, u64 dsq_id, u64 enq_flags) __ksym __weak; | ^ /home/nipa/net-next/wt-1/tools/sched_ext/include/scx/common.bpf.h:47:45: warning: declaration of 'struct bpf_iter_scx_dsq' will not be visible outside of this function [-Wvisibility] 47 | bool scx_bpf_dispatch_vtime_from_dsq(struct bpf_iter_scx_dsq *it__iter, struct task_struct *p, u64 dsq_id, u64 enq_flags) __ksym __weak; | ^ /home/nipa/net-next/wt-1/tools/sched_ext/include/scx/common.bpf.h:52:33: warning: declaration of 'struct bpf_iter_scx_dsq' will not be visible outside of this function [-Wvisibility] 52 | int bpf_iter_scx_dsq_new(struct bpf_iter_scx_dsq *it, u64 dsq_id, u64 flags) __ksym __weak; | ^ /home/nipa/net-next/wt-1/tools/sched_ext/include/scx/common.bpf.h:53:50: warning: declaration of 'struct bpf_iter_scx_dsq' will not be visible outside of this function [-Wvisibility] 53 | struct task_struct *bpf_iter_scx_dsq_next(struct bpf_iter_scx_dsq *it) __ksym __weak; | ^ /home/nipa/net-next/wt-1/tools/sched_ext/include/scx/common.bpf.h:54:38: warning: declaration of 'struct bpf_iter_scx_dsq' will not be visible outside of this function [-Wvisibility] 54 | void bpf_iter_scx_dsq_destroy(struct bpf_iter_scx_dsq *it) __ksym __weak; | ^ select_cpu_dispatch_dbl_dsp.bpf.c:21:22: error: use of undeclared identifier 'SCX_DSQ_GLOBAL' 21 | scx_bpf_dispatch(p, SCX_DSQ_GLOBAL, SCX_SLICE_DFL, 0); | ^ select_cpu_dispatch_dbl_dsp.bpf.c:21:38: error: use of undeclared identifier 'SCX_SLICE_DFL' 21 | scx_bpf_dispatch(p, SCX_DSQ_GLOBAL, SCX_SLICE_DFL, 0); | ^ select_cpu_dispatch_dbl_dsp.bpf.c:22:22: error: use of undeclared identifier 'SCX_DSQ_GLOBAL' 22 | scx_bpf_dispatch(p, SCX_DSQ_GLOBAL, SCX_SLICE_DFL, 0); | ^ select_cpu_dispatch_dbl_dsp.bpf.c:22:38: error: use of undeclared identifier 'SCX_SLICE_DFL' 22 | scx_bpf_dispatch(p, SCX_DSQ_GLOBAL, SCX_SLICE_DFL, 0); | ^ select_cpu_dispatch_dbl_dsp.bpf.c:27:62: warning: declaration of 'struct scx_exit_info' will not be visible outside of this function [-Wvisibility] 27 | void BPF_STRUCT_OPS(select_cpu_dispatch_dbl_dsp_exit, struct scx_exit_info *ei) | ^ select_cpu_dispatch_dbl_dsp.bpf.c:27:62: warning: declaration of 'struct scx_exit_info' will not be visible outside of this function [-Wvisibility] select_cpu_dispatch_dbl_dsp.bpf.c:27:6: error: conflicting types for '____select_cpu_dispatch_dbl_dsp_exit' 27 | void BPF_STRUCT_OPS(select_cpu_dispatch_dbl_dsp_exit, struct scx_exit_info *ei) | ^ /home/nipa/net-next/wt-1/tools/sched_ext/include/scx/common.bpf.h:140:32: note: expanded from macro 'BPF_STRUCT_OPS' 140 | SEC("struct_ops/"#name) \ | ^ /home/nipa/net-next/wt-1/build_tools/kselftest/sched_ext/build/include/bpf/bpf_tracing.h:683:48: note: expanded from macro '\ BPF_PROG' 683 | static __always_inline typeof(name(0)) \ | ^ :57:1: note: expanded from here 57 | ____select_cpu_dispatch_dbl_dsp_exit | ^ select_cpu_dispatch_dbl_dsp.bpf.c:27:6: note: previous declaration is here /home/nipa/net-next/wt-1/tools/sched_ext/include/scx/common.bpf.h:140:32: note: expanded from macro 'BPF_STRUCT_OPS' 140 | SEC("struct_ops/"#name) \ | ^ /home/nipa/net-next/wt-1/build_tools/kselftest/sched_ext/build/include/bpf/bpf_tracing.h:674:48: note: expanded from macro '\ BPF_PROG' 674 | static __always_inline typeof(name(0)) \ | ^ :48:1: note: expanded from here 48 | ____select_cpu_dispatch_dbl_dsp_exit | ^ select_cpu_dispatch_dbl_dsp.bpf.c:29:2: error: incomplete definition of type 'struct scx_exit_info' 29 | UEI_RECORD(uei, ei); | ^~~~~~~~~~~~~~~~~~~ /home/nipa/net-next/wt-1/tools/sched_ext/include/scx/user_exit_info.h:42:40: note: expanded from macro 'UEI_RECORD' 42 | sizeof(__uei_name.reason), (__ei)->reason); \ | ~~~~~~^ select_cpu_dispatch_dbl_dsp.bpf.c:27:62: note: forward declaration of 'struct scx_exit_info' 27 | void BPF_STRUCT_OPS(select_cpu_dispatch_dbl_dsp_exit, struct scx_exit_info *ei) | ^ select_cpu_dispatch_dbl_dsp.bpf.c:29:2: error: incomplete definition of type 'struct scx_exit_info' 29 | UEI_RECORD(uei, ei); | ^~~~~~~~~~~~~~~~~~~ /home/nipa/net-next/wt-1/tools/sched_ext/include/scx/user_exit_info.h:44:37: note: expanded from macro 'UEI_RECORD' 44 | sizeof(__uei_name.msg), (__ei)->msg); \ | ~~~~~~^ select_cpu_dispatch_dbl_dsp.bpf.c:27:62: note: forward declaration of 'struct scx_exit_info' 27 | void BPF_STRUCT_OPS(select_cpu_dispatch_dbl_dsp_exit, struct scx_exit_info *ei) | ^ select_cpu_dispatch_dbl_dsp.bpf.c:29:2: error: incomplete definition of type 'struct scx_exit_info' 29 | UEI_RECORD(uei, ei); | ^~~~~~~~~~~~~~~~~~~ /home/nipa/net-next/wt-1/tools/sched_ext/include/scx/user_exit_info.h:46:36: note: expanded from macro 'UEI_RECORD' 46 | __uei_name##_dump_len, (__ei)->dump); \ | ~~~~~~^ select_cpu_dispatch_dbl_dsp.bpf.c:27:62: note: forward declaration of 'struct scx_exit_info' 27 | void BPF_STRUCT_OPS(select_cpu_dispatch_dbl_dsp_exit, struct scx_exit_info *ei) | ^ select_cpu_dispatch_dbl_dsp.bpf.c:29:2: error: incomplete definition of type 'struct scx_exit_info' 29 | UEI_RECORD(uei, ei); | ^~~~~~~~~~~~~~~~~~~ /home/nipa/net-next/wt-1/tools/sched_ext/include/scx/user_exit_info.h:47:34: note: expanded from macro 'UEI_RECORD' 47 | if (bpf_core_field_exists((__ei)->exit_code)) \ | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~ /home/nipa/net-next/wt-1/build_tools/kselftest/sched_ext/build/include/bpf/bpf_core_read.h:188:49: note: expanded from macro 'bpf_core_field_exists' 188 | __builtin_preserve_field_info(___bpf_field_ref(field), BPF_FIELD_EXISTS) | ~~~~~~~~~~~~~~~~~^~~~~~ /home/nipa/net-next/wt-1/build_tools/kselftest/sched_ext/build/include/bpf/bpf_core_read.h:173:52: note: expanded from macro '___bpf_field_ref' 173 | ___bpf_apply(___bpf_field_ref, ___bpf_narg(args))(args) | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~ /home/nipa/net-next/wt-1/build_tools/kselftest/sched_ext/build/include/bpf/bpf_core_read.h:166:35: note: expanded from macro '___bpf_field_ref1' 166 | #define ___bpf_field_ref1(field) (field) | ^~~~~ select_cpu_dispatch_dbl_dsp.bpf.c:27:62: note: forward declaration of 'struct scx_exit_info' 27 | void BPF_STRUCT_OPS(select_cpu_dispatch_dbl_dsp_exit, struct scx_exit_info *ei) | ^ select_cpu_dispatch_dbl_dsp.bpf.c:29:2: error: incomplete definition of type 'struct scx_exit_info' 29 | UEI_RECORD(uei, ei); | ^~~~~~~~~~~~~~~~~~~ /home/nipa/net-next/wt-1/tools/sched_ext/include/scx/user_exit_info.h:48:32: note: expanded from macro 'UEI_RECORD' 48 | __uei_name.exit_code = (__ei)->exit_code; \ | ~~~~~~^ select_cpu_dispatch_dbl_dsp.bpf.c:27:62: note: forward declaration of 'struct scx_exit_info' 27 | void BPF_STRUCT_OPS(select_cpu_dispatch_dbl_dsp_exit, struct scx_exit_info *ei) | ^ select_cpu_dispatch_dbl_dsp.bpf.c:29:2: error: incomplete definition of type 'struct scx_exit_info' 29 | UEI_RECORD(uei, ei); | ^~~~~~~~~~~~~~~~~~~ /home/nipa/net-next/wt-1/tools/sched_ext/include/scx/user_exit_info.h:51:15: note: expanded from macro 'UEI_RECORD' 51 | (__ei)->kind); \ | ~~~~~~^ select_cpu_dispatch_dbl_dsp.bpf.c:27:62: note: forward declaration of 'struct scx_exit_info' 27 | void BPF_STRUCT_OPS(select_cpu_dispatch_dbl_dsp_exit, struct scx_exit_info *ei) | ^ select_cpu_dispatch_dbl_dsp.bpf.c:33:22: error: variable has incomplete type 'struct sched_ext_ops' 33 | struct sched_ext_ops select_cpu_dispatch_dbl_dsp_ops = { | ^ select_cpu_dispatch_dbl_dsp.bpf.c:33:8: note: forward declaration of 'struct sched_ext_ops' 33 | struct sched_ext_ops select_cpu_dispatch_dbl_dsp_ops = { | ^ 9 warnings and 13 errors generated. make[1]: *** [Makefile:136: /home/nipa/net-next/wt-1/build_tools/kselftest/sched_ext/build/obj/sched_ext/select_cpu_dispatch_dbl_dsp.bpf.o] Error 1 In file included from select_cpu_vtime.bpf.c:13: /home/nipa/net-next/wt-1/tools/sched_ext/include/scx/common.bpf.h:33:17: error: use of undeclared identifier 'SCX_DSQ_FLAG_BUILTIN' 33 | _Static_assert(SCX_DSQ_FLAG_BUILTIN, | ^ /home/nipa/net-next/wt-1/tools/sched_ext/include/scx/common.bpf.h:44:49: warning: declaration of 'struct bpf_iter_scx_dsq' will not be visible outside of this function [-Wvisibility] 44 | void scx_bpf_dispatch_from_dsq_set_slice(struct bpf_iter_scx_dsq *it__iter, u64 slice) __ksym __weak; | ^ /home/nipa/net-next/wt-1/tools/sched_ext/include/scx/common.bpf.h:45:49: warning: declaration of 'struct bpf_iter_scx_dsq' will not be visible outside of this function [-Wvisibility] 45 | void scx_bpf_dispatch_from_dsq_set_vtime(struct bpf_iter_scx_dsq *it__iter, u64 vtime) __ksym __weak; | ^ /home/nipa/net-next/wt-1/tools/sched_ext/include/scx/common.bpf.h:46:39: warning: declaration of 'struct bpf_iter_scx_dsq' will not be visible outside of this function [-Wvisibility] 46 | bool scx_bpf_dispatch_from_dsq(struct bpf_iter_scx_dsq *it__iter, struct task_struct *p, u64 dsq_id, u64 enq_flags) __ksym __weak; | ^ /home/nipa/net-next/wt-1/tools/sched_ext/include/scx/common.bpf.h:47:45: warning: declaration of 'struct bpf_iter_scx_dsq' will not be visible outside of this function [-Wvisibility] 47 | bool scx_bpf_dispatch_vtime_from_dsq(struct bpf_iter_scx_dsq *it__iter, struct task_struct *p, u64 dsq_id, u64 enq_flags) __ksym __weak; | ^ /home/nipa/net-next/wt-1/tools/sched_ext/include/scx/common.bpf.h:52:33: warning: declaration of 'struct bpf_iter_scx_dsq' will not be visible outside of this function [-Wvisibility] 52 | int bpf_iter_scx_dsq_new(struct bpf_iter_scx_dsq *it, u64 dsq_id, u64 flags) __ksym __weak; | ^ /home/nipa/net-next/wt-1/tools/sched_ext/include/scx/common.bpf.h:53:50: warning: declaration of 'struct bpf_iter_scx_dsq' will not be visible outside of this function [-Wvisibility] 53 | struct task_struct *bpf_iter_scx_dsq_next(struct bpf_iter_scx_dsq *it) __ksym __weak; | ^ /home/nipa/net-next/wt-1/tools/sched_ext/include/scx/common.bpf.h:54:38: warning: declaration of 'struct bpf_iter_scx_dsq' will not be visible outside of this function [-Wvisibility] 54 | void bpf_iter_scx_dsq_destroy(struct bpf_iter_scx_dsq *it) __ksym __weak; | ^ select_cpu_vtime.bpf.c:30:17: error: no member named 'scx' in 'struct task_struct' 30 | u64 vtime = p->scx.dsq_vtime; | ~ ^ select_cpu_vtime.bpf.c:32:38: error: use of undeclared identifier 'SCX_SLICE_DFL' 32 | if (vtime_before(vtime, vtime_now - SCX_SLICE_DFL)) | ^ select_cpu_vtime.bpf.c:33:22: error: use of undeclared identifier 'SCX_SLICE_DFL' 33 | return vtime_now - SCX_SLICE_DFL; | ^ select_cpu_vtime.bpf.c:50:39: error: use of undeclared identifier 'SCX_SLICE_DFL' 50 | scx_bpf_dispatch_vtime(p, VTIME_DSQ, SCX_SLICE_DFL, task_vtime(p), 0); | ^ select_cpu_vtime.bpf.c:62:33: error: no member named 'scx' in 'struct task_struct' 62 | if (vtime_before(vtime_now, p->scx.dsq_vtime)) | ~ ^ select_cpu_vtime.bpf.c:63:18: error: no member named 'scx' in 'struct task_struct' 63 | vtime_now = p->scx.dsq_vtime; | ~ ^ select_cpu_vtime.bpf.c:69:5: error: no member named 'scx' in 'struct task_struct' 69 | p->scx.dsq_vtime += (SCX_SLICE_DFL - p->scx.slice) * 100 / p->scx.weight; | ~ ^ select_cpu_vtime.bpf.c:69:42: error: no member named 'scx' in 'struct task_struct' 69 | p->scx.dsq_vtime += (SCX_SLICE_DFL - p->scx.slice) * 100 / p->scx.weight; | ~ ^ select_cpu_vtime.bpf.c:69:23: error: use of undeclared identifier 'SCX_SLICE_DFL' 69 | p->scx.dsq_vtime += (SCX_SLICE_DFL - p->scx.slice) * 100 / p->scx.weight; | ^ select_cpu_vtime.bpf.c:69:64: error: no member named 'scx' in 'struct task_struct' 69 | p->scx.dsq_vtime += (SCX_SLICE_DFL - p->scx.slice) * 100 / p->scx.weight; | ~ ^ select_cpu_vtime.bpf.c:74:5: error: no member named 'scx' in 'struct task_struct' 74 | p->scx.dsq_vtime = vtime_now; | ~ ^ select_cpu_vtime.bpf.c:83:22: error: variable has incomplete type 'struct sched_ext_ops' 83 | struct sched_ext_ops select_cpu_vtime_ops = { | ^ select_cpu_vtime.bpf.c:83:8: note: forward declaration of 'struct sched_ext_ops' 83 | struct sched_ext_ops select_cpu_vtime_ops = { | ^ 7 warnings and 13 errors generated. make[1]: *** [Makefile:136: /home/nipa/net-next/wt-1/build_tools/kselftest/sched_ext/build/obj/sched_ext/select_cpu_vtime.bpf.o] Error 1 In file included from maximal.bpf.c:11: /home/nipa/net-next/wt-1/tools/sched_ext/include/scx/common.bpf.h:33:17: error: use of undeclared identifier 'SCX_DSQ_FLAG_BUILTIN' 33 | _Static_assert(SCX_DSQ_FLAG_BUILTIN, | ^ /home/nipa/net-next/wt-1/tools/sched_ext/include/scx/common.bpf.h:44:49: warning: declaration of 'struct bpf_iter_scx_dsq' will not be visible outside of this function [-Wvisibility] 44 | void scx_bpf_dispatch_from_dsq_set_slice(struct bpf_iter_scx_dsq *it__iter, u64 slice) __ksym __weak; | ^ /home/nipa/net-next/wt-1/tools/sched_ext/include/scx/common.bpf.h:45:49: warning: declaration of 'struct bpf_iter_scx_dsq' will not be visible outside of this function [-Wvisibility] 45 | void scx_bpf_dispatch_from_dsq_set_vtime(struct bpf_iter_scx_dsq *it__iter, u64 vtime) __ksym __weak; | ^ /home/nipa/net-next/wt-1/tools/sched_ext/include/scx/common.bpf.h:46:39: warning: declaration of 'struct bpf_iter_scx_dsq' will not be visible outside of this function [-Wvisibility] 46 | bool scx_bpf_dispatch_from_dsq(struct bpf_iter_scx_dsq *it__iter, struct task_struct *p, u64 dsq_id, u64 enq_flags) __ksym __weak; | ^ /home/nipa/net-next/wt-1/tools/sched_ext/include/scx/common.bpf.h:47:45: warning: declaration of 'struct bpf_iter_scx_dsq' will not be visible outside of this function [-Wvisibility] 47 | bool scx_bpf_dispatch_vtime_from_dsq(struct bpf_iter_scx_dsq *it__iter, struct task_struct *p, u64 dsq_id, u64 enq_flags) __ksym __weak; | ^ /home/nipa/net-next/wt-1/tools/sched_ext/include/scx/common.bpf.h:52:33: warning: declaration of 'struct bpf_iter_scx_dsq' will not be visible outside of this function [-Wvisibility] 52 | int bpf_iter_scx_dsq_new(struct bpf_iter_scx_dsq *it, u64 dsq_id, u64 flags) __ksym __weak; | ^ /home/nipa/net-next/wt-1/tools/sched_ext/include/scx/common.bpf.h:53:50: warning: declaration of 'struct bpf_iter_scx_dsq' will not be visible outside of this function [-Wvisibility] 53 | struct task_struct *bpf_iter_scx_dsq_next(struct bpf_iter_scx_dsq *it) __ksym __weak; | ^ /home/nipa/net-next/wt-1/tools/sched_ext/include/scx/common.bpf.h:54:38: warning: declaration of 'struct bpf_iter_scx_dsq' will not be visible outside of this function [-Wvisibility] 54 | void bpf_iter_scx_dsq_destroy(struct bpf_iter_scx_dsq *it) __ksym __weak; | ^ maximal.bpf.c:23:22: error: use of undeclared identifier 'SCX_DSQ_GLOBAL' 23 | scx_bpf_dispatch(p, SCX_DSQ_GLOBAL, SCX_SLICE_DFL, enq_flags); | ^ maximal.bpf.c:23:38: error: use of undeclared identifier 'SCX_SLICE_DFL' 23 | scx_bpf_dispatch(p, SCX_DSQ_GLOBAL, SCX_SLICE_DFL, enq_flags); | ^ maximal.bpf.c:31:18: error: use of undeclared identifier 'SCX_DSQ_GLOBAL' 31 | scx_bpf_consume(SCX_DSQ_GLOBAL); | ^ maximal.bpf.c:69:14: warning: declaration of 'struct scx_cpu_acquire_args' will not be visible outside of this function [-Wvisibility] 69 | struct scx_cpu_acquire_args *args) | ^ maximal.bpf.c:69:14: warning: declaration of 'struct scx_cpu_acquire_args' will not be visible outside of this function [-Wvisibility] maximal.bpf.c:68:6: error: conflicting types for '____maximal_cpu_acquire' 68 | void BPF_STRUCT_OPS(maximal_cpu_acquire, s32 cpu, | ^ /home/nipa/net-next/wt-1/tools/sched_ext/include/scx/common.bpf.h:140:32: note: expanded from macro 'BPF_STRUCT_OPS' 140 | SEC("struct_ops/"#name) \ | ^ /home/nipa/net-next/wt-1/build_tools/kselftest/sched_ext/build/include/bpf/bpf_tracing.h:683:48: note: expanded from macro '\ BPF_PROG' 683 | static __always_inline typeof(name(0)) \ | ^ :8:1: note: expanded from here 8 | ____maximal_cpu_acquire | ^ maximal.bpf.c:68:6: note: previous declaration is here /home/nipa/net-next/wt-1/tools/sched_ext/include/scx/common.bpf.h:140:32: note: expanded from macro 'BPF_STRUCT_OPS' 140 | SEC("struct_ops/"#name) \ | ^ /home/nipa/net-next/wt-1/build_tools/kselftest/sched_ext/build/include/bpf/bpf_tracing.h:674:48: note: expanded from macro '\ BPF_PROG' 674 | static __always_inline typeof(name(0)) \ | ^ :236:1: note: expanded from here 236 | ____maximal_cpu_acquire | ^ maximal.bpf.c:73:14: warning: declaration of 'struct scx_cpu_release_args' will not be visible outside of this function [-Wvisibility] 73 | struct scx_cpu_release_args *args) | ^ maximal.bpf.c:73:14: warning: declaration of 'struct scx_cpu_release_args' will not be visible outside of this function [-Wvisibility] maximal.bpf.c:72:6: error: conflicting types for '____maximal_cpu_release' 72 | void BPF_STRUCT_OPS(maximal_cpu_release, s32 cpu, | ^ /home/nipa/net-next/wt-1/tools/sched_ext/include/scx/common.bpf.h:140:32: note: expanded from macro 'BPF_STRUCT_OPS' 140 | SEC("struct_ops/"#name) \ | ^ /home/nipa/net-next/wt-1/build_tools/kselftest/sched_ext/build/include/bpf/bpf_tracing.h:683:48: note: expanded from macro '\ BPF_PROG' 683 | static __always_inline typeof(name(0)) \ | ^ :25:1: note: expanded from here 25 | ____maximal_cpu_release | ^ maximal.bpf.c:72:6: note: previous declaration is here /home/nipa/net-next/wt-1/tools/sched_ext/include/scx/common.bpf.h:140:32: note: expanded from macro 'BPF_STRUCT_OPS' 140 | SEC("struct_ops/"#name) \ | ^ /home/nipa/net-next/wt-1/build_tools/kselftest/sched_ext/build/include/bpf/bpf_tracing.h:674:48: note: expanded from macro '\ BPF_PROG' 674 | static __always_inline typeof(name(0)) \ | ^ :16:1: note: expanded from here 16 | ____maximal_cpu_release | ^ maximal.bpf.c:83:13: warning: declaration of 'struct scx_init_task_args' will not be visible outside of this function [-Wvisibility] 83 | struct scx_init_task_args *args) | ^ maximal.bpf.c:83:13: warning: declaration of 'struct scx_init_task_args' will not be visible outside of this function [-Wvisibility] maximal.bpf.c:82:5: error: conflicting types for '____maximal_init_task' 82 | s32 BPF_STRUCT_OPS(maximal_init_task, struct task_struct *p, | ^ /home/nipa/net-next/wt-1/tools/sched_ext/include/scx/common.bpf.h:140:32: note: expanded from macro 'BPF_STRUCT_OPS' 140 | SEC("struct_ops/"#name) \ | ^ /home/nipa/net-next/wt-1/build_tools/kselftest/sched_ext/build/include/bpf/bpf_tracing.h:683:48: note: expanded from macro '\ BPF_PROG' 683 | static __always_inline typeof(name(0)) \ | ^ :76:1: note: expanded from here 76 | ____maximal_init_task | ^ maximal.bpf.c:82:5: note: previous declaration is here /home/nipa/net-next/wt-1/tools/sched_ext/include/scx/common.bpf.h:140:32: note: expanded from macro 'BPF_STRUCT_OPS' 140 | SEC("struct_ops/"#name) \ | ^ /home/nipa/net-next/wt-1/build_tools/kselftest/sched_ext/build/include/bpf/bpf_tracing.h:674:48: note: expanded from macro '\ BPF_PROG' 674 | static __always_inline typeof(name(0)) \ | ^ :67:1: note: expanded from here 67 | ____maximal_init_task | ^ maximal.bpf.c:92:14: warning: declaration of 'struct scx_exit_task_args' will not be visible outside of this function [-Wvisibility] 92 | struct scx_exit_task_args *args) | ^ maximal.bpf.c:92:14: warning: declaration of 'struct scx_exit_task_args' will not be visible outside of this function [-Wvisibility] maximal.bpf.c:91:6: error: conflicting types for '____maximal_exit_task' 91 | void BPF_STRUCT_OPS(maximal_exit_task, struct task_struct *p, | ^ /home/nipa/net-next/wt-1/tools/sched_ext/include/scx/common.bpf.h:140:32: note: expanded from macro 'BPF_STRUCT_OPS' 140 | SEC("struct_ops/"#name) \ | ^ /home/nipa/net-next/wt-1/build_tools/kselftest/sched_ext/build/include/bpf/bpf_tracing.h:683:48: note: expanded from macro '\ BPF_PROG' 683 | static __always_inline typeof(name(0)) \ | ^ :110:1: note: expanded from here 110 | ____maximal_exit_task | ^ maximal.bpf.c:91:6: note: previous declaration is here /home/nipa/net-next/wt-1/tools/sched_ext/include/scx/common.bpf.h:140:32: note: expanded from macro 'BPF_STRUCT_OPS' 140 | SEC("struct_ops/"#name) \ | ^ /home/nipa/net-next/wt-1/build_tools/kselftest/sched_ext/build/include/bpf/bpf_tracing.h:674:48: note: expanded from macro '\ BPF_PROG' 674 | static __always_inline typeof(name(0)) \ | ^ :101:1: note: expanded from here 101 | ____maximal_exit_task | ^ maximal.bpf.c:99:13: warning: declaration of 'struct scx_cgroup_init_args' will not be visible outside of this function [-Wvisibility] 99 | struct scx_cgroup_init_args *args) | ^ maximal.bpf.c:99:13: warning: declaration of 'struct scx_cgroup_init_args' will not be visible outside of this function [-Wvisibility] maximal.bpf.c:98:5: error: conflicting types for '____maximal_cgroup_init' 98 | s32 BPF_STRUCT_OPS(maximal_cgroup_init, struct cgroup *cgrp, | ^ /home/nipa/net-next/wt-1/tools/sched_ext/include/scx/common.bpf.h:140:32: note: expanded from macro 'BPF_STRUCT_OPS' 140 | SEC("struct_ops/"#name) \ | ^ /home/nipa/net-next/wt-1/build_tools/kselftest/sched_ext/build/include/bpf/bpf_tracing.h:683:48: note: expanded from macro '\ BPF_PROG' 683 | static __always_inline typeof(name(0)) \ | ^ :144:1: note: expanded from here 144 | ____maximal_cgroup_init | ^ maximal.bpf.c:98:5: note: previous declaration is here /home/nipa/net-next/wt-1/tools/sched_ext/include/scx/common.bpf.h:140:32: note: expanded from macro 'BPF_STRUCT_OPS' 140 | SEC("struct_ops/"#name) \ | ^ /home/nipa/net-next/wt-1/build_tools/kselftest/sched_ext/build/include/bpf/bpf_tracing.h:674:48: note: expanded from macro '\ BPF_PROG' 674 | static __always_inline typeof(name(0)) \ | ^ :135:1: note: expanded from here 135 | ____maximal_cgroup_init | ^ maximal.bpf.c:129:42: warning: declaration of 'struct scx_exit_info' will not be visible outside of this function [-Wvisibility] 129 | void BPF_STRUCT_OPS(maximal_exit, struct scx_exit_info *info) | ^ maximal.bpf.c:129:42: warning: declaration of 'struct scx_exit_info' will not be visible outside of this function [-Wvisibility] maximal.bpf.c:129:6: error: conflicting types for '____maximal_exit' 129 | void BPF_STRUCT_OPS(maximal_exit, struct scx_exit_info *info) | ^ /home/nipa/net-next/wt-1/tools/sched_ext/include/scx/common.bpf.h:140:32: note: expanded from macro 'BPF_STRUCT_OPS' 140 | SEC("struct_ops/"#name) \ | ^ /home/nipa/net-next/wt-1/build_tools/kselftest/sched_ext/build/include/bpf/bpf_tracing.h:683:48: note: expanded from macro '\ BPF_PROG' 683 | static __always_inline typeof(name(0)) \ | ^ :35:1: note: expanded from here 35 | ____maximal_exit | ^ maximal.bpf.c:129:6: note: previous declaration is here /home/nipa/net-next/wt-1/tools/sched_ext/include/scx/common.bpf.h:140:32: note: expanded from macro 'BPF_STRUCT_OPS' 140 | SEC("struct_ops/"#name) \ | ^ /home/nipa/net-next/wt-1/build_tools/kselftest/sched_ext/build/include/bpf/bpf_tracing.h:674:48: note: expanded from macro '\ BPF_PROG' 674 | static __always_inline typeof(name(0)) \ | ^ :26:1: note: expanded from here 26 | ____maximal_exit | ^ maximal.bpf.c:133:22: error: variable has incomplete type 'struct sched_ext_ops' 133 | struct sched_ext_ops maximal_ops = { | ^ maximal.bpf.c:133:8: note: forward declaration of 'struct sched_ext_ops' 133 | struct sched_ext_ops maximal_ops = { | ^ 19 warnings and 11 errors generated. make[1]: *** [Makefile:136: /home/nipa/net-next/wt-1/build_tools/kselftest/sched_ext/build/obj/sched_ext/maximal.bpf.o] Error 1 In file included from minimal.bpf.c:14: /home/nipa/net-next/wt-1/tools/sched_ext/include/scx/common.bpf.h:33:17: error: use of undeclared identifier 'SCX_DSQ_FLAG_BUILTIN' 33 | _Static_assert(SCX_DSQ_FLAG_BUILTIN, | ^ /home/nipa/net-next/wt-1/tools/sched_ext/include/scx/common.bpf.h:44:49: warning: declaration of 'struct bpf_iter_scx_dsq' will not be visible outside of this function [-Wvisibility] 44 | void scx_bpf_dispatch_from_dsq_set_slice(struct bpf_iter_scx_dsq *it__iter, u64 slice) __ksym __weak; | ^ /home/nipa/net-next/wt-1/tools/sched_ext/include/scx/common.bpf.h:45:49: warning: declaration of 'struct bpf_iter_scx_dsq' will not be visible outside of this function [-Wvisibility] 45 | void scx_bpf_dispatch_from_dsq_set_vtime(struct bpf_iter_scx_dsq *it__iter, u64 vtime) __ksym __weak; | ^ /home/nipa/net-next/wt-1/tools/sched_ext/include/scx/common.bpf.h:46:39: warning: declaration of 'struct bpf_iter_scx_dsq' will not be visible outside of this function [-Wvisibility] 46 | bool scx_bpf_dispatch_from_dsq(struct bpf_iter_scx_dsq *it__iter, struct task_struct *p, u64 dsq_id, u64 enq_flags) __ksym __weak; | ^ /home/nipa/net-next/wt-1/tools/sched_ext/include/scx/common.bpf.h:47:45: warning: declaration of 'struct bpf_iter_scx_dsq' will not be visible outside of this function [-Wvisibility] 47 | bool scx_bpf_dispatch_vtime_from_dsq(struct bpf_iter_scx_dsq *it__iter, struct task_struct *p, u64 dsq_id, u64 enq_flags) __ksym __weak; | ^ /home/nipa/net-next/wt-1/tools/sched_ext/include/scx/common.bpf.h:52:33: warning: declaration of 'struct bpf_iter_scx_dsq' will not be visible outside of this function [-Wvisibility] 52 | int bpf_iter_scx_dsq_new(struct bpf_iter_scx_dsq *it, u64 dsq_id, u64 flags) __ksym __weak; | ^ /home/nipa/net-next/wt-1/tools/sched_ext/include/scx/common.bpf.h:53:50: warning: declaration of 'struct bpf_iter_scx_dsq' will not be visible outside of this function [-Wvisibility] 53 | struct task_struct *bpf_iter_scx_dsq_next(struct bpf_iter_scx_dsq *it) __ksym __weak; | ^ /home/nipa/net-next/wt-1/tools/sched_ext/include/scx/common.bpf.h:54:38: warning: declaration of 'struct bpf_iter_scx_dsq' will not be visible outside of this function [-Wvisibility] 54 | void bpf_iter_scx_dsq_destroy(struct bpf_iter_scx_dsq *it) __ksym __weak; | ^ minimal.bpf.c:19:22: error: variable has incomplete type 'struct sched_ext_ops' 19 | struct sched_ext_ops minimal_ops = { | ^ minimal.bpf.c:19:8: note: forward declaration of 'struct sched_ext_ops' 19 | struct sched_ext_ops minimal_ops = { | ^ 7 warnings and 2 errors generated. make[1]: *** [Makefile:136: /home/nipa/net-next/wt-1/build_tools/kselftest/sched_ext/build/obj/sched_ext/minimal.bpf.o] Error 1 In file included from maybe_null.bpf.c:6: /home/nipa/net-next/wt-1/tools/sched_ext/include/scx/common.bpf.h:33:17: error: use of undeclared identifier 'SCX_DSQ_FLAG_BUILTIN' 33 | _Static_assert(SCX_DSQ_FLAG_BUILTIN, | ^ /home/nipa/net-next/wt-1/tools/sched_ext/include/scx/common.bpf.h:44:49: warning: declaration of 'struct bpf_iter_scx_dsq' will not be visible outside of this function [-Wvisibility] 44 | void scx_bpf_dispatch_from_dsq_set_slice(struct bpf_iter_scx_dsq *it__iter, u64 slice) __ksym __weak; | ^ /home/nipa/net-next/wt-1/tools/sched_ext/include/scx/common.bpf.h:45:49: warning: declaration of 'struct bpf_iter_scx_dsq' will not be visible outside of this function [-Wvisibility] 45 | void scx_bpf_dispatch_from_dsq_set_vtime(struct bpf_iter_scx_dsq *it__iter, u64 vtime) __ksym __weak; | ^ /home/nipa/net-next/wt-1/tools/sched_ext/include/scx/common.bpf.h:46:39: warning: declaration of 'struct bpf_iter_scx_dsq' will not be visible outside of this function [-Wvisibility] 46 | bool scx_bpf_dispatch_from_dsq(struct bpf_iter_scx_dsq *it__iter, struct task_struct *p, u64 dsq_id, u64 enq_flags) __ksym __weak; | ^ /home/nipa/net-next/wt-1/tools/sched_ext/include/scx/common.bpf.h:47:45: warning: declaration of 'struct bpf_iter_scx_dsq' will not be visible outside of this function [-Wvisibility] 47 | bool scx_bpf_dispatch_vtime_from_dsq(struct bpf_iter_scx_dsq *it__iter, struct task_struct *p, u64 dsq_id, u64 enq_flags) __ksym __weak; | ^ /home/nipa/net-next/wt-1/tools/sched_ext/include/scx/common.bpf.h:52:33: warning: declaration of 'struct bpf_iter_scx_dsq' will not be visible outside of this function [-Wvisibility] 52 | int bpf_iter_scx_dsq_new(struct bpf_iter_scx_dsq *it, u64 dsq_id, u64 flags) __ksym __weak; | ^ /home/nipa/net-next/wt-1/tools/sched_ext/include/scx/common.bpf.h:53:50: warning: declaration of 'struct bpf_iter_scx_dsq' will not be visible outside of this function [-Wvisibility] 53 | struct task_struct *bpf_iter_scx_dsq_next(struct bpf_iter_scx_dsq *it) __ksym __weak; | ^ /home/nipa/net-next/wt-1/tools/sched_ext/include/scx/common.bpf.h:54:38: warning: declaration of 'struct bpf_iter_scx_dsq' will not be visible outside of this function [-Wvisibility] 54 | void bpf_iter_scx_dsq_destroy(struct bpf_iter_scx_dsq *it) __ksym __weak; | ^ maybe_null.bpf.c:18:19: error: no member named 'scx' in 'struct task_struct' 18 | vtime_test = p->scx.dsq_vtime; | ~ ^ maybe_null.bpf.c:31:22: error: variable has incomplete type 'struct sched_ext_ops' 31 | struct sched_ext_ops maybe_null_success = { | ^ maybe_null.bpf.c:31:8: note: forward declaration of 'struct sched_ext_ops' 31 | struct sched_ext_ops maybe_null_success = { | ^ 7 warnings and 3 errors generated. make[1]: *** [Makefile:136: /home/nipa/net-next/wt-1/build_tools/kselftest/sched_ext/build/obj/sched_ext/maybe_null.bpf.o] Error 1 In file included from exit.bpf.c:7: /home/nipa/net-next/wt-1/tools/sched_ext/include/scx/common.bpf.h:33:17: error: use of undeclared identifier 'SCX_DSQ_FLAG_BUILTIN' 33 | _Static_assert(SCX_DSQ_FLAG_BUILTIN, | ^ /home/nipa/net-next/wt-1/tools/sched_ext/include/scx/common.bpf.h:44:49: warning: declaration of 'struct bpf_iter_scx_dsq' will not be visible outside of this function [-Wvisibility] 44 | void scx_bpf_dispatch_from_dsq_set_slice(struct bpf_iter_scx_dsq *it__iter, u64 slice) __ksym __weak; | ^ /home/nipa/net-next/wt-1/tools/sched_ext/include/scx/common.bpf.h:45:49: warning: declaration of 'struct bpf_iter_scx_dsq' will not be visible outside of this function [-Wvisibility] 45 | void scx_bpf_dispatch_from_dsq_set_vtime(struct bpf_iter_scx_dsq *it__iter, u64 vtime) __ksym __weak; | ^ /home/nipa/net-next/wt-1/tools/sched_ext/include/scx/common.bpf.h:46:39: warning: declaration of 'struct bpf_iter_scx_dsq' will not be visible outside of this function [-Wvisibility] 46 | bool scx_bpf_dispatch_from_dsq(struct bpf_iter_scx_dsq *it__iter, struct task_struct *p, u64 dsq_id, u64 enq_flags) __ksym __weak; | ^ /home/nipa/net-next/wt-1/tools/sched_ext/include/scx/common.bpf.h:47:45: warning: declaration of 'struct bpf_iter_scx_dsq' will not be visible outside of this function [-Wvisibility] 47 | bool scx_bpf_dispatch_vtime_from_dsq(struct bpf_iter_scx_dsq *it__iter, struct task_struct *p, u64 dsq_id, u64 enq_flags) __ksym __weak; | ^ /home/nipa/net-next/wt-1/tools/sched_ext/include/scx/common.bpf.h:52:33: warning: declaration of 'struct bpf_iter_scx_dsq' will not be visible outside of this function [-Wvisibility] 52 | int bpf_iter_scx_dsq_new(struct bpf_iter_scx_dsq *it, u64 dsq_id, u64 flags) __ksym __weak; | ^ /home/nipa/net-next/wt-1/tools/sched_ext/include/scx/common.bpf.h:53:50: warning: declaration of 'struct bpf_iter_scx_dsq' will not be visible outside of this function [-Wvisibility] 53 | struct task_struct *bpf_iter_scx_dsq_next(struct bpf_iter_scx_dsq *it) __ksym __weak; | ^ /home/nipa/net-next/wt-1/tools/sched_ext/include/scx/common.bpf.h:54:38: warning: declaration of 'struct bpf_iter_scx_dsq' will not be visible outside of this function [-Wvisibility] 54 | void bpf_iter_scx_dsq_destroy(struct bpf_iter_scx_dsq *it) __ksym __weak; | ^ exit.bpf.c:34:22: error: use of undeclared identifier 'SCX_DSQ_GLOBAL' 34 | scx_bpf_dispatch(p, SCX_DSQ_GLOBAL, SCX_SLICE_DFL, enq_flags); | ^ exit.bpf.c:34:38: error: use of undeclared identifier 'SCX_SLICE_DFL' 34 | scx_bpf_dispatch(p, SCX_DSQ_GLOBAL, SCX_SLICE_DFL, enq_flags); | ^ exit.bpf.c:42:18: error: use of undeclared identifier 'SCX_DSQ_GLOBAL' 42 | scx_bpf_consume(SCX_DSQ_GLOBAL); | ^ exit.bpf.c:52:14: warning: declaration of 'struct scx_init_task_args' will not be visible outside of this function [-Wvisibility] 52 | struct scx_init_task_args *args) | ^ exit.bpf.c:52:14: warning: declaration of 'struct scx_init_task_args' will not be visible outside of this function [-Wvisibility] exit.bpf.c:51:5: error: conflicting types for '____exit_init_task' 51 | s32 BPF_STRUCT_OPS(exit_init_task, struct task_struct *p, | ^ /home/nipa/net-next/wt-1/tools/sched_ext/include/scx/common.bpf.h:140:32: note: expanded from macro 'BPF_STRUCT_OPS' 140 | SEC("struct_ops/"#name) \ | ^ /home/nipa/net-next/wt-1/build_tools/kselftest/sched_ext/build/include/bpf/bpf_tracing.h:683:48: note: expanded from macro '\ BPF_PROG' 683 | static __always_inline typeof(name(0)) \ | ^ :136:1: note: expanded from here 136 | ____exit_init_task | ^ exit.bpf.c:51:5: note: previous declaration is here /home/nipa/net-next/wt-1/tools/sched_ext/include/scx/common.bpf.h:140:32: note: expanded from macro 'BPF_STRUCT_OPS' 140 | SEC("struct_ops/"#name) \ | ^ /home/nipa/net-next/wt-1/build_tools/kselftest/sched_ext/build/include/bpf/bpf_tracing.h:674:48: note: expanded from macro '\ BPF_PROG' 674 | static __always_inline typeof(name(0)) \ | ^ :127:1: note: expanded from here 127 | ____exit_init_task | ^ exit.bpf.c:60:39: warning: declaration of 'struct scx_exit_info' will not be visible outside of this function [-Wvisibility] 60 | void BPF_STRUCT_OPS(exit_exit, struct scx_exit_info *ei) | ^ exit.bpf.c:60:39: warning: declaration of 'struct scx_exit_info' will not be visible outside of this function [-Wvisibility] exit.bpf.c:60:6: error: conflicting types for '____exit_exit' 60 | void BPF_STRUCT_OPS(exit_exit, struct scx_exit_info *ei) | ^ /home/nipa/net-next/wt-1/tools/sched_ext/include/scx/common.bpf.h:140:32: note: expanded from macro 'BPF_STRUCT_OPS' 140 | SEC("struct_ops/"#name) \ | ^ /home/nipa/net-next/wt-1/build_tools/kselftest/sched_ext/build/include/bpf/bpf_tracing.h:683:48: note: expanded from macro '\ BPF_PROG' 683 | static __always_inline typeof(name(0)) \ | ^ :160:1: note: expanded from here 160 | ____exit_exit | ^ exit.bpf.c:60:6: note: previous declaration is here /home/nipa/net-next/wt-1/tools/sched_ext/include/scx/common.bpf.h:140:32: note: expanded from macro 'BPF_STRUCT_OPS' 140 | SEC("struct_ops/"#name) \ | ^ /home/nipa/net-next/wt-1/build_tools/kselftest/sched_ext/build/include/bpf/bpf_tracing.h:674:48: note: expanded from macro '\ BPF_PROG' 674 | static __always_inline typeof(name(0)) \ | ^ :151:1: note: expanded from here 151 | ____exit_exit | ^ exit.bpf.c:62:2: error: incomplete definition of type 'struct scx_exit_info' 62 | UEI_RECORD(uei, ei); | ^~~~~~~~~~~~~~~~~~~ /home/nipa/net-next/wt-1/tools/sched_ext/include/scx/user_exit_info.h:42:40: note: expanded from macro 'UEI_RECORD' 42 | sizeof(__uei_name.reason), (__ei)->reason); \ | ~~~~~~^ exit.bpf.c:60:39: note: forward declaration of 'struct scx_exit_info' 60 | void BPF_STRUCT_OPS(exit_exit, struct scx_exit_info *ei) | ^ exit.bpf.c:62:2: error: incomplete definition of type 'struct scx_exit_info' 62 | UEI_RECORD(uei, ei); | ^~~~~~~~~~~~~~~~~~~ /home/nipa/net-next/wt-1/tools/sched_ext/include/scx/user_exit_info.h:44:37: note: expanded from macro 'UEI_RECORD' 44 | sizeof(__uei_name.msg), (__ei)->msg); \ | ~~~~~~^ exit.bpf.c:60:39: note: forward declaration of 'struct scx_exit_info' 60 | void BPF_STRUCT_OPS(exit_exit, struct scx_exit_info *ei) | ^ exit.bpf.c:62:2: error: incomplete definition of type 'struct scx_exit_info' 62 | UEI_RECORD(uei, ei); | ^~~~~~~~~~~~~~~~~~~ /home/nipa/net-next/wt-1/tools/sched_ext/include/scx/user_exit_info.h:46:36: note: expanded from macro 'UEI_RECORD' 46 | __uei_name##_dump_len, (__ei)->dump); \ | ~~~~~~^ exit.bpf.c:60:39: note: forward declaration of 'struct scx_exit_info' 60 | void BPF_STRUCT_OPS(exit_exit, struct scx_exit_info *ei) | ^ exit.bpf.c:62:2: error: incomplete definition of type 'struct scx_exit_info' 62 | UEI_RECORD(uei, ei); | ^~~~~~~~~~~~~~~~~~~ /home/nipa/net-next/wt-1/tools/sched_ext/include/scx/user_exit_info.h:47:34: note: expanded from macro 'UEI_RECORD' 47 | if (bpf_core_field_exists((__ei)->exit_code)) \ | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~ /home/nipa/net-next/wt-1/build_tools/kselftest/sched_ext/build/include/bpf/bpf_core_read.h:188:49: note: expanded from macro 'bpf_core_field_exists' 188 | __builtin_preserve_field_info(___bpf_field_ref(field), BPF_FIELD_EXISTS) | ~~~~~~~~~~~~~~~~~^~~~~~ /home/nipa/net-next/wt-1/build_tools/kselftest/sched_ext/build/include/bpf/bpf_core_read.h:173:52: note: expanded from macro '___bpf_field_ref' 173 | ___bpf_apply(___bpf_field_ref, ___bpf_narg(args))(args) | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~ /home/nipa/net-next/wt-1/build_tools/kselftest/sched_ext/build/include/bpf/bpf_core_read.h:166:35: note: expanded from macro '___bpf_field_ref1' 166 | #define ___bpf_field_ref1(field) (field) | ^~~~~ exit.bpf.c:60:39: note: forward declaration of 'struct scx_exit_info' 60 | void BPF_STRUCT_OPS(exit_exit, struct scx_exit_info *ei) | ^ exit.bpf.c:62:2: error: incomplete definition of type 'struct scx_exit_info' 62 | UEI_RECORD(uei, ei); | ^~~~~~~~~~~~~~~~~~~ /home/nipa/net-next/wt-1/tools/sched_ext/include/scx/user_exit_info.h:48:32: note: expanded from macro 'UEI_RECORD' 48 | __uei_name.exit_code = (__ei)->exit_code; \ | ~~~~~~^ exit.bpf.c:60:39: note: forward declaration of 'struct scx_exit_info' 60 | void BPF_STRUCT_OPS(exit_exit, struct scx_exit_info *ei) | ^ exit.bpf.c:62:2: error: incomplete definition of type 'struct scx_exit_info' 62 | UEI_RECORD(uei, ei); | ^~~~~~~~~~~~~~~~~~~ /home/nipa/net-next/wt-1/tools/sched_ext/include/scx/user_exit_info.h:51:15: note: expanded from macro 'UEI_RECORD' 51 | (__ei)->kind); \ | ~~~~~~^ exit.bpf.c:60:39: note: forward declaration of 'struct scx_exit_info' 60 | void BPF_STRUCT_OPS(exit_exit, struct scx_exit_info *ei) | ^ exit.bpf.c:74:22: error: variable has incomplete type 'struct sched_ext_ops' 74 | struct sched_ext_ops exit_ops = { | ^ exit.bpf.c:74:8: note: forward declaration of 'struct sched_ext_ops' 74 | struct sched_ext_ops exit_ops = { | ^ 11 warnings and 13 errors generated. make[1]: *** [Makefile:136: /home/nipa/net-next/wt-1/build_tools/kselftest/sched_ext/build/obj/sched_ext/exit.bpf.o] Error 1 ====== Checking if tree is clean ====== ?? tools/testing/selftests/net/packetdrill/tcp_inq.py ====== Building the tree with the patch ====== make[1]: Circular /home/nipa/net-next/wt-1/build_tools/kselftest/alsa/global-timer <- /home/nipa/net-next/wt-1/build_tools/kselftest/alsa/global-timer dependency dropped. In file included from create_dsq.bpf.c:9: /home/nipa/net-next/wt-1/tools/sched_ext/include/scx/common.bpf.h:33:17: error: use of undeclared identifier 'SCX_DSQ_FLAG_BUILTIN' 33 | _Static_assert(SCX_DSQ_FLAG_BUILTIN, | ^ /home/nipa/net-next/wt-1/tools/sched_ext/include/scx/common.bpf.h:44:49: warning: declaration of 'struct bpf_iter_scx_dsq' will not be visible outside of this function [-Wvisibility] 44 | void scx_bpf_dispatch_from_dsq_set_slice(struct bpf_iter_scx_dsq *it__iter, u64 slice) __ksym __weak; | ^ /home/nipa/net-next/wt-1/tools/sched_ext/include/scx/common.bpf.h:45:49: warning: declaration of 'struct bpf_iter_scx_dsq' will not be visible outside of this function [-Wvisibility] 45 | void scx_bpf_dispatch_from_dsq_set_vtime(struct bpf_iter_scx_dsq *it__iter, u64 vtime) __ksym __weak; | ^ /home/nipa/net-next/wt-1/tools/sched_ext/include/scx/common.bpf.h:46:39: warning: declaration of 'struct bpf_iter_scx_dsq' will not be visible outside of this function [-Wvisibility] 46 | bool scx_bpf_dispatch_from_dsq(struct bpf_iter_scx_dsq *it__iter, struct task_struct *p, u64 dsq_id, u64 enq_flags) __ksym __weak; | ^ /home/nipa/net-next/wt-1/tools/sched_ext/include/scx/common.bpf.h:47:45: warning: declaration of 'struct bpf_iter_scx_dsq' will not be visible outside of this function [-Wvisibility] 47 | bool scx_bpf_dispatch_vtime_from_dsq(struct bpf_iter_scx_dsq *it__iter, struct task_struct *p, u64 dsq_id, u64 enq_flags) __ksym __weak; | ^ /home/nipa/net-next/wt-1/tools/sched_ext/include/scx/common.bpf.h:52:33: warning: declaration of 'struct bpf_iter_scx_dsq' will not be visible outside of this function [-Wvisibility] 52 | int bpf_iter_scx_dsq_new(struct bpf_iter_scx_dsq *it, u64 dsq_id, u64 flags) __ksym __weak; | ^ /home/nipa/net-next/wt-1/tools/sched_ext/include/scx/common.bpf.h:53:50: warning: declaration of 'struct bpf_iter_scx_dsq' will not be visible outside of this function [-Wvisibility] 53 | struct task_struct *bpf_iter_scx_dsq_next(struct bpf_iter_scx_dsq *it) __ksym __weak; | ^ /home/nipa/net-next/wt-1/tools/sched_ext/include/scx/common.bpf.h:54:38: warning: declaration of 'struct bpf_iter_scx_dsq' will not be visible outside of this function [-Wvisibility] 54 | void bpf_iter_scx_dsq_destroy(struct bpf_iter_scx_dsq *it) __ksym __weak; | ^ create_dsq.bpf.c:14:14: warning: declaration of 'struct scx_exit_task_args' will not be visible outside of this function [-Wvisibility] 14 | struct scx_exit_task_args *args) | ^ create_dsq.bpf.c:14:14: warning: declaration of 'struct scx_exit_task_args' will not be visible outside of this function [-Wvisibility] create_dsq.bpf.c:13:6: error: conflicting types for '____create_dsq_exit_task' 13 | void BPF_STRUCT_OPS(create_dsq_exit_task, struct task_struct *p, | ^ /home/nipa/net-next/wt-1/tools/sched_ext/include/scx/common.bpf.h:140:32: note: expanded from macro 'BPF_STRUCT_OPS' 140 | SEC("struct_ops/"#name) \ | ^ /home/nipa/net-next/wt-1/build_tools/kselftest/sched_ext/build/include/bpf/bpf_tracing.h:683:48: note: expanded from macro '\ BPF_PROG' 683 | static __always_inline typeof(name(0)) \ | ^ :24:1: note: expanded from here 24 | ____create_dsq_exit_task | ^ create_dsq.bpf.c:13:6: note: previous declaration is here /home/nipa/net-next/wt-1/tools/sched_ext/include/scx/common.bpf.h:140:32: note: expanded from macro 'BPF_STRUCT_OPS' 140 | SEC("struct_ops/"#name) \ | ^ /home/nipa/net-next/wt-1/build_tools/kselftest/sched_ext/build/include/bpf/bpf_tracing.h:674:48: note: expanded from macro '\ BPF_PROG' 674 | static __always_inline typeof(name(0)) \ | ^ :15:1: note: expanded from here 15 | ____create_dsq_exit_task | ^ create_dsq.bpf.c:20:16: warning: declaration of 'struct scx_init_task_args' will not be visible outside of this function [-Wvisibility] 20 | struct scx_init_task_args *args) | ^ create_dsq.bpf.c:20:16: warning: declaration of 'struct scx_init_task_args' will not be visible outside of this function [-Wvisibility] create_dsq.bpf.c:19:5: error: conflicting types for '____create_dsq_init_task' 19 | s32 BPF_STRUCT_OPS_SLEEPABLE(create_dsq_init_task, struct task_struct *p, | ^ /home/nipa/net-next/wt-1/tools/sched_ext/include/scx/common.bpf.h:144:33: note: expanded from macro 'BPF_STRUCT_OPS_SLEEPABLE' 144 | SEC("struct_ops.s/"#name) \ | ^ /home/nipa/net-next/wt-1/build_tools/kselftest/sched_ext/build/include/bpf/bpf_tracing.h:683:48: note: expanded from macro '\ BPF_PROG' 683 | static __always_inline typeof(name(0)) \ | ^ :41:1: note: expanded from here 41 | ____create_dsq_init_task | ^ create_dsq.bpf.c:19:5: note: previous declaration is here /home/nipa/net-next/wt-1/tools/sched_ext/include/scx/common.bpf.h:144:33: note: expanded from macro 'BPF_STRUCT_OPS_SLEEPABLE' 144 | SEC("struct_ops.s/"#name) \ | ^ /home/nipa/net-next/wt-1/build_tools/kselftest/sched_ext/build/include/bpf/bpf_tracing.h:674:48: note: expanded from macro '\ BPF_PROG' 674 | static __always_inline typeof(name(0)) \ | ^ :32:1: note: expanded from here 32 | ____create_dsq_init_task | ^ create_dsq.bpf.c:53:22: error: variable has incomplete type 'struct sched_ext_ops' 53 | struct sched_ext_ops create_dsq_ops = { | ^ create_dsq.bpf.c:53:8: note: forward declaration of 'struct sched_ext_ops' 53 | struct sched_ext_ops create_dsq_ops = { | ^ 11 warnings and 4 errors generated. make[1]: *** [Makefile:136: /home/nipa/net-next/wt-1/build_tools/kselftest/sched_ext/build/obj/sched_ext/create_dsq.bpf.o] Error 1 make[1]: *** Waiting for unfinished jobs.... In file included from ddsp_bogus_dsq_fail.bpf.c:7: /home/nipa/net-next/wt-1/tools/sched_ext/include/scx/common.bpf.h:33:17: error: use of undeclared identifier 'SCX_DSQ_FLAG_BUILTIN' 33 | _Static_assert(SCX_DSQ_FLAG_BUILTIN, | ^ /home/nipa/net-next/wt-1/tools/sched_ext/include/scx/common.bpf.h:44:49: warning: declaration of 'struct bpf_iter_scx_dsq' will not be visible outside of this function [-Wvisibility] 44 | void scx_bpf_dispatch_from_dsq_set_slice(struct bpf_iter_scx_dsq *it__iter, u64 slice) __ksym __weak; | ^ /home/nipa/net-next/wt-1/tools/sched_ext/include/scx/common.bpf.h:45:49: warning: declaration of 'struct bpf_iter_scx_dsq' will not be visible outside of this function [-Wvisibility] 45 | void scx_bpf_dispatch_from_dsq_set_vtime(struct bpf_iter_scx_dsq *it__iter, u64 vtime) __ksym __weak; | ^ /home/nipa/net-next/wt-1/tools/sched_ext/include/scx/common.bpf.h:46:39: warning: declaration of 'struct bpf_iter_scx_dsq' will not be visible outside of this function [-Wvisibility] 46 | bool scx_bpf_dispatch_from_dsq(struct bpf_iter_scx_dsq *it__iter, struct task_struct *p, u64 dsq_id, u64 enq_flags) __ksym __weak; | ^ /home/nipa/net-next/wt-1/tools/sched_ext/include/scx/common.bpf.h:47:45: warning: declaration of 'struct bpf_iter_scx_dsq' will not be visible outside of this function [-Wvisibility] 47 | bool scx_bpf_dispatch_vtime_from_dsq(struct bpf_iter_scx_dsq *it__iter, struct task_struct *p, u64 dsq_id, u64 enq_flags) __ksym __weak; | ^ /home/nipa/net-next/wt-1/tools/sched_ext/include/scx/common.bpf.h:52:33: warning: declaration of 'struct bpf_iter_scx_dsq' will not be visible outside of this function [-Wvisibility] 52 | int bpf_iter_scx_dsq_new(struct bpf_iter_scx_dsq *it, u64 dsq_id, u64 flags) __ksym __weak; | ^ /home/nipa/net-next/wt-1/tools/sched_ext/include/scx/common.bpf.h:53:50: warning: declaration of 'struct bpf_iter_scx_dsq' will not be visible outside of this function [-Wvisibility] 53 | struct task_struct *bpf_iter_scx_dsq_next(struct bpf_iter_scx_dsq *it) __ksym __weak; | ^ /home/nipa/net-next/wt-1/tools/sched_ext/include/scx/common.bpf.h:54:38: warning: declaration of 'struct bpf_iter_scx_dsq' will not be visible outside of this function [-Wvisibility] 54 | void bpf_iter_scx_dsq_destroy(struct bpf_iter_scx_dsq *it) __ksym __weak; | ^ ddsp_bogus_dsq_fail.bpf.c:24:15: error: no member named 'scx' in 'struct task_struct' 24 | p->scx.dsq_vtime, 0); | ~ ^ ddsp_bogus_dsq_fail.bpf.c:23:41: error: use of undeclared identifier 'SCX_SLICE_DFL' 23 | scx_bpf_dispatch_vtime(p, 0xcafef00d, SCX_SLICE_DFL, | ^ ddsp_bogus_dsq_fail.bpf.c:31:54: warning: declaration of 'struct scx_exit_info' will not be visible outside of this function [-Wvisibility] 31 | void BPF_STRUCT_OPS(ddsp_bogus_dsq_fail_exit, struct scx_exit_info *ei) | ^ ddsp_bogus_dsq_fail.bpf.c:31:54: warning: declaration of 'struct scx_exit_info' will not be visible outside of this function [-Wvisibility] ddsp_bogus_dsq_fail.bpf.c:31:6: error: conflicting types for '____ddsp_bogus_dsq_fail_exit' 31 | void BPF_STRUCT_OPS(ddsp_bogus_dsq_fail_exit, struct scx_exit_info *ei) | ^ /home/nipa/net-next/wt-1/tools/sched_ext/include/scx/common.bpf.h:140:32: note: expanded from macro 'BPF_STRUCT_OPS' 140 | SEC("struct_ops/"#name) \ | ^ /home/nipa/net-next/wt-1/build_tools/kselftest/sched_ext/build/include/bpf/bpf_tracing.h:683:48: note: expanded from macro '\ BPF_PROG' 683 | static __always_inline typeof(name(0)) \ | ^ :57:1: note: expanded from here 57 | ____ddsp_bogus_dsq_fail_exit | ^ ddsp_bogus_dsq_fail.bpf.c:31:6: note: previous declaration is here /home/nipa/net-next/wt-1/tools/sched_ext/include/scx/common.bpf.h:140:32: note: expanded from macro 'BPF_STRUCT_OPS' 140 | SEC("struct_ops/"#name) \ | ^ /home/nipa/net-next/wt-1/build_tools/kselftest/sched_ext/build/include/bpf/bpf_tracing.h:674:48: note: expanded from macro '\ BPF_PROG' 674 | static __always_inline typeof(name(0)) \ | ^ :48:1: note: expanded from here 48 | ____ddsp_bogus_dsq_fail_exit | ^ ddsp_bogus_dsq_fail.bpf.c:33:2: error: incomplete definition of type 'struct scx_exit_info' 33 | UEI_RECORD(uei, ei); | ^~~~~~~~~~~~~~~~~~~ /home/nipa/net-next/wt-1/tools/sched_ext/include/scx/user_exit_info.h:42:40: note: expanded from macro 'UEI_RECORD' 42 | sizeof(__uei_name.reason), (__ei)->reason); \ | ~~~~~~^ ddsp_bogus_dsq_fail.bpf.c:31:54: note: forward declaration of 'struct scx_exit_info' 31 | void BPF_STRUCT_OPS(ddsp_bogus_dsq_fail_exit, struct scx_exit_info *ei) | ^ ddsp_bogus_dsq_fail.bpf.c:33:2: error: incomplete definition of type 'struct scx_exit_info' 33 | UEI_RECORD(uei, ei); | ^~~~~~~~~~~~~~~~~~~ /home/nipa/net-next/wt-1/tools/sched_ext/include/scx/user_exit_info.h:44:37: note: expanded from macro 'UEI_RECORD' 44 | sizeof(__uei_name.msg), (__ei)->msg); \ | ~~~~~~^ ddsp_bogus_dsq_fail.bpf.c:31:54: note: forward declaration of 'struct scx_exit_info' 31 | void BPF_STRUCT_OPS(ddsp_bogus_dsq_fail_exit, struct scx_exit_info *ei) | ^ ddsp_bogus_dsq_fail.bpf.c:33:2: error: incomplete definition of type 'struct scx_exit_info' 33 | UEI_RECORD(uei, ei); | ^~~~~~~~~~~~~~~~~~~ /home/nipa/net-next/wt-1/tools/sched_ext/include/scx/user_exit_info.h:46:36: note: expanded from macro 'UEI_RECORD' 46 | __uei_name##_dump_len, (__ei)->dump); \ | ~~~~~~^ ddsp_bogus_dsq_fail.bpf.c:31:54: note: forward declaration of 'struct scx_exit_info' 31 | void BPF_STRUCT_OPS(ddsp_bogus_dsq_fail_exit, struct scx_exit_info *ei) | ^ ddsp_bogus_dsq_fail.bpf.c:33:2: error: incomplete definition of type 'struct scx_exit_info' 33 | UEI_RECORD(uei, ei); | ^~~~~~~~~~~~~~~~~~~ /home/nipa/net-next/wt-1/tools/sched_ext/include/scx/user_exit_info.h:47:34: note: expanded from macro 'UEI_RECORD' 47 | if (bpf_core_field_exists((__ei)->exit_code)) \ | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~ /home/nipa/net-next/wt-1/build_tools/kselftest/sched_ext/build/include/bpf/bpf_core_read.h:188:49: note: expanded from macro 'bpf_core_field_exists' 188 | __builtin_preserve_field_info(___bpf_field_ref(field), BPF_FIELD_EXISTS) | ~~~~~~~~~~~~~~~~~^~~~~~ /home/nipa/net-next/wt-1/build_tools/kselftest/sched_ext/build/include/bpf/bpf_core_read.h:173:52: note: expanded from macro '___bpf_field_ref' 173 | ___bpf_apply(___bpf_field_ref, ___bpf_narg(args))(args) | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~ /home/nipa/net-next/wt-1/build_tools/kselftest/sched_ext/build/include/bpf/bpf_core_read.h:166:35: note: expanded from macro '___bpf_field_ref1' 166 | #define ___bpf_field_ref1(field) (field) | ^~~~~ ddsp_bogus_dsq_fail.bpf.c:31:54: note: forward declaration of 'struct scx_exit_info' 31 | void BPF_STRUCT_OPS(ddsp_bogus_dsq_fail_exit, struct scx_exit_info *ei) | ^ ddsp_bogus_dsq_fail.bpf.c:33:2: error: incomplete definition of type 'struct scx_exit_info' 33 | UEI_RECORD(uei, ei); | ^~~~~~~~~~~~~~~~~~~ /home/nipa/net-next/wt-1/tools/sched_ext/include/scx/user_exit_info.h:48:32: note: expanded from macro 'UEI_RECORD' 48 | __uei_name.exit_code = (__ei)->exit_code; \ | ~~~~~~^ ddsp_bogus_dsq_fail.bpf.c:31:54: note: forward declaration of 'struct scx_exit_info' 31 | void BPF_STRUCT_OPS(ddsp_bogus_dsq_fail_exit, struct scx_exit_info *ei) | ^ ddsp_bogus_dsq_fail.bpf.c:33:2: error: incomplete definition of type 'struct scx_exit_info' 33 | UEI_RECORD(uei, ei); | ^~~~~~~~~~~~~~~~~~~ /home/nipa/net-next/wt-1/tools/sched_ext/include/scx/user_exit_info.h:51:15: note: expanded from macro 'UEI_RECORD' 51 | (__ei)->kind); \ | ~~~~~~^ ddsp_bogus_dsq_fail.bpf.c:31:54: note: forward declaration of 'struct scx_exit_info' 31 | void BPF_STRUCT_OPS(ddsp_bogus_dsq_fail_exit, struct scx_exit_info *ei) | ^ ddsp_bogus_dsq_fail.bpf.c:37:22: error: variable has incomplete type 'struct sched_ext_ops' 37 | struct sched_ext_ops ddsp_bogus_dsq_fail_ops = { | ^ ddsp_bogus_dsq_fail.bpf.c:37:8: note: forward declaration of 'struct sched_ext_ops' 37 | struct sched_ext_ops ddsp_bogus_dsq_fail_ops = { | ^ 9 warnings and 11 errors generated. make[1]: *** [Makefile:136: /home/nipa/net-next/wt-1/build_tools/kselftest/sched_ext/build/obj/sched_ext/ddsp_bogus_dsq_fail.bpf.o] Error 1 In file included from ddsp_vtimelocal_fail.bpf.c:7: /home/nipa/net-next/wt-1/tools/sched_ext/include/scx/common.bpf.h:33:17: error: use of undeclared identifier 'SCX_DSQ_FLAG_BUILTIN' 33 | _Static_assert(SCX_DSQ_FLAG_BUILTIN, | ^ /home/nipa/net-next/wt-1/tools/sched_ext/include/scx/common.bpf.h:44:49: warning: declaration of 'struct bpf_iter_scx_dsq' will not be visible outside of this function [-Wvisibility] 44 | void scx_bpf_dispatch_from_dsq_set_slice(struct bpf_iter_scx_dsq *it__iter, u64 slice) __ksym __weak; | ^ /home/nipa/net-next/wt-1/tools/sched_ext/include/scx/common.bpf.h:45:49: warning: declaration of 'struct bpf_iter_scx_dsq' will not be visible outside of this function [-Wvisibility] 45 | void scx_bpf_dispatch_from_dsq_set_vtime(struct bpf_iter_scx_dsq *it__iter, u64 vtime) __ksym __weak; | ^ /home/nipa/net-next/wt-1/tools/sched_ext/include/scx/common.bpf.h:46:39: warning: declaration of 'struct bpf_iter_scx_dsq' will not be visible outside of this function [-Wvisibility] 46 | bool scx_bpf_dispatch_from_dsq(struct bpf_iter_scx_dsq *it__iter, struct task_struct *p, u64 dsq_id, u64 enq_flags) __ksym __weak; | ^ /home/nipa/net-next/wt-1/tools/sched_ext/include/scx/common.bpf.h:47:45: warning: declaration of 'struct bpf_iter_scx_dsq' will not be visible outside of this function [-Wvisibility] 47 | bool scx_bpf_dispatch_vtime_from_dsq(struct bpf_iter_scx_dsq *it__iter, struct task_struct *p, u64 dsq_id, u64 enq_flags) __ksym __weak; | ^ /home/nipa/net-next/wt-1/tools/sched_ext/include/scx/common.bpf.h:52:33: warning: declaration of 'struct bpf_iter_scx_dsq' will not be visible outside of this function [-Wvisibility] 52 | int bpf_iter_scx_dsq_new(struct bpf_iter_scx_dsq *it, u64 dsq_id, u64 flags) __ksym __weak; | ^ /home/nipa/net-next/wt-1/tools/sched_ext/include/scx/common.bpf.h:53:50: warning: declaration of 'struct bpf_iter_scx_dsq' will not be visible outside of this function [-Wvisibility] 53 | struct task_struct *bpf_iter_scx_dsq_next(struct bpf_iter_scx_dsq *it) __ksym __weak; | ^ /home/nipa/net-next/wt-1/tools/sched_ext/include/scx/common.bpf.h:54:38: warning: declaration of 'struct bpf_iter_scx_dsq' will not be visible outside of this function [-Wvisibility] 54 | void bpf_iter_scx_dsq_destroy(struct bpf_iter_scx_dsq *it) __ksym __weak; | ^ ddsp_vtimelocal_fail.bpf.c:21:15: error: no member named 'scx' in 'struct task_struct' 21 | p->scx.dsq_vtime, 0); | ~ ^ ddsp_vtimelocal_fail.bpf.c:20:29: error: use of undeclared identifier 'SCX_DSQ_LOCAL' 20 | scx_bpf_dispatch_vtime(p, SCX_DSQ_LOCAL, SCX_SLICE_DFL, | ^ ddsp_vtimelocal_fail.bpf.c:20:44: error: use of undeclared identifier 'SCX_SLICE_DFL' 20 | scx_bpf_dispatch_vtime(p, SCX_DSQ_LOCAL, SCX_SLICE_DFL, | ^ ddsp_vtimelocal_fail.bpf.c:28:55: warning: declaration of 'struct scx_exit_info' will not be visible outside of this function [-Wvisibility] 28 | void BPF_STRUCT_OPS(ddsp_vtimelocal_fail_exit, struct scx_exit_info *ei) | ^ ddsp_vtimelocal_fail.bpf.c:28:55: warning: declaration of 'struct scx_exit_info' will not be visible outside of this function [-Wvisibility] ddsp_vtimelocal_fail.bpf.c:28:6: error: conflicting types for '____ddsp_vtimelocal_fail_exit' 28 | void BPF_STRUCT_OPS(ddsp_vtimelocal_fail_exit, struct scx_exit_info *ei) | ^ /home/nipa/net-next/wt-1/tools/sched_ext/include/scx/common.bpf.h:140:32: note: expanded from macro 'BPF_STRUCT_OPS' 140 | SEC("struct_ops/"#name) \ | ^ /home/nipa/net-next/wt-1/build_tools/kselftest/sched_ext/build/include/bpf/bpf_tracing.h:683:48: note: expanded from macro '\ BPF_PROG' 683 | static __always_inline typeof(name(0)) \ | ^ :57:1: note: expanded from here 57 | ____ddsp_vtimelocal_fail_exit | ^ ddsp_vtimelocal_fail.bpf.c:28:6: note: previous declaration is here /home/nipa/net-next/wt-1/tools/sched_ext/include/scx/common.bpf.h:140:32: note: expanded from macro 'BPF_STRUCT_OPS' 140 | SEC("struct_ops/"#name) \ | ^ /home/nipa/net-next/wt-1/build_tools/kselftest/sched_ext/build/include/bpf/bpf_tracing.h:674:48: note: expanded from macro '\ BPF_PROG' 674 | static __always_inline typeof(name(0)) \ | ^ :48:1: note: expanded from here 48 | ____ddsp_vtimelocal_fail_exit | ^ ddsp_vtimelocal_fail.bpf.c:30:2: error: incomplete definition of type 'struct scx_exit_info' 30 | UEI_RECORD(uei, ei); | ^~~~~~~~~~~~~~~~~~~ /home/nipa/net-next/wt-1/tools/sched_ext/include/scx/user_exit_info.h:42:40: note: expanded from macro 'UEI_RECORD' 42 | sizeof(__uei_name.reason), (__ei)->reason); \ | ~~~~~~^ ddsp_vtimelocal_fail.bpf.c:28:55: note: forward declaration of 'struct scx_exit_info' 28 | void BPF_STRUCT_OPS(ddsp_vtimelocal_fail_exit, struct scx_exit_info *ei) | ^ ddsp_vtimelocal_fail.bpf.c:30:2: error: incomplete definition of type 'struct scx_exit_info' 30 | UEI_RECORD(uei, ei); | ^~~~~~~~~~~~~~~~~~~ /home/nipa/net-next/wt-1/tools/sched_ext/include/scx/user_exit_info.h:44:37: note: expanded from macro 'UEI_RECORD' 44 | sizeof(__uei_name.msg), (__ei)->msg); \ | ~~~~~~^ ddsp_vtimelocal_fail.bpf.c:28:55: note: forward declaration of 'struct scx_exit_info' 28 | void BPF_STRUCT_OPS(ddsp_vtimelocal_fail_exit, struct scx_exit_info *ei) | ^ ddsp_vtimelocal_fail.bpf.c:30:2: error: incomplete definition of type 'struct scx_exit_info' 30 | UEI_RECORD(uei, ei); | ^~~~~~~~~~~~~~~~~~~ /home/nipa/net-next/wt-1/tools/sched_ext/include/scx/user_exit_info.h:46:36: note: expanded from macro 'UEI_RECORD' 46 | __uei_name##_dump_len, (__ei)->dump); \ | ~~~~~~^ ddsp_vtimelocal_fail.bpf.c:28:55: note: forward declaration of 'struct scx_exit_info' 28 | void BPF_STRUCT_OPS(ddsp_vtimelocal_fail_exit, struct scx_exit_info *ei) | ^ ddsp_vtimelocal_fail.bpf.c:30:2: error: incomplete definition of type 'struct scx_exit_info' 30 | UEI_RECORD(uei, ei); | ^~~~~~~~~~~~~~~~~~~ /home/nipa/net-next/wt-1/tools/sched_ext/include/scx/user_exit_info.h:47:34: note: expanded from macro 'UEI_RECORD' 47 | if (bpf_core_field_exists((__ei)->exit_code)) \ | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~ /home/nipa/net-next/wt-1/build_tools/kselftest/sched_ext/build/include/bpf/bpf_core_read.h:188:49: note: expanded from macro 'bpf_core_field_exists' 188 | __builtin_preserve_field_info(___bpf_field_ref(field), BPF_FIELD_EXISTS) | ~~~~~~~~~~~~~~~~~^~~~~~ /home/nipa/net-next/wt-1/build_tools/kselftest/sched_ext/build/include/bpf/bpf_core_read.h:173:52: note: expanded from macro '___bpf_field_ref' 173 | ___bpf_apply(___bpf_field_ref, ___bpf_narg(args))(args) | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~ /home/nipa/net-next/wt-1/build_tools/kselftest/sched_ext/build/include/bpf/bpf_core_read.h:166:35: note: expanded from macro '___bpf_field_ref1' 166 | #define ___bpf_field_ref1(field) (field) | ^~~~~ ddsp_vtimelocal_fail.bpf.c:28:55: note: forward declaration of 'struct scx_exit_info' 28 | void BPF_STRUCT_OPS(ddsp_vtimelocal_fail_exit, struct scx_exit_info *ei) | ^ ddsp_vtimelocal_fail.bpf.c:30:2: error: incomplete definition of type 'struct scx_exit_info' 30 | UEI_RECORD(uei, ei); | ^~~~~~~~~~~~~~~~~~~ /home/nipa/net-next/wt-1/tools/sched_ext/include/scx/user_exit_info.h:48:32: note: expanded from macro 'UEI_RECORD' 48 | __uei_name.exit_code = (__ei)->exit_code; \ | ~~~~~~^ ddsp_vtimelocal_fail.bpf.c:28:55: note: forward declaration of 'struct scx_exit_info' 28 | void BPF_STRUCT_OPS(ddsp_vtimelocal_fail_exit, struct scx_exit_info *ei) | ^ ddsp_vtimelocal_fail.bpf.c:30:2: error: incomplete definition of type 'struct scx_exit_info' 30 | UEI_RECORD(uei, ei); | ^~~~~~~~~~~~~~~~~~~ /home/nipa/net-next/wt-1/tools/sched_ext/include/scx/user_exit_info.h:51:15: note: expanded from macro 'UEI_RECORD' 51 | (__ei)->kind); \ | ~~~~~~^ ddsp_vtimelocal_fail.bpf.c:28:55: note: forward declaration of 'struct scx_exit_info' 28 | void BPF_STRUCT_OPS(ddsp_vtimelocal_fail_exit, struct scx_exit_info *ei) | ^ ddsp_vtimelocal_fail.bpf.c:34:22: error: variable has incomplete type 'struct sched_ext_ops' 34 | struct sched_ext_ops ddsp_vtimelocal_fail_ops = { | ^ ddsp_vtimelocal_fail.bpf.c:34:8: note: forward declaration of 'struct sched_ext_ops' 34 | struct sched_ext_ops ddsp_vtimelocal_fail_ops = { | ^ 9 warnings and 12 errors generated. make[1]: *** [Makefile:136: /home/nipa/net-next/wt-1/build_tools/kselftest/sched_ext/build/obj/sched_ext/ddsp_vtimelocal_fail.bpf.o] Error 1 In file included from dsp_local_on.bpf.c:6: /home/nipa/net-next/wt-1/tools/sched_ext/include/scx/common.bpf.h:33:17: error: use of undeclared identifier 'SCX_DSQ_FLAG_BUILTIN' 33 | _Static_assert(SCX_DSQ_FLAG_BUILTIN, | ^ /home/nipa/net-next/wt-1/tools/sched_ext/include/scx/common.bpf.h:44:49: warning: declaration of 'struct bpf_iter_scx_dsq' will not be visible outside of this function [-Wvisibility] 44 | void scx_bpf_dispatch_from_dsq_set_slice(struct bpf_iter_scx_dsq *it__iter, u64 slice) __ksym __weak; | ^ /home/nipa/net-next/wt-1/tools/sched_ext/include/scx/common.bpf.h:45:49: warning: declaration of 'struct bpf_iter_scx_dsq' will not be visible outside of this function [-Wvisibility] 45 | void scx_bpf_dispatch_from_dsq_set_vtime(struct bpf_iter_scx_dsq *it__iter, u64 vtime) __ksym __weak; | ^ /home/nipa/net-next/wt-1/tools/sched_ext/include/scx/common.bpf.h:46:39: warning: declaration of 'struct bpf_iter_scx_dsq' will not be visible outside of this function [-Wvisibility] 46 | bool scx_bpf_dispatch_from_dsq(struct bpf_iter_scx_dsq *it__iter, struct task_struct *p, u64 dsq_id, u64 enq_flags) __ksym __weak; | ^ /home/nipa/net-next/wt-1/tools/sched_ext/include/scx/common.bpf.h:47:45: warning: declaration of 'struct bpf_iter_scx_dsq' will not be visible outside of this function [-Wvisibility] 47 | bool scx_bpf_dispatch_vtime_from_dsq(struct bpf_iter_scx_dsq *it__iter, struct task_struct *p, u64 dsq_id, u64 enq_flags) __ksym __weak; | ^ /home/nipa/net-next/wt-1/tools/sched_ext/include/scx/common.bpf.h:52:33: warning: declaration of 'struct bpf_iter_scx_dsq' will not be visible outside of this function [-Wvisibility] 52 | int bpf_iter_scx_dsq_new(struct bpf_iter_scx_dsq *it, u64 dsq_id, u64 flags) __ksym __weak; | ^ /home/nipa/net-next/wt-1/tools/sched_ext/include/scx/common.bpf.h:53:50: warning: declaration of 'struct bpf_iter_scx_dsq' will not be visible outside of this function [-Wvisibility] 53 | struct task_struct *bpf_iter_scx_dsq_next(struct bpf_iter_scx_dsq *it) __ksym __weak; | ^ /home/nipa/net-next/wt-1/tools/sched_ext/include/scx/common.bpf.h:54:38: warning: declaration of 'struct bpf_iter_scx_dsq' will not be visible outside of this function [-Wvisibility] 54 | void bpf_iter_scx_dsq_destroy(struct bpf_iter_scx_dsq *it) __ksym __weak; | ^ dsp_local_on.bpf.c:48:22: error: use of undeclared identifier 'SCX_DSQ_LOCAL_ON' 48 | scx_bpf_dispatch(p, SCX_DSQ_LOCAL_ON | target, SCX_SLICE_DFL, 0); | ^ dsp_local_on.bpf.c:48:49: error: use of undeclared identifier 'SCX_SLICE_DFL' 48 | scx_bpf_dispatch(p, SCX_DSQ_LOCAL_ON | target, SCX_SLICE_DFL, 0); | ^ dsp_local_on.bpf.c:52:47: warning: declaration of 'struct scx_exit_info' will not be visible outside of this function [-Wvisibility] 52 | void BPF_STRUCT_OPS(dsp_local_on_exit, struct scx_exit_info *ei) | ^ dsp_local_on.bpf.c:52:47: warning: declaration of 'struct scx_exit_info' will not be visible outside of this function [-Wvisibility] dsp_local_on.bpf.c:52:6: error: conflicting types for '____dsp_local_on_exit' 52 | void BPF_STRUCT_OPS(dsp_local_on_exit, struct scx_exit_info *ei) | ^ /home/nipa/net-next/wt-1/tools/sched_ext/include/scx/common.bpf.h:140:32: note: expanded from macro 'BPF_STRUCT_OPS' 140 | SEC("struct_ops/"#name) \ | ^ /home/nipa/net-next/wt-1/build_tools/kselftest/sched_ext/build/include/bpf/bpf_tracing.h:683:48: note: expanded from macro '\ BPF_PROG' 683 | static __always_inline typeof(name(0)) \ | ^ :104:1: note: expanded from here 104 | ____dsp_local_on_exit | ^ dsp_local_on.bpf.c:52:6: note: previous declaration is here /home/nipa/net-next/wt-1/tools/sched_ext/include/scx/common.bpf.h:140:32: note: expanded from macro 'BPF_STRUCT_OPS' 140 | SEC("struct_ops/"#name) \ | ^ /home/nipa/net-next/wt-1/build_tools/kselftest/sched_ext/build/include/bpf/bpf_tracing.h:674:48: note: expanded from macro '\ BPF_PROG' 674 | static __always_inline typeof(name(0)) \ | ^ :95:1: note: expanded from here 95 | ____dsp_local_on_exit | ^ dsp_local_on.bpf.c:54:2: error: incomplete definition of type 'struct scx_exit_info' 54 | UEI_RECORD(uei, ei); | ^~~~~~~~~~~~~~~~~~~ /home/nipa/net-next/wt-1/tools/sched_ext/include/scx/user_exit_info.h:42:40: note: expanded from macro 'UEI_RECORD' 42 | sizeof(__uei_name.reason), (__ei)->reason); \ | ~~~~~~^ dsp_local_on.bpf.c:52:47: note: forward declaration of 'struct scx_exit_info' 52 | void BPF_STRUCT_OPS(dsp_local_on_exit, struct scx_exit_info *ei) | ^ dsp_local_on.bpf.c:54:2: error: incomplete definition of type 'struct scx_exit_info' 54 | UEI_RECORD(uei, ei); | ^~~~~~~~~~~~~~~~~~~ /home/nipa/net-next/wt-1/tools/sched_ext/include/scx/user_exit_info.h:44:37: note: expanded from macro 'UEI_RECORD' 44 | sizeof(__uei_name.msg), (__ei)->msg); \ | ~~~~~~^ dsp_local_on.bpf.c:52:47: note: forward declaration of 'struct scx_exit_info' 52 | void BPF_STRUCT_OPS(dsp_local_on_exit, struct scx_exit_info *ei) | ^ dsp_local_on.bpf.c:54:2: error: incomplete definition of type 'struct scx_exit_info' 54 | UEI_RECORD(uei, ei); | ^~~~~~~~~~~~~~~~~~~ /home/nipa/net-next/wt-1/tools/sched_ext/include/scx/user_exit_info.h:46:36: note: expanded from macro 'UEI_RECORD' 46 | __uei_name##_dump_len, (__ei)->dump); \ | ~~~~~~^ dsp_local_on.bpf.c:52:47: note: forward declaration of 'struct scx_exit_info' 52 | void BPF_STRUCT_OPS(dsp_local_on_exit, struct scx_exit_info *ei) | ^ dsp_local_on.bpf.c:54:2: error: incomplete definition of type 'struct scx_exit_info' 54 | UEI_RECORD(uei, ei); | ^~~~~~~~~~~~~~~~~~~ /home/nipa/net-next/wt-1/tools/sched_ext/include/scx/user_exit_info.h:47:34: note: expanded from macro 'UEI_RECORD' 47 | if (bpf_core_field_exists((__ei)->exit_code)) \ | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~ /home/nipa/net-next/wt-1/build_tools/kselftest/sched_ext/build/include/bpf/bpf_core_read.h:188:49: note: expanded from macro 'bpf_core_field_exists' 188 | __builtin_preserve_field_info(___bpf_field_ref(field), BPF_FIELD_EXISTS) | ~~~~~~~~~~~~~~~~~^~~~~~ /home/nipa/net-next/wt-1/build_tools/kselftest/sched_ext/build/include/bpf/bpf_core_read.h:173:52: note: expanded from macro '___bpf_field_ref' 173 | ___bpf_apply(___bpf_field_ref, ___bpf_narg(args))(args) | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~ /home/nipa/net-next/wt-1/build_tools/kselftest/sched_ext/build/include/bpf/bpf_core_read.h:166:35: note: expanded from macro '___bpf_field_ref1' 166 | #define ___bpf_field_ref1(field) (field) | ^~~~~ dsp_local_on.bpf.c:52:47: note: forward declaration of 'struct scx_exit_info' 52 | void BPF_STRUCT_OPS(dsp_local_on_exit, struct scx_exit_info *ei) | ^ dsp_local_on.bpf.c:54:2: error: incomplete definition of type 'struct scx_exit_info' 54 | UEI_RECORD(uei, ei); | ^~~~~~~~~~~~~~~~~~~ /home/nipa/net-next/wt-1/tools/sched_ext/include/scx/user_exit_info.h:48:32: note: expanded from macro 'UEI_RECORD' 48 | __uei_name.exit_code = (__ei)->exit_code; \ | ~~~~~~^ dsp_local_on.bpf.c:52:47: note: forward declaration of 'struct scx_exit_info' 52 | void BPF_STRUCT_OPS(dsp_local_on_exit, struct scx_exit_info *ei) | ^ dsp_local_on.bpf.c:54:2: error: incomplete definition of type 'struct scx_exit_info' 54 | UEI_RECORD(uei, ei); | ^~~~~~~~~~~~~~~~~~~ /home/nipa/net-next/wt-1/tools/sched_ext/include/scx/user_exit_info.h:51:15: note: expanded from macro 'UEI_RECORD' 51 | (__ei)->kind); \ | ~~~~~~^ dsp_local_on.bpf.c:52:47: note: forward declaration of 'struct scx_exit_info' 52 | void BPF_STRUCT_OPS(dsp_local_on_exit, struct scx_exit_info *ei) | ^ dsp_local_on.bpf.c:58:22: error: variable has incomplete type 'struct sched_ext_ops' 58 | struct sched_ext_ops dsp_local_on_ops = { | ^ dsp_local_on.bpf.c:58:8: note: forward declaration of 'struct sched_ext_ops' 58 | struct sched_ext_ops dsp_local_on_ops = { | ^ 9 warnings and 11 errors generated. make[1]: *** [Makefile:136: /home/nipa/net-next/wt-1/build_tools/kselftest/sched_ext/build/obj/sched_ext/dsp_local_on.bpf.o] Error 1 In file included from enq_last_no_enq_fails.bpf.c:11: /home/nipa/net-next/wt-1/tools/sched_ext/include/scx/common.bpf.h:33:17: error: use of undeclared identifier 'SCX_DSQ_FLAG_BUILTIN' 33 | _Static_assert(SCX_DSQ_FLAG_BUILTIN, | ^ /home/nipa/net-next/wt-1/tools/sched_ext/include/scx/common.bpf.h:44:49: warning: declaration of 'struct bpf_iter_scx_dsq' will not be visible outside of this function [-Wvisibility] 44 | void scx_bpf_dispatch_from_dsq_set_slice(struct bpf_iter_scx_dsq *it__iter, u64 slice) __ksym __weak; | ^ /home/nipa/net-next/wt-1/tools/sched_ext/include/scx/common.bpf.h:45:49: warning: declaration of 'struct bpf_iter_scx_dsq' will not be visible outside of this function [-Wvisibility] 45 | void scx_bpf_dispatch_from_dsq_set_vtime(struct bpf_iter_scx_dsq *it__iter, u64 vtime) __ksym __weak; | ^ /home/nipa/net-next/wt-1/tools/sched_ext/include/scx/common.bpf.h:46:39: warning: declaration of 'struct bpf_iter_scx_dsq' will not be visible outside of this function [-Wvisibility] 46 | bool scx_bpf_dispatch_from_dsq(struct bpf_iter_scx_dsq *it__iter, struct task_struct *p, u64 dsq_id, u64 enq_flags) __ksym __weak; | ^ /home/nipa/net-next/wt-1/tools/sched_ext/include/scx/common.bpf.h:47:45: warning: declaration of 'struct bpf_iter_scx_dsq' will not be visible outside of this function [-Wvisibility] 47 | bool scx_bpf_dispatch_vtime_from_dsq(struct bpf_iter_scx_dsq *it__iter, struct task_struct *p, u64 dsq_id, u64 enq_flags) __ksym __weak; | ^ /home/nipa/net-next/wt-1/tools/sched_ext/include/scx/common.bpf.h:52:33: warning: declaration of 'struct bpf_iter_scx_dsq' will not be visible outside of this function [-Wvisibility] 52 | int bpf_iter_scx_dsq_new(struct bpf_iter_scx_dsq *it, u64 dsq_id, u64 flags) __ksym __weak; | ^ /home/nipa/net-next/wt-1/tools/sched_ext/include/scx/common.bpf.h:53:50: warning: declaration of 'struct bpf_iter_scx_dsq' will not be visible outside of this function [-Wvisibility] 53 | struct task_struct *bpf_iter_scx_dsq_next(struct bpf_iter_scx_dsq *it) __ksym __weak; | ^ /home/nipa/net-next/wt-1/tools/sched_ext/include/scx/common.bpf.h:54:38: warning: declaration of 'struct bpf_iter_scx_dsq' will not be visible outside of this function [-Wvisibility] 54 | void bpf_iter_scx_dsq_destroy(struct bpf_iter_scx_dsq *it) __ksym __weak; | ^ enq_last_no_enq_fails.bpf.c:19:13: error: use of undeclared identifier 'SCX_OPS_ENQ_LAST' 19 | .flags = SCX_OPS_ENQ_LAST, | ^ enq_last_no_enq_fails.bpf.c:16:22: error: variable has incomplete type 'struct sched_ext_ops' 16 | struct sched_ext_ops enq_last_no_enq_fails_ops = { | ^ enq_last_no_enq_fails.bpf.c:16:8: note: forward declaration of 'struct sched_ext_ops' 16 | struct sched_ext_ops enq_last_no_enq_fails_ops = { | ^ 7 warnings and 3 errors generated. make[1]: *** [Makefile:136: /home/nipa/net-next/wt-1/build_tools/kselftest/sched_ext/build/obj/sched_ext/enq_last_no_enq_fails.bpf.o] Error 1 In file included from enq_select_cpu_fails.bpf.c:8: /home/nipa/net-next/wt-1/tools/sched_ext/include/scx/common.bpf.h:33:17: error: use of undeclared identifier 'SCX_DSQ_FLAG_BUILTIN' 33 | _Static_assert(SCX_DSQ_FLAG_BUILTIN, | ^ /home/nipa/net-next/wt-1/tools/sched_ext/include/scx/common.bpf.h:44:49: warning: declaration of 'struct bpf_iter_scx_dsq' will not be visible outside of this function [-Wvisibility] 44 | void scx_bpf_dispatch_from_dsq_set_slice(struct bpf_iter_scx_dsq *it__iter, u64 slice) __ksym __weak; | ^ /home/nipa/net-next/wt-1/tools/sched_ext/include/scx/common.bpf.h:45:49: warning: declaration of 'struct bpf_iter_scx_dsq' will not be visible outside of this function [-Wvisibility] 45 | void scx_bpf_dispatch_from_dsq_set_vtime(struct bpf_iter_scx_dsq *it__iter, u64 vtime) __ksym __weak; | ^ /home/nipa/net-next/wt-1/tools/sched_ext/include/scx/common.bpf.h:46:39: warning: declaration of 'struct bpf_iter_scx_dsq' will not be visible outside of this function [-Wvisibility] 46 | bool scx_bpf_dispatch_from_dsq(struct bpf_iter_scx_dsq *it__iter, struct task_struct *p, u64 dsq_id, u64 enq_flags) __ksym __weak; | ^ /home/nipa/net-next/wt-1/tools/sched_ext/include/scx/common.bpf.h:47:45: warning: declaration of 'struct bpf_iter_scx_dsq' will not be visible outside of this function [-Wvisibility] 47 | bool scx_bpf_dispatch_vtime_from_dsq(struct bpf_iter_scx_dsq *it__iter, struct task_struct *p, u64 dsq_id, u64 enq_flags) __ksym __weak; | ^ /home/nipa/net-next/wt-1/tools/sched_ext/include/scx/common.bpf.h:52:33: warning: declaration of 'struct bpf_iter_scx_dsq' will not be visible outside of this function [-Wvisibility] 52 | int bpf_iter_scx_dsq_new(struct bpf_iter_scx_dsq *it, u64 dsq_id, u64 flags) __ksym __weak; | ^ /home/nipa/net-next/wt-1/tools/sched_ext/include/scx/common.bpf.h:53:50: warning: declaration of 'struct bpf_iter_scx_dsq' will not be visible outside of this function [-Wvisibility] 53 | struct task_struct *bpf_iter_scx_dsq_next(struct bpf_iter_scx_dsq *it) __ksym __weak; | ^ /home/nipa/net-next/wt-1/tools/sched_ext/include/scx/common.bpf.h:54:38: warning: declaration of 'struct bpf_iter_scx_dsq' will not be visible outside of this function [-Wvisibility] 54 | void bpf_iter_scx_dsq_destroy(struct bpf_iter_scx_dsq *it) __ksym __weak; | ^ enq_select_cpu_fails.bpf.c:34:22: error: use of undeclared identifier 'SCX_DSQ_GLOBAL' 34 | scx_bpf_dispatch(p, SCX_DSQ_GLOBAL, SCX_SLICE_DFL, enq_flags); | ^ enq_select_cpu_fails.bpf.c:34:38: error: use of undeclared identifier 'SCX_SLICE_DFL' 34 | scx_bpf_dispatch(p, SCX_DSQ_GLOBAL, SCX_SLICE_DFL, enq_flags); | ^ enq_select_cpu_fails.bpf.c:38:22: error: variable has incomplete type 'struct sched_ext_ops' 38 | struct sched_ext_ops enq_select_cpu_fails_ops = { | ^ enq_select_cpu_fails.bpf.c:38:8: note: forward declaration of 'struct sched_ext_ops' 38 | struct sched_ext_ops enq_select_cpu_fails_ops = { | ^ 7 warnings and 4 errors generated. make[1]: *** [Makefile:136: /home/nipa/net-next/wt-1/build_tools/kselftest/sched_ext/build/obj/sched_ext/enq_select_cpu_fails.bpf.o] Error 1 In file included from exit.bpf.c:7: /home/nipa/net-next/wt-1/tools/sched_ext/include/scx/common.bpf.h:33:17: error: use of undeclared identifier 'SCX_DSQ_FLAG_BUILTIN' 33 | _Static_assert(SCX_DSQ_FLAG_BUILTIN, | ^ /home/nipa/net-next/wt-1/tools/sched_ext/include/scx/common.bpf.h:44:49: warning: declaration of 'struct bpf_iter_scx_dsq' will not be visible outside of this function [-Wvisibility] 44 | void scx_bpf_dispatch_from_dsq_set_slice(struct bpf_iter_scx_dsq *it__iter, u64 slice) __ksym __weak; | ^ /home/nipa/net-next/wt-1/tools/sched_ext/include/scx/common.bpf.h:45:49: warning: declaration of 'struct bpf_iter_scx_dsq' will not be visible outside of this function [-Wvisibility] 45 | void scx_bpf_dispatch_from_dsq_set_vtime(struct bpf_iter_scx_dsq *it__iter, u64 vtime) __ksym __weak; | ^ /home/nipa/net-next/wt-1/tools/sched_ext/include/scx/common.bpf.h:46:39: warning: declaration of 'struct bpf_iter_scx_dsq' will not be visible outside of this function [-Wvisibility] 46 | bool scx_bpf_dispatch_from_dsq(struct bpf_iter_scx_dsq *it__iter, struct task_struct *p, u64 dsq_id, u64 enq_flags) __ksym __weak; | ^ /home/nipa/net-next/wt-1/tools/sched_ext/include/scx/common.bpf.h:47:45: warning: declaration of 'struct bpf_iter_scx_dsq' will not be visible outside of this function [-Wvisibility] 47 | bool scx_bpf_dispatch_vtime_from_dsq(struct bpf_iter_scx_dsq *it__iter, struct task_struct *p, u64 dsq_id, u64 enq_flags) __ksym __weak; | ^ /home/nipa/net-next/wt-1/tools/sched_ext/include/scx/common.bpf.h:52:33: warning: declaration of 'struct bpf_iter_scx_dsq' will not be visible outside of this function [-Wvisibility] 52 | int bpf_iter_scx_dsq_new(struct bpf_iter_scx_dsq *it, u64 dsq_id, u64 flags) __ksym __weak; | ^ /home/nipa/net-next/wt-1/tools/sched_ext/include/scx/common.bpf.h:53:50: warning: declaration of 'struct bpf_iter_scx_dsq' will not be visible outside of this function [-Wvisibility] 53 | struct task_struct *bpf_iter_scx_dsq_next(struct bpf_iter_scx_dsq *it) __ksym __weak; | ^ /home/nipa/net-next/wt-1/tools/sched_ext/include/scx/common.bpf.h:54:38: warning: declaration of 'struct bpf_iter_scx_dsq' will not be visible outside of this function [-Wvisibility] 54 | void bpf_iter_scx_dsq_destroy(struct bpf_iter_scx_dsq *it) __ksym __weak; | ^ exit.bpf.c:34:22: error: use of undeclared identifier 'SCX_DSQ_GLOBAL' 34 | scx_bpf_dispatch(p, SCX_DSQ_GLOBAL, SCX_SLICE_DFL, enq_flags); | ^ exit.bpf.c:34:38: error: use of undeclared identifier 'SCX_SLICE_DFL' 34 | scx_bpf_dispatch(p, SCX_DSQ_GLOBAL, SCX_SLICE_DFL, enq_flags); | ^ exit.bpf.c:42:18: error: use of undeclared identifier 'SCX_DSQ_GLOBAL' 42 | scx_bpf_consume(SCX_DSQ_GLOBAL); | ^ exit.bpf.c:52:14: warning: declaration of 'struct scx_init_task_args' will not be visible outside of this function [-Wvisibility] 52 | struct scx_init_task_args *args) | ^ exit.bpf.c:52:14: warning: declaration of 'struct scx_init_task_args' will not be visible outside of this function [-Wvisibility] exit.bpf.c:51:5: error: conflicting types for '____exit_init_task' 51 | s32 BPF_STRUCT_OPS(exit_init_task, struct task_struct *p, | ^ /home/nipa/net-next/wt-1/tools/sched_ext/include/scx/common.bpf.h:140:32: note: expanded from macro 'BPF_STRUCT_OPS' 140 | SEC("struct_ops/"#name) \ | ^ /home/nipa/net-next/wt-1/build_tools/kselftest/sched_ext/build/include/bpf/bpf_tracing.h:683:48: note: expanded from macro '\ BPF_PROG' 683 | static __always_inline typeof(name(0)) \ | ^ :136:1: note: expanded from here 136 | ____exit_init_task | ^ exit.bpf.c:51:5: note: previous declaration is here /home/nipa/net-next/wt-1/tools/sched_ext/include/scx/common.bpf.h:140:32: note: expanded from macro 'BPF_STRUCT_OPS' 140 | SEC("struct_ops/"#name) \ | ^ /home/nipa/net-next/wt-1/build_tools/kselftest/sched_ext/build/include/bpf/bpf_tracing.h:674:48: note: expanded from macro '\ BPF_PROG' 674 | static __always_inline typeof(name(0)) \ | ^ :127:1: note: expanded from here 127 | ____exit_init_task | ^ exit.bpf.c:60:39: warning: declaration of 'struct scx_exit_info' will not be visible outside of this function [-Wvisibility] 60 | void BPF_STRUCT_OPS(exit_exit, struct scx_exit_info *ei) | ^ exit.bpf.c:60:39: warning: declaration of 'struct scx_exit_info' will not be visible outside of this function [-Wvisibility] exit.bpf.c:60:6: error: conflicting types for '____exit_exit' 60 | void BPF_STRUCT_OPS(exit_exit, struct scx_exit_info *ei) | ^ /home/nipa/net-next/wt-1/tools/sched_ext/include/scx/common.bpf.h:140:32: note: expanded from macro 'BPF_STRUCT_OPS' 140 | SEC("struct_ops/"#name) \ | ^ /home/nipa/net-next/wt-1/build_tools/kselftest/sched_ext/build/include/bpf/bpf_tracing.h:683:48: note: expanded from macro '\ BPF_PROG' 683 | static __always_inline typeof(name(0)) \ | ^ :160:1: note: expanded from here 160 | ____exit_exit | ^ exit.bpf.c:60:6: note: previous declaration is here /home/nipa/net-next/wt-1/tools/sched_ext/include/scx/common.bpf.h:140:32: note: expanded from macro 'BPF_STRUCT_OPS' 140 | SEC("struct_ops/"#name) \ | ^ /home/nipa/net-next/wt-1/build_tools/kselftest/sched_ext/build/include/bpf/bpf_tracing.h:674:48: note: expanded from macro '\ BPF_PROG' 674 | static __always_inline typeof(name(0)) \ | ^ :151:1: note: expanded from here 151 | ____exit_exit | ^ exit.bpf.c:62:2: error: incomplete definition of type 'struct scx_exit_info' 62 | UEI_RECORD(uei, ei); | ^~~~~~~~~~~~~~~~~~~ /home/nipa/net-next/wt-1/tools/sched_ext/include/scx/user_exit_info.h:42:40: note: expanded from macro 'UEI_RECORD' 42 | sizeof(__uei_name.reason), (__ei)->reason); \ | ~~~~~~^ exit.bpf.c:60:39: note: forward declaration of 'struct scx_exit_info' 60 | void BPF_STRUCT_OPS(exit_exit, struct scx_exit_info *ei) | ^ exit.bpf.c:62:2: error: incomplete definition of type 'struct scx_exit_info' 62 | UEI_RECORD(uei, ei); | ^~~~~~~~~~~~~~~~~~~ /home/nipa/net-next/wt-1/tools/sched_ext/include/scx/user_exit_info.h:44:37: note: expanded from macro 'UEI_RECORD' 44 | sizeof(__uei_name.msg), (__ei)->msg); \ | ~~~~~~^ exit.bpf.c:60:39: note: forward declaration of 'struct scx_exit_info' 60 | void BPF_STRUCT_OPS(exit_exit, struct scx_exit_info *ei) | ^ exit.bpf.c:62:2: error: incomplete definition of type 'struct scx_exit_info' 62 | UEI_RECORD(uei, ei); | ^~~~~~~~~~~~~~~~~~~ /home/nipa/net-next/wt-1/tools/sched_ext/include/scx/user_exit_info.h:46:36: note: expanded from macro 'UEI_RECORD' 46 | __uei_name##_dump_len, (__ei)->dump); \ | ~~~~~~^ exit.bpf.c:60:39: note: forward declaration of 'struct scx_exit_info' 60 | void BPF_STRUCT_OPS(exit_exit, struct scx_exit_info *ei) | ^ exit.bpf.c:62:2: error: incomplete definition of type 'struct scx_exit_info' 62 | UEI_RECORD(uei, ei); | ^~~~~~~~~~~~~~~~~~~ /home/nipa/net-next/wt-1/tools/sched_ext/include/scx/user_exit_info.h:47:34: note: expanded from macro 'UEI_RECORD' 47 | if (bpf_core_field_exists((__ei)->exit_code)) \ | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~ /home/nipa/net-next/wt-1/build_tools/kselftest/sched_ext/build/include/bpf/bpf_core_read.h:188:49: note: expanded from macro 'bpf_core_field_exists' 188 | __builtin_preserve_field_info(___bpf_field_ref(field), BPF_FIELD_EXISTS) | ~~~~~~~~~~~~~~~~~^~~~~~ /home/nipa/net-next/wt-1/build_tools/kselftest/sched_ext/build/include/bpf/bpf_core_read.h:173:52: note: expanded from macro '___bpf_field_ref' 173 | ___bpf_apply(___bpf_field_ref, ___bpf_narg(args))(args) | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~ /home/nipa/net-next/wt-1/build_tools/kselftest/sched_ext/build/include/bpf/bpf_core_read.h:166:35: note: expanded from macro '___bpf_field_ref1' 166 | #define ___bpf_field_ref1(field) (field) | ^~~~~ exit.bpf.c:60:39: note: forward declaration of 'struct scx_exit_info' 60 | void BPF_STRUCT_OPS(exit_exit, struct scx_exit_info *ei) | ^ exit.bpf.c:62:2: error: incomplete definition of type 'struct scx_exit_info' 62 | UEI_RECORD(uei, ei); | ^~~~~~~~~~~~~~~~~~~ /home/nipa/net-next/wt-1/tools/sched_ext/include/scx/user_exit_info.h:48:32: note: expanded from macro 'UEI_RECORD' 48 | __uei_name.exit_code = (__ei)->exit_code; \ | ~~~~~~^ exit.bpf.c:60:39: note: forward declaration of 'struct scx_exit_info' 60 | void BPF_STRUCT_OPS(exit_exit, struct scx_exit_info *ei) | ^ exit.bpf.c:62:2: error: incomplete definition of type 'struct scx_exit_info' 62 | UEI_RECORD(uei, ei); | ^~~~~~~~~~~~~~~~~~~ /home/nipa/net-next/wt-1/tools/sched_ext/include/scx/user_exit_info.h:51:15: note: expanded from macro 'UEI_RECORD' 51 | (__ei)->kind); \ | ~~~~~~^ exit.bpf.c:60:39: note: forward declaration of 'struct scx_exit_info' 60 | void BPF_STRUCT_OPS(exit_exit, struct scx_exit_info *ei) | ^ exit.bpf.c:74:22: error: variable has incomplete type 'struct sched_ext_ops' 74 | struct sched_ext_ops exit_ops = { | ^ exit.bpf.c:74:8: note: forward declaration of 'struct sched_ext_ops' 74 | struct sched_ext_ops exit_ops = { | ^ 11 warnings and 13 errors generated. make[1]: *** [Makefile:136: /home/nipa/net-next/wt-1/build_tools/kselftest/sched_ext/build/obj/sched_ext/exit.bpf.o] Error 1 In file included from hotplug.bpf.c:7: /home/nipa/net-next/wt-1/tools/sched_ext/include/scx/common.bpf.h:33:17: error: use of undeclared identifier 'SCX_DSQ_FLAG_BUILTIN' 33 | _Static_assert(SCX_DSQ_FLAG_BUILTIN, | ^ /home/nipa/net-next/wt-1/tools/sched_ext/include/scx/common.bpf.h:44:49: warning: declaration of 'struct bpf_iter_scx_dsq' will not be visible outside of this function [-Wvisibility] 44 | void scx_bpf_dispatch_from_dsq_set_slice(struct bpf_iter_scx_dsq *it__iter, u64 slice) __ksym __weak; | ^ /home/nipa/net-next/wt-1/tools/sched_ext/include/scx/common.bpf.h:45:49: warning: declaration of 'struct bpf_iter_scx_dsq' will not be visible outside of this function [-Wvisibility] 45 | void scx_bpf_dispatch_from_dsq_set_vtime(struct bpf_iter_scx_dsq *it__iter, u64 vtime) __ksym __weak; | ^ /home/nipa/net-next/wt-1/tools/sched_ext/include/scx/common.bpf.h:46:39: warning: declaration of 'struct bpf_iter_scx_dsq' will not be visible outside of this function [-Wvisibility] 46 | bool scx_bpf_dispatch_from_dsq(struct bpf_iter_scx_dsq *it__iter, struct task_struct *p, u64 dsq_id, u64 enq_flags) __ksym __weak; | ^ /home/nipa/net-next/wt-1/tools/sched_ext/include/scx/common.bpf.h:47:45: warning: declaration of 'struct bpf_iter_scx_dsq' will not be visible outside of this function [-Wvisibility] 47 | bool scx_bpf_dispatch_vtime_from_dsq(struct bpf_iter_scx_dsq *it__iter, struct task_struct *p, u64 dsq_id, u64 enq_flags) __ksym __weak; | ^ /home/nipa/net-next/wt-1/tools/sched_ext/include/scx/common.bpf.h:52:33: warning: declaration of 'struct bpf_iter_scx_dsq' will not be visible outside of this function [-Wvisibility] 52 | int bpf_iter_scx_dsq_new(struct bpf_iter_scx_dsq *it, u64 dsq_id, u64 flags) __ksym __weak; | ^ /home/nipa/net-next/wt-1/tools/sched_ext/include/scx/common.bpf.h:53:50: warning: declaration of 'struct bpf_iter_scx_dsq' will not be visible outside of this function [-Wvisibility] 53 | struct task_struct *bpf_iter_scx_dsq_next(struct bpf_iter_scx_dsq *it) __ksym __weak; | ^ /home/nipa/net-next/wt-1/tools/sched_ext/include/scx/common.bpf.h:54:38: warning: declaration of 'struct bpf_iter_scx_dsq' will not be visible outside of this function [-Wvisibility] 54 | void bpf_iter_scx_dsq_destroy(struct bpf_iter_scx_dsq *it) __ksym __weak; | ^ hotplug.bpf.c:15:42: warning: declaration of 'struct scx_exit_info' will not be visible outside of this function [-Wvisibility] 15 | void BPF_STRUCT_OPS(hotplug_exit, struct scx_exit_info *ei) | ^ hotplug.bpf.c:15:42: warning: declaration of 'struct scx_exit_info' will not be visible outside of this function [-Wvisibility] hotplug.bpf.c:15:6: error: conflicting types for '____hotplug_exit' 15 | void BPF_STRUCT_OPS(hotplug_exit, struct scx_exit_info *ei) | ^ /home/nipa/net-next/wt-1/tools/sched_ext/include/scx/common.bpf.h:140:32: note: expanded from macro 'BPF_STRUCT_OPS' 140 | SEC("struct_ops/"#name) \ | ^ /home/nipa/net-next/wt-1/build_tools/kselftest/sched_ext/build/include/bpf/bpf_tracing.h:683:48: note: expanded from macro '\ BPF_PROG' 683 | static __always_inline typeof(name(0)) \ | ^ :40:1: note: expanded from here 40 | ____hotplug_exit | ^ hotplug.bpf.c:15:6: note: previous declaration is here /home/nipa/net-next/wt-1/tools/sched_ext/include/scx/common.bpf.h:140:32: note: expanded from macro 'BPF_STRUCT_OPS' 140 | SEC("struct_ops/"#name) \ | ^ /home/nipa/net-next/wt-1/build_tools/kselftest/sched_ext/build/include/bpf/bpf_tracing.h:674:48: note: expanded from macro '\ BPF_PROG' 674 | static __always_inline typeof(name(0)) \ | ^ :31:1: note: expanded from here 31 | ____hotplug_exit | ^ hotplug.bpf.c:17:2: error: incomplete definition of type 'struct scx_exit_info' 17 | UEI_RECORD(uei, ei); | ^~~~~~~~~~~~~~~~~~~ /home/nipa/net-next/wt-1/tools/sched_ext/include/scx/user_exit_info.h:42:40: note: expanded from macro 'UEI_RECORD' 42 | sizeof(__uei_name.reason), (__ei)->reason); \ | ~~~~~~^ hotplug.bpf.c:15:42: note: forward declaration of 'struct scx_exit_info' 15 | void BPF_STRUCT_OPS(hotplug_exit, struct scx_exit_info *ei) | ^ hotplug.bpf.c:17:2: error: incomplete definition of type 'struct scx_exit_info' 17 | UEI_RECORD(uei, ei); | ^~~~~~~~~~~~~~~~~~~ /home/nipa/net-next/wt-1/tools/sched_ext/include/scx/user_exit_info.h:44:37: note: expanded from macro 'UEI_RECORD' 44 | sizeof(__uei_name.msg), (__ei)->msg); \ | ~~~~~~^ hotplug.bpf.c:15:42: note: forward declaration of 'struct scx_exit_info' 15 | void BPF_STRUCT_OPS(hotplug_exit, struct scx_exit_info *ei) | ^ hotplug.bpf.c:17:2: error: incomplete definition of type 'struct scx_exit_info' 17 | UEI_RECORD(uei, ei); | ^~~~~~~~~~~~~~~~~~~ /home/nipa/net-next/wt-1/tools/sched_ext/include/scx/user_exit_info.h:46:36: note: expanded from macro 'UEI_RECORD' 46 | __uei_name##_dump_len, (__ei)->dump); \ | ~~~~~~^ hotplug.bpf.c:15:42: note: forward declaration of 'struct scx_exit_info' 15 | void BPF_STRUCT_OPS(hotplug_exit, struct scx_exit_info *ei) | ^ hotplug.bpf.c:17:2: error: incomplete definition of type 'struct scx_exit_info' 17 | UEI_RECORD(uei, ei); | ^~~~~~~~~~~~~~~~~~~ /home/nipa/net-next/wt-1/tools/sched_ext/include/scx/user_exit_info.h:47:34: note: expanded from macro 'UEI_RECORD' 47 | if (bpf_core_field_exists((__ei)->exit_code)) \ | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~ /home/nipa/net-next/wt-1/build_tools/kselftest/sched_ext/build/include/bpf/bpf_core_read.h:188:49: note: expanded from macro 'bpf_core_field_exists' 188 | __builtin_preserve_field_info(___bpf_field_ref(field), BPF_FIELD_EXISTS) | ~~~~~~~~~~~~~~~~~^~~~~~ /home/nipa/net-next/wt-1/build_tools/kselftest/sched_ext/build/include/bpf/bpf_core_read.h:173:52: note: expanded from macro '___bpf_field_ref' 173 | ___bpf_apply(___bpf_field_ref, ___bpf_narg(args))(args) | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~ /home/nipa/net-next/wt-1/build_tools/kselftest/sched_ext/build/include/bpf/bpf_core_read.h:166:35: note: expanded from macro '___bpf_field_ref1' 166 | #define ___bpf_field_ref1(field) (field) | ^~~~~ hotplug.bpf.c:15:42: note: forward declaration of 'struct scx_exit_info' 15 | void BPF_STRUCT_OPS(hotplug_exit, struct scx_exit_info *ei) | ^ hotplug.bpf.c:17:2: error: incomplete definition of type 'struct scx_exit_info' 17 | UEI_RECORD(uei, ei); | ^~~~~~~~~~~~~~~~~~~ /home/nipa/net-next/wt-1/tools/sched_ext/include/scx/user_exit_info.h:48:32: note: expanded from macro 'UEI_RECORD' 48 | __uei_name.exit_code = (__ei)->exit_code; \ | ~~~~~~^ hotplug.bpf.c:15:42: note: forward declaration of 'struct scx_exit_info' 15 | void BPF_STRUCT_OPS(hotplug_exit, struct scx_exit_info *ei) | ^ hotplug.bpf.c:17:2: error: incomplete definition of type 'struct scx_exit_info' 17 | UEI_RECORD(uei, ei); | ^~~~~~~~~~~~~~~~~~~ /home/nipa/net-next/wt-1/tools/sched_ext/include/scx/user_exit_info.h:51:15: note: expanded from macro 'UEI_RECORD' 51 | (__ei)->kind); \ | ~~~~~~^ hotplug.bpf.c:15:42: note: forward declaration of 'struct scx_exit_info' 15 | void BPF_STRUCT_OPS(hotplug_exit, struct scx_exit_info *ei) | ^ hotplug.bpf.c:28:13: error: use of undeclared identifier 'SCX_ECODE_ACT_RESTART' 28 | s64 code = SCX_ECODE_ACT_RESTART | HOTPLUG_EXIT_RSN; | ^ hotplug.bpf.c:48:22: error: variable has incomplete type 'struct sched_ext_ops' 48 | struct sched_ext_ops hotplug_cb_ops = { | ^ hotplug.bpf.c:48:8: note: forward declaration of 'struct sched_ext_ops' 48 | struct sched_ext_ops hotplug_cb_ops = { | ^ hotplug.bpf.c:57:22: error: variable has incomplete type 'struct sched_ext_ops' 57 | struct sched_ext_ops hotplug_nocb_ops = { | ^ hotplug.bpf.c:48:8: note: forward declaration of 'struct sched_ext_ops' 48 | struct sched_ext_ops hotplug_cb_ops = { | ^ 9 warnings and 11 errors generated. make[1]: *** [Makefile:136: /home/nipa/net-next/wt-1/build_tools/kselftest/sched_ext/build/obj/sched_ext/hotplug.bpf.o] Error 1 ====== Checking if tree is clean ====== ?? tools/testing/selftests/net/packetdrill/tcp_inq.py