====== 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/bpf/wt-0/build_tools/kselftest/alsa/global-timer <- /home/nipa/bpf/wt-0/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/bpf/wt-0/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/bpf/wt-0/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/bpf/wt-0/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/bpf/wt-0/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/bpf/wt-0/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/bpf/wt-0/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/bpf/wt-0/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/bpf/wt-0/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/bpf/wt-0/tools/sched_ext/include/scx/common.bpf.h:140:32: note: expanded from macro 'BPF_STRUCT_OPS' 140 | SEC("struct_ops/"#name) \ | ^ /home/nipa/bpf/wt-0/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/bpf/wt-0/tools/sched_ext/include/scx/common.bpf.h:140:32: note: expanded from macro 'BPF_STRUCT_OPS' 140 | SEC("struct_ops/"#name) \ | ^ /home/nipa/bpf/wt-0/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/bpf/wt-0/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/bpf/wt-0/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/bpf/wt-0/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/bpf/wt-0/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/bpf/wt-0/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/bpf/wt-0/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/bpf/wt-0/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/bpf/wt-0/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/bpf/wt-0/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/bpf/wt-0/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/bpf/wt-0/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/bpf/wt-0/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/bpf/wt-0/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/bpf/wt-0/tools/sched_ext/include/scx/common.bpf.h:140:32: note: expanded from macro 'BPF_STRUCT_OPS' 140 | SEC("struct_ops/"#name) \ | ^ /home/nipa/bpf/wt-0/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/bpf/wt-0/tools/sched_ext/include/scx/common.bpf.h:140:32: note: expanded from macro 'BPF_STRUCT_OPS' 140 | SEC("struct_ops/"#name) \ | ^ /home/nipa/bpf/wt-0/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/bpf/wt-0/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/bpf/wt-0/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/bpf/wt-0/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/bpf/wt-0/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/bpf/wt-0/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/bpf/wt-0/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/bpf/wt-0/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/bpf/wt-0/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/bpf/wt-0/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/bpf/wt-0/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/bpf/wt-0/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/bpf/wt-0/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/bpf/wt-0/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/bpf/wt-0/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/bpf/wt-0/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/bpf/wt-0/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/bpf/wt-0/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/bpf/wt-0/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/bpf/wt-0/tools/sched_ext/include/scx/common.bpf.h:140:32: note: expanded from macro 'BPF_STRUCT_OPS' 140 | SEC("struct_ops/"#name) \ | ^ /home/nipa/bpf/wt-0/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/bpf/wt-0/tools/sched_ext/include/scx/common.bpf.h:140:32: note: expanded from macro 'BPF_STRUCT_OPS' 140 | SEC("struct_ops/"#name) \ | ^ /home/nipa/bpf/wt-0/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/bpf/wt-0/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/bpf/wt-0/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/bpf/wt-0/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/bpf/wt-0/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/bpf/wt-0/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/bpf/wt-0/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/bpf/wt-0/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/bpf/wt-0/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/bpf/wt-0/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/bpf/wt-0/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/bpf/wt-0/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/bpf/wt-0/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/bpf/wt-0/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/bpf/wt-0/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/bpf/wt-0/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/bpf/wt-0/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/bpf/wt-0/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/bpf/wt-0/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/bpf/wt-0/tools/sched_ext/include/scx/common.bpf.h:140:32: note: expanded from macro 'BPF_STRUCT_OPS' 140 | SEC("struct_ops/"#name) \ | ^ /home/nipa/bpf/wt-0/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/bpf/wt-0/tools/sched_ext/include/scx/common.bpf.h:140:32: note: expanded from macro 'BPF_STRUCT_OPS' 140 | SEC("struct_ops/"#name) \ | ^ /home/nipa/bpf/wt-0/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/bpf/wt-0/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/bpf/wt-0/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/bpf/wt-0/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/bpf/wt-0/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/bpf/wt-0/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/bpf/wt-0/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/bpf/wt-0/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/bpf/wt-0/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/bpf/wt-0/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/bpf/wt-0/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/bpf/wt-0/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/bpf/wt-0/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/bpf/wt-0/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/bpf/wt-0/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/bpf/wt-0/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/bpf/wt-0/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/bpf/wt-0/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/bpf/wt-0/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/bpf/wt-0/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/bpf/wt-0/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/bpf/wt-0/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/bpf/wt-0/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/bpf/wt-0/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/bpf/wt-0/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/bpf/wt-0/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/bpf/wt-0/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/bpf/wt-0/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/bpf/wt-0/build_tools/kselftest/sched_ext/build/obj/sched_ext/enq_select_cpu_fails.bpf.o] Error 1 ====== Building the tree before the patch ====== make[1]: Circular /home/nipa/bpf/wt-0/build_tools/kselftest/alsa/global-timer <- /home/nipa/bpf/wt-0/build_tools/kselftest/alsa/global-timer dependency dropped. In file included from ddsp_bogus_dsq_fail.bpf.c:7: /home/nipa/bpf/wt-0/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/bpf/wt-0/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/bpf/wt-0/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/bpf/wt-0/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/bpf/wt-0/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/bpf/wt-0/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/bpf/wt-0/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/bpf/wt-0/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/bpf/wt-0/tools/sched_ext/include/scx/common.bpf.h:140:32: note: expanded from macro 'BPF_STRUCT_OPS' 140 | SEC("struct_ops/"#name) \ | ^ /home/nipa/bpf/wt-0/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/bpf/wt-0/tools/sched_ext/include/scx/common.bpf.h:140:32: note: expanded from macro 'BPF_STRUCT_OPS' 140 | SEC("struct_ops/"#name) \ | ^ /home/nipa/bpf/wt-0/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/bpf/wt-0/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/bpf/wt-0/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/bpf/wt-0/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/bpf/wt-0/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/bpf/wt-0/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/bpf/wt-0/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/bpf/wt-0/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/bpf/wt-0/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/bpf/wt-0/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/bpf/wt-0/build_tools/kselftest/sched_ext/build/obj/sched_ext/ddsp_bogus_dsq_fail.bpf.o] Error 1 make[1]: *** Waiting for unfinished jobs.... In file included from create_dsq.bpf.c:9: /home/nipa/bpf/wt-0/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/bpf/wt-0/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/bpf/wt-0/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/bpf/wt-0/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/bpf/wt-0/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/bpf/wt-0/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/bpf/wt-0/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/bpf/wt-0/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/bpf/wt-0/tools/sched_ext/include/scx/common.bpf.h:140:32: note: expanded from macro 'BPF_STRUCT_OPS' 140 | SEC("struct_ops/"#name) \ | ^ /home/nipa/bpf/wt-0/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/bpf/wt-0/tools/sched_ext/include/scx/common.bpf.h:140:32: note: expanded from macro 'BPF_STRUCT_OPS' 140 | SEC("struct_ops/"#name) \ | ^ /home/nipa/bpf/wt-0/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/bpf/wt-0/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/bpf/wt-0/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/bpf/wt-0/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/bpf/wt-0/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/bpf/wt-0/build_tools/kselftest/sched_ext/build/obj/sched_ext/create_dsq.bpf.o] Error 1 In file included from enq_last_no_enq_fails.bpf.c:11: /home/nipa/bpf/wt-0/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/bpf/wt-0/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/bpf/wt-0/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/bpf/wt-0/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/bpf/wt-0/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/bpf/wt-0/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/bpf/wt-0/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/bpf/wt-0/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/bpf/wt-0/build_tools/kselftest/sched_ext/build/obj/sched_ext/enq_last_no_enq_fails.bpf.o] Error 1 In file included from ddsp_vtimelocal_fail.bpf.c:7: /home/nipa/bpf/wt-0/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/bpf/wt-0/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/bpf/wt-0/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/bpf/wt-0/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/bpf/wt-0/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/bpf/wt-0/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/bpf/wt-0/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/bpf/wt-0/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/bpf/wt-0/tools/sched_ext/include/scx/common.bpf.h:140:32: note: expanded from macro 'BPF_STRUCT_OPS' 140 | SEC("struct_ops/"#name) \ | ^ /home/nipa/bpf/wt-0/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/bpf/wt-0/tools/sched_ext/include/scx/common.bpf.h:140:32: note: expanded from macro 'BPF_STRUCT_OPS' 140 | SEC("struct_ops/"#name) \ | ^ /home/nipa/bpf/wt-0/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/bpf/wt-0/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/bpf/wt-0/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/bpf/wt-0/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/bpf/wt-0/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/bpf/wt-0/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/bpf/wt-0/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/bpf/wt-0/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/bpf/wt-0/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/bpf/wt-0/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/bpf/wt-0/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/bpf/wt-0/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/bpf/wt-0/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/bpf/wt-0/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/bpf/wt-0/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/bpf/wt-0/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/bpf/wt-0/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/bpf/wt-0/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/bpf/wt-0/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/bpf/wt-0/tools/sched_ext/include/scx/common.bpf.h:140:32: note: expanded from macro 'BPF_STRUCT_OPS' 140 | SEC("struct_ops/"#name) \ | ^ /home/nipa/bpf/wt-0/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/bpf/wt-0/tools/sched_ext/include/scx/common.bpf.h:140:32: note: expanded from macro 'BPF_STRUCT_OPS' 140 | SEC("struct_ops/"#name) \ | ^ /home/nipa/bpf/wt-0/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/bpf/wt-0/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/bpf/wt-0/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/bpf/wt-0/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/bpf/wt-0/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/bpf/wt-0/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/bpf/wt-0/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/bpf/wt-0/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/bpf/wt-0/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/bpf/wt-0/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/bpf/wt-0/build_tools/kselftest/sched_ext/build/obj/sched_ext/dsp_local_on.bpf.o] Error 1 In file included from hotplug.bpf.c:7: /home/nipa/bpf/wt-0/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/bpf/wt-0/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/bpf/wt-0/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/bpf/wt-0/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/bpf/wt-0/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/bpf/wt-0/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/bpf/wt-0/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/bpf/wt-0/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/bpf/wt-0/tools/sched_ext/include/scx/common.bpf.h:140:32: note: expanded from macro 'BPF_STRUCT_OPS' 140 | SEC("struct_ops/"#name) \ | ^ /home/nipa/bpf/wt-0/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/bpf/wt-0/tools/sched_ext/include/scx/common.bpf.h:140:32: note: expanded from macro 'BPF_STRUCT_OPS' 140 | SEC("struct_ops/"#name) \ | ^ /home/nipa/bpf/wt-0/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/bpf/wt-0/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/bpf/wt-0/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/bpf/wt-0/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/bpf/wt-0/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/bpf/wt-0/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/bpf/wt-0/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/bpf/wt-0/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/bpf/wt-0/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/bpf/wt-0/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/bpf/wt-0/build_tools/kselftest/sched_ext/build/obj/sched_ext/hotplug.bpf.o] Error 1 In file included from enq_select_cpu_fails.bpf.c:8: /home/nipa/bpf/wt-0/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/bpf/wt-0/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/bpf/wt-0/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/bpf/wt-0/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/bpf/wt-0/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/bpf/wt-0/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/bpf/wt-0/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/bpf/wt-0/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/bpf/wt-0/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/bpf/wt-0/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/bpf/wt-0/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/bpf/wt-0/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/bpf/wt-0/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/bpf/wt-0/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/bpf/wt-0/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/bpf/wt-0/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/bpf/wt-0/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/bpf/wt-0/tools/sched_ext/include/scx/common.bpf.h:140:32: note: expanded from macro 'BPF_STRUCT_OPS' 140 | SEC("struct_ops/"#name) \ | ^ /home/nipa/bpf/wt-0/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/bpf/wt-0/tools/sched_ext/include/scx/common.bpf.h:140:32: note: expanded from macro 'BPF_STRUCT_OPS' 140 | SEC("struct_ops/"#name) \ | ^ /home/nipa/bpf/wt-0/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/bpf/wt-0/tools/sched_ext/include/scx/common.bpf.h:140:32: note: expanded from macro 'BPF_STRUCT_OPS' 140 | SEC("struct_ops/"#name) \ | ^ /home/nipa/bpf/wt-0/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/bpf/wt-0/tools/sched_ext/include/scx/common.bpf.h:140:32: note: expanded from macro 'BPF_STRUCT_OPS' 140 | SEC("struct_ops/"#name) \ | ^ /home/nipa/bpf/wt-0/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/bpf/wt-0/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/bpf/wt-0/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/bpf/wt-0/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/bpf/wt-0/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/bpf/wt-0/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/bpf/wt-0/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/bpf/wt-0/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/bpf/wt-0/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/bpf/wt-0/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/bpf/wt-0/build_tools/kselftest/sched_ext/build/obj/sched_ext/exit.bpf.o] Error 1 In file included from init_enable_count.bpf.c:11: /home/nipa/bpf/wt-0/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/bpf/wt-0/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/bpf/wt-0/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/bpf/wt-0/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/bpf/wt-0/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/bpf/wt-0/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/bpf/wt-0/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/bpf/wt-0/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/bpf/wt-0/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/bpf/wt-0/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/bpf/wt-0/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/bpf/wt-0/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/bpf/wt-0/build_tools/kselftest/sched_ext/build/obj/sched_ext/init_enable_count.bpf.o] Error 1 ====== Checking if tree is clean ====== ====== Building the tree with the patch ====== make[1]: Circular /home/nipa/bpf/wt-0/build_tools/kselftest/alsa/global-timer <- /home/nipa/bpf/wt-0/build_tools/kselftest/alsa/global-timer dependency dropped. In file included from create_dsq.bpf.c:9: /home/nipa/bpf/wt-0/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/bpf/wt-0/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/bpf/wt-0/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/bpf/wt-0/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/bpf/wt-0/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/bpf/wt-0/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/bpf/wt-0/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/bpf/wt-0/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/bpf/wt-0/tools/sched_ext/include/scx/common.bpf.h:140:32: note: expanded from macro 'BPF_STRUCT_OPS' 140 | SEC("struct_ops/"#name) \ | ^ /home/nipa/bpf/wt-0/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/bpf/wt-0/tools/sched_ext/include/scx/common.bpf.h:140:32: note: expanded from macro 'BPF_STRUCT_OPS' 140 | SEC("struct_ops/"#name) \ | ^ /home/nipa/bpf/wt-0/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/bpf/wt-0/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/bpf/wt-0/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/bpf/wt-0/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/bpf/wt-0/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/bpf/wt-0/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/bpf/wt-0/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/bpf/wt-0/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/bpf/wt-0/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/bpf/wt-0/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/bpf/wt-0/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/bpf/wt-0/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/bpf/wt-0/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/bpf/wt-0/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/bpf/wt-0/tools/sched_ext/include/scx/common.bpf.h:140:32: note: expanded from macro 'BPF_STRUCT_OPS' 140 | SEC("struct_ops/"#name) \ | ^ /home/nipa/bpf/wt-0/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/bpf/wt-0/tools/sched_ext/include/scx/common.bpf.h:140:32: note: expanded from macro 'BPF_STRUCT_OPS' 140 | SEC("struct_ops/"#name) \ | ^ /home/nipa/bpf/wt-0/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/bpf/wt-0/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/bpf/wt-0/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/bpf/wt-0/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/bpf/wt-0/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/bpf/wt-0/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/bpf/wt-0/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/bpf/wt-0/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/bpf/wt-0/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/bpf/wt-0/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/bpf/wt-0/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/bpf/wt-0/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/bpf/wt-0/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/bpf/wt-0/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/bpf/wt-0/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/bpf/wt-0/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/bpf/wt-0/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/bpf/wt-0/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/bpf/wt-0/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/bpf/wt-0/tools/sched_ext/include/scx/common.bpf.h:140:32: note: expanded from macro 'BPF_STRUCT_OPS' 140 | SEC("struct_ops/"#name) \ | ^ /home/nipa/bpf/wt-0/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/bpf/wt-0/tools/sched_ext/include/scx/common.bpf.h:140:32: note: expanded from macro 'BPF_STRUCT_OPS' 140 | SEC("struct_ops/"#name) \ | ^ /home/nipa/bpf/wt-0/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/bpf/wt-0/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/bpf/wt-0/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/bpf/wt-0/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/bpf/wt-0/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/bpf/wt-0/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/bpf/wt-0/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/bpf/wt-0/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/bpf/wt-0/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/bpf/wt-0/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/bpf/wt-0/build_tools/kselftest/sched_ext/build/obj/sched_ext/ddsp_vtimelocal_fail.bpf.o] Error 1 In file included from enq_select_cpu_fails.bpf.c:8: /home/nipa/bpf/wt-0/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/bpf/wt-0/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/bpf/wt-0/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/bpf/wt-0/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/bpf/wt-0/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/bpf/wt-0/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/bpf/wt-0/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/bpf/wt-0/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/bpf/wt-0/build_tools/kselftest/sched_ext/build/obj/sched_ext/enq_select_cpu_fails.bpf.o] Error 1 In file included from dsp_local_on.bpf.c:6: /home/nipa/bpf/wt-0/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/bpf/wt-0/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/bpf/wt-0/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/bpf/wt-0/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/bpf/wt-0/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/bpf/wt-0/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/bpf/wt-0/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/bpf/wt-0/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/bpf/wt-0/tools/sched_ext/include/scx/common.bpf.h:140:32: note: expanded from macro 'BPF_STRUCT_OPS' 140 | SEC("struct_ops/"#name) \ | ^ /home/nipa/bpf/wt-0/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/bpf/wt-0/tools/sched_ext/include/scx/common.bpf.h:140:32: note: expanded from macro 'BPF_STRUCT_OPS' 140 | SEC("struct_ops/"#name) \ | ^ /home/nipa/bpf/wt-0/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/bpf/wt-0/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/bpf/wt-0/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/bpf/wt-0/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/bpf/wt-0/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/bpf/wt-0/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/bpf/wt-0/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/bpf/wt-0/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/bpf/wt-0/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/bpf/wt-0/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/bpf/wt-0/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/bpf/wt-0/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/bpf/wt-0/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/bpf/wt-0/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/bpf/wt-0/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/bpf/wt-0/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/bpf/wt-0/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/bpf/wt-0/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/bpf/wt-0/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/bpf/wt-0/build_tools/kselftest/sched_ext/build/obj/sched_ext/enq_last_no_enq_fails.bpf.o] Error 1 In file included from init_enable_count.bpf.c:11: /home/nipa/bpf/wt-0/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/bpf/wt-0/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/bpf/wt-0/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/bpf/wt-0/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/bpf/wt-0/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/bpf/wt-0/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/bpf/wt-0/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/bpf/wt-0/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/bpf/wt-0/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/bpf/wt-0/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/bpf/wt-0/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/bpf/wt-0/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/bpf/wt-0/build_tools/kselftest/sched_ext/build/obj/sched_ext/init_enable_count.bpf.o] Error 1 In file included from exit.bpf.c:7: /home/nipa/bpf/wt-0/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/bpf/wt-0/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/bpf/wt-0/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/bpf/wt-0/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/bpf/wt-0/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/bpf/wt-0/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/bpf/wt-0/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/bpf/wt-0/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/bpf/wt-0/tools/sched_ext/include/scx/common.bpf.h:140:32: note: expanded from macro 'BPF_STRUCT_OPS' 140 | SEC("struct_ops/"#name) \ | ^ /home/nipa/bpf/wt-0/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/bpf/wt-0/tools/sched_ext/include/scx/common.bpf.h:140:32: note: expanded from macro 'BPF_STRUCT_OPS' 140 | SEC("struct_ops/"#name) \ | ^ /home/nipa/bpf/wt-0/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/bpf/wt-0/tools/sched_ext/include/scx/common.bpf.h:140:32: note: expanded from macro 'BPF_STRUCT_OPS' 140 | SEC("struct_ops/"#name) \ | ^ /home/nipa/bpf/wt-0/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/bpf/wt-0/tools/sched_ext/include/scx/common.bpf.h:140:32: note: expanded from macro 'BPF_STRUCT_OPS' 140 | SEC("struct_ops/"#name) \ | ^ /home/nipa/bpf/wt-0/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/bpf/wt-0/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/bpf/wt-0/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/bpf/wt-0/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/bpf/wt-0/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/bpf/wt-0/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/bpf/wt-0/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/bpf/wt-0/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/bpf/wt-0/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/bpf/wt-0/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/bpf/wt-0/build_tools/kselftest/sched_ext/build/obj/sched_ext/exit.bpf.o] Error 1 In file included from hotplug.bpf.c:7: /home/nipa/bpf/wt-0/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/bpf/wt-0/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/bpf/wt-0/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/bpf/wt-0/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/bpf/wt-0/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/bpf/wt-0/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/bpf/wt-0/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/bpf/wt-0/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/bpf/wt-0/tools/sched_ext/include/scx/common.bpf.h:140:32: note: expanded from macro 'BPF_STRUCT_OPS' 140 | SEC("struct_ops/"#name) \ | ^ /home/nipa/bpf/wt-0/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/bpf/wt-0/tools/sched_ext/include/scx/common.bpf.h:140:32: note: expanded from macro 'BPF_STRUCT_OPS' 140 | SEC("struct_ops/"#name) \ | ^ /home/nipa/bpf/wt-0/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/bpf/wt-0/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/bpf/wt-0/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/bpf/wt-0/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/bpf/wt-0/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/bpf/wt-0/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/bpf/wt-0/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/bpf/wt-0/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/bpf/wt-0/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/bpf/wt-0/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/bpf/wt-0/build_tools/kselftest/sched_ext/build/obj/sched_ext/hotplug.bpf.o] Error 1 ====== Checking if tree is clean ======