====== Cleaning ====== ../../../scripts/Makefile.include:4: *** O=build_tools/ does not exist. Stop. make[1]: *** nsfs: No such file or directory. Stop. ====== Baseline building the tree ====== In file included from iommufd_utils.h:11, from iommufd.c:12: In function ‘_test_cmd_get_hw_info’, inlined from ‘iommufd_ioas_get_hw_info’ at iommufd.c:779:3, inlined from ‘wrapper_iommufd_ioas_get_hw_info’ at iommufd.c:752:1: iommufd_utils.h:804:37: warning: array subscript ‘struct iommu_test_hw_info[0]’ is partly outside array bounds of ‘struct iommu_test_hw_info_buffer_smaller[1]’ [-Warray-bounds=] 804 | assert(!info->flags); | ~~~~^~~~~~~ iommufd.c: In function ‘wrapper_iommufd_ioas_get_hw_info’: iommufd.c:761:11: note: object ‘buffer_smaller’ of size 4 761 | } buffer_smaller; | ^~~~~~~~~~~~~~ mount_setattr_test.c:176:19: error: redefinition of ‘sys_open_tree’ 176 | static inline int sys_open_tree(int dfd, const char *filename, unsigned int flags) | ^~~~~~~~~~~~~ In file included from mount_setattr_test.c:23: ../filesystems/overlayfs/wrappers.h:59:19: note: previous definition of ‘sys_open_tree’ with type ‘int(int, const char *, unsigned int)’ 59 | static inline int sys_open_tree(int dfd, const char *filename, unsigned int flags) | ^~~~~~~~~~~~~ make[1]: *** [../lib.mk:222: /home/nipa/bpf-next/wt-0/build_tools/kselftest/mount_setattr/mount_setattr_test] Error 1 make[1]: *** nsfs: No such file or directory. Stop. pid_max.c: In function ‘pid_max_cb’: pid_max.c:42:15: error: implicit declaration of function ‘mount’ [-Wimplicit-function-declaration] 42 | ret = mount("", "/", NULL, MS_PRIVATE | MS_REC, 0); | ^~~~~ pid_max.c:42:36: error: ‘MS_PRIVATE’ undeclared (first use in this function); did you mean ‘MAP_PRIVATE’? 42 | ret = mount("", "/", NULL, MS_PRIVATE | MS_REC, 0); | ^~~~~~~~~~ | MAP_PRIVATE pid_max.c:42:36: note: each undeclared identifier is reported only once for each function it appears in pid_max.c:42:49: error: ‘MS_REC’ undeclared (first use in this function) 42 | ret = mount("", "/", NULL, MS_PRIVATE | MS_REC, 0); | ^~~~~~ pid_max.c:48:9: error: implicit declaration of function ‘umount2’; did you mean ‘SYS_umount2’? [-Wimplicit-function-declaration] 48 | umount2("/proc", MNT_DETACH); | ^~~~~~~ | SYS_umount2 pid_max.c:48:26: error: ‘MNT_DETACH’ undeclared (first use in this function) 48 | umount2("/proc", MNT_DETACH); | ^~~~~~~~~~ pid_max.c: In function ‘pid_max_nested_inner’: pid_max.c:88:36: error: ‘MS_PRIVATE’ undeclared (first use in this function); did you mean ‘MAP_PRIVATE’? 88 | ret = mount("", "/", NULL, MS_PRIVATE | MS_REC, 0); | ^~~~~~~~~~ | MAP_PRIVATE pid_max.c:88:49: error: ‘MS_REC’ undeclared (first use in this function) 88 | ret = mount("", "/", NULL, MS_PRIVATE | MS_REC, 0); | ^~~~~~ pid_max.c:94:26: error: ‘MNT_DETACH’ undeclared (first use in this function) 94 | umount2("/proc", MNT_DETACH); | ^~~~~~~~~~ pid_max.c: In function ‘pid_max_nested_outer’: pid_max.c:163:36: error: ‘MS_PRIVATE’ undeclared (first use in this function); did you mean ‘MAP_PRIVATE’? 163 | ret = mount("", "/", NULL, MS_PRIVATE | MS_REC, 0); | ^~~~~~~~~~ | MAP_PRIVATE pid_max.c:163:49: error: ‘MS_REC’ undeclared (first use in this function) 163 | ret = mount("", "/", NULL, MS_PRIVATE | MS_REC, 0); | ^~~~~~ pid_max.c:169:26: error: ‘MNT_DETACH’ undeclared (first use in this function) 169 | umount2("/proc", MNT_DETACH); | ^~~~~~~~~~ pid_max.c: In function ‘pid_max_nested_limit_inner’: pid_max.c:232:36: error: ‘MS_PRIVATE’ undeclared (first use in this function); did you mean ‘MAP_PRIVATE’? 232 | ret = mount("", "/", NULL, MS_PRIVATE | MS_REC, 0); | ^~~~~~~~~~ | MAP_PRIVATE pid_max.c:232:49: error: ‘MS_REC’ undeclared (first use in this function) 232 | ret = mount("", "/", NULL, MS_PRIVATE | MS_REC, 0); | ^~~~~~ pid_max.c:238:26: error: ‘MNT_DETACH’ undeclared (first use in this function) 238 | umount2("/proc", MNT_DETACH); | ^~~~~~~~~~ pid_max.c: In function ‘pid_max_nested_limit_outer’: pid_max.c:289:36: error: ‘MS_PRIVATE’ undeclared (first use in this function); did you mean ‘MAP_PRIVATE’? 289 | ret = mount("", "/", NULL, MS_PRIVATE | MS_REC, 0); | ^~~~~~~~~~ | MAP_PRIVATE pid_max.c:289:49: error: ‘MS_REC’ undeclared (first use in this function) 289 | ret = mount("", "/", NULL, MS_PRIVATE | MS_REC, 0); | ^~~~~~ pid_max.c:295:26: error: ‘MNT_DETACH’ undeclared (first use in this function) 295 | umount2("/proc", MNT_DETACH); | ^~~~~~~~~~ make[1]: *** [../lib.mk:222: /home/nipa/bpf-next/wt-0/build_tools/kselftest/pid_namespace/pid_max] Error 1 make[1]: *** Waiting for unfinished jobs.... In file included from kublk.c:6: kublk.h:23:10: fatal error: liburing.h: No such file or directory 23 | #include | ^~~~~~~~~~~~ compilation terminated. In file included from null.c:3: kublk.h:23:10: fatal error: liburing.h: No such file or directory 23 | #include | ^~~~~~~~~~~~ compilation terminated. In file included from file_backed.c:3: kublk.h:23:10: fatal error: liburing.h: No such file or directory 23 | #include | ^~~~~~~~~~~~ compilation terminated. In file included from common.c:3: kublk.h:23:10: fatal error: liburing.h: No such file or directory 23 | #include | ^~~~~~~~~~~~ compilation terminated. In file included from stripe.c:3: kublk.h:23:10: fatal error: liburing.h: No such file or directory 23 | #include | ^~~~~~~~~~~~ compilation terminated. make[1]: *** [../lib.mk:222: /home/nipa/bpf-next/wt-0/build_tools/kselftest/ublk/kublk] Error 1 ====== Building the tree before the patch ====== mount_setattr_test.c:176:19: error: redefinition of ‘sys_open_tree’ 176 | static inline int sys_open_tree(int dfd, const char *filename, unsigned int flags) | ^~~~~~~~~~~~~ In file included from mount_setattr_test.c:23: ../filesystems/overlayfs/wrappers.h:59:19: note: previous definition of ‘sys_open_tree’ with type ‘int(int, const char *, unsigned int)’ 59 | static inline int sys_open_tree(int dfd, const char *filename, unsigned int flags) | ^~~~~~~~~~~~~ make[1]: *** [../lib.mk:222: /home/nipa/bpf-next/wt-0/build_tools/kselftest/mount_setattr/mount_setattr_test] Error 1 make[1]: *** nsfs: No such file or directory. Stop. pid_max.c: In function ‘pid_max_cb’: pid_max.c:42:15: error: implicit declaration of function ‘mount’ [-Wimplicit-function-declaration] 42 | ret = mount("", "/", NULL, MS_PRIVATE | MS_REC, 0); | ^~~~~ pid_max.c:42:36: error: ‘MS_PRIVATE’ undeclared (first use in this function); did you mean ‘MAP_PRIVATE’? 42 | ret = mount("", "/", NULL, MS_PRIVATE | MS_REC, 0); | ^~~~~~~~~~ | MAP_PRIVATE pid_max.c:42:36: note: each undeclared identifier is reported only once for each function it appears in pid_max.c:42:49: error: ‘MS_REC’ undeclared (first use in this function) 42 | ret = mount("", "/", NULL, MS_PRIVATE | MS_REC, 0); | ^~~~~~ pid_max.c:48:9: error: implicit declaration of function ‘umount2’; did you mean ‘SYS_umount2’? [-Wimplicit-function-declaration] 48 | umount2("/proc", MNT_DETACH); | ^~~~~~~ | SYS_umount2 pid_max.c:48:26: error: ‘MNT_DETACH’ undeclared (first use in this function) 48 | umount2("/proc", MNT_DETACH); | ^~~~~~~~~~ pid_max.c: In function ‘pid_max_nested_inner’: pid_max.c:88:36: error: ‘MS_PRIVATE’ undeclared (first use in this function); did you mean ‘MAP_PRIVATE’? 88 | ret = mount("", "/", NULL, MS_PRIVATE | MS_REC, 0); | ^~~~~~~~~~ | MAP_PRIVATE pid_max.c:88:49: error: ‘MS_REC’ undeclared (first use in this function) 88 | ret = mount("", "/", NULL, MS_PRIVATE | MS_REC, 0); | ^~~~~~ pid_max.c:94:26: error: ‘MNT_DETACH’ undeclared (first use in this function) 94 | umount2("/proc", MNT_DETACH); | ^~~~~~~~~~ pid_max.c: In function ‘pid_max_nested_outer’: pid_max.c:163:36: error: ‘MS_PRIVATE’ undeclared (first use in this function); did you mean ‘MAP_PRIVATE’? 163 | ret = mount("", "/", NULL, MS_PRIVATE | MS_REC, 0); | ^~~~~~~~~~ | MAP_PRIVATE pid_max.c:163:49: error: ‘MS_REC’ undeclared (first use in this function) 163 | ret = mount("", "/", NULL, MS_PRIVATE | MS_REC, 0); | ^~~~~~ pid_max.c:169:26: error: ‘MNT_DETACH’ undeclared (first use in this function) 169 | umount2("/proc", MNT_DETACH); | ^~~~~~~~~~ pid_max.c: In function ‘pid_max_nested_limit_inner’: pid_max.c:232:36: error: ‘MS_PRIVATE’ undeclared (first use in this function); did you mean ‘MAP_PRIVATE’? 232 | ret = mount("", "/", NULL, MS_PRIVATE | MS_REC, 0); | ^~~~~~~~~~ | MAP_PRIVATE pid_max.c:232:49: error: ‘MS_REC’ undeclared (first use in this function) 232 | ret = mount("", "/", NULL, MS_PRIVATE | MS_REC, 0); | ^~~~~~ pid_max.c:238:26: error: ‘MNT_DETACH’ undeclared (first use in this function) 238 | umount2("/proc", MNT_DETACH); | ^~~~~~~~~~ pid_max.c: In function ‘pid_max_nested_limit_outer’: pid_max.c:289:36: error: ‘MS_PRIVATE’ undeclared (first use in this function); did you mean ‘MAP_PRIVATE’? 289 | ret = mount("", "/", NULL, MS_PRIVATE | MS_REC, 0); | ^~~~~~~~~~ | MAP_PRIVATE pid_max.c:289:49: error: ‘MS_REC’ undeclared (first use in this function) 289 | ret = mount("", "/", NULL, MS_PRIVATE | MS_REC, 0); | ^~~~~~ pid_max.c:295:26: error: ‘MNT_DETACH’ undeclared (first use in this function) 295 | umount2("/proc", MNT_DETACH); | ^~~~~~~~~~ make[1]: *** [../lib.mk:222: /home/nipa/bpf-next/wt-0/build_tools/kselftest/pid_namespace/pid_max] Error 1 In file included from kublk.c:6: kublk.h:23:10: fatal error: liburing.h: No such file or directory 23 | #include | ^~~~~~~~~~~~ compilation terminated. In file included from null.c:3: kublk.h:23:10: fatal error: liburing.h: No such file or directory 23 | #include | ^~~~~~~~~~~~ compilation terminated. In file included from file_backed.c:3: kublk.h:23:10: fatal error: liburing.h: No such file or directory 23 | #include | ^~~~~~~~~~~~ compilation terminated. In file included from common.c:3: kublk.h:23:10: fatal error: liburing.h: No such file or directory 23 | #include | ^~~~~~~~~~~~ compilation terminated. In file included from stripe.c:3: kublk.h:23:10: fatal error: liburing.h: No such file or directory 23 | #include | ^~~~~~~~~~~~ compilation terminated. make[1]: *** [../lib.mk:222: /home/nipa/bpf-next/wt-0/build_tools/kselftest/ublk/kublk] Error 1 ====== Checking if tree is clean ====== ?? arch/x86/Makefile.orig ?? arch/x86/Makefile.rej ====== Building the tree with the patch ====== skeleton/stream.bpf.c:42:11: error: call to undeclared function 'bpf_prog_stream_get'; ISO C99 and later do not support implicit function declarations [-Wimplicit-function-declaration] 42 | stream = bpf_prog_stream_get(BPF_STDERR, prog_id); | ^ skeleton/stream.bpf.c:42:31: error: use of undeclared identifier 'BPF_STDERR' 42 | stream = bpf_prog_stream_get(BPF_STDERR, prog_id); | ^ skeleton/stream.bpf.c:51:16: error: call to undeclared function 'bpf_stream_next_elem_batch'; ISO C99 and later do not support implicit function declarations [-Wimplicit-function-declaration] 51 | elem_batch = bpf_stream_next_elem_batch(stream); | ^ skeleton/stream.bpf.c:51:14: error: incompatible integer to pointer conversion assigning to 'struct bpf_stream_elem_batch *' from 'int' [-Wint-conversion] 51 | elem_batch = bpf_stream_next_elem_batch(stream); | ^ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ skeleton/stream.bpf.c:59:10: error: call to undeclared function 'bpf_stream_next_elem'; ISO C99 and later do not support implicit function declarations [-Wimplicit-function-declaration] 59 | elem = bpf_stream_next_elem(elem_batch); | ^ skeleton/stream.bpf.c:59:8: error: incompatible integer to pointer conversion assigning to 'struct bpf_stream_elem *' from 'int' [-Wint-conversion] 59 | elem = bpf_stream_next_elem(elem_batch); | ^ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ skeleton/stream.bpf.c:62:14: error: incomplete definition of type 'struct bpf_stream_elem' 62 | size = elem->mem_slice.len; | ~~~~^ skeleton/stream.bpf.c:36:9: note: forward declaration of 'struct bpf_stream_elem' 36 | struct bpf_stream_elem *elem; | ^ skeleton/stream.bpf.c:64:7: error: call to undeclared function 'bpf_dynptr_from_mem_slice'; ISO C99 and later do not support implicit function declarations [-Wimplicit-function-declaration] 64 | if (bpf_dynptr_from_mem_slice(&elem->mem_slice, 0, &src_dptr)) | ^ skeleton/stream.bpf.c:64:7: note: did you mean 'bpf_dynptr_from_skb'? /home/nipa/bpf-next/wt-0/build_tools/kselftest/hid/tools/build/bpftool/vmlinux.h:157855:12: note: 'bpf_dynptr_from_skb' declared here 157855 | extern int bpf_dynptr_from_skb(struct __sk_buff *s, u64 flags, struct bpf_dynptr *ptr__uninit) __weak __ksym; | ^ skeleton/stream.bpf.c:64:38: error: incomplete definition of type 'struct bpf_stream_elem' 64 | if (bpf_dynptr_from_mem_slice(&elem->mem_slice, 0, &src_dptr)) | ~~~~^ skeleton/stream.bpf.c:36:9: note: forward declaration of 'struct bpf_stream_elem' 36 | struct bpf_stream_elem *elem; | ^ skeleton/stream.bpf.c:68:7: error: call to undeclared function 'bpf_dynptr_copy'; ISO C99 and later do not support implicit function declarations [-Wimplicit-function-declaration] 68 | if (bpf_dynptr_copy(&dst_dptr, 0, &src_dptr, 0, size)) | ^ skeleton/stream.bpf.c:68:7: note: did you mean 'bpf_dynptr_clone'? /home/nipa/bpf-next/wt-0/build_tools/kselftest/hid/tools/build/bpftool/vmlinux.h:157854:12: note: 'bpf_dynptr_clone' declared here 157854 | extern int bpf_dynptr_clone(const struct bpf_dynptr *p, struct bpf_dynptr *clone__uninit) __weak __ksym; | ^ skeleton/stream.bpf.c:75:3: error: call to undeclared function 'bpf_stream_free_elem'; ISO C99 and later do not support implicit function declarations [-Wimplicit-function-declaration] 75 | bpf_stream_free_elem(elem); | ^ skeleton/stream.bpf.c:89:3: error: call to undeclared function 'bpf_stream_free_elem_batch'; ISO C99 and later do not support implicit function declarations [-Wimplicit-function-declaration] 89 | bpf_stream_free_elem_batch(elem_batch); | ^ skeleton/stream.bpf.c:91:2: error: call to undeclared function 'bpf_prog_stream_put'; ISO C99 and later do not support implicit function declarations [-Wimplicit-function-declaration] 91 | bpf_prog_stream_put(stream); | ^ 13 errors generated. make[2]: *** [Makefile:226: /home/nipa/bpf-next/wt-0/build_tools/kselftest/hid/tools/build/bpftool/stream.bpf.o] Error 1 make[1]: *** [Makefile:124: /home/nipa/bpf-next/wt-0/build_tools/kselftest/hid/tools/sbin/bpftool] Error 2 mount_setattr_test.c:176:19: error: redefinition of ‘sys_open_tree’ 176 | static inline int sys_open_tree(int dfd, const char *filename, unsigned int flags) | ^~~~~~~~~~~~~ In file included from mount_setattr_test.c:23: ../filesystems/overlayfs/wrappers.h:59:19: note: previous definition of ‘sys_open_tree’ with type ‘int(int, const char *, unsigned int)’ 59 | static inline int sys_open_tree(int dfd, const char *filename, unsigned int flags) | ^~~~~~~~~~~~~ make[1]: *** [../lib.mk:222: /home/nipa/bpf-next/wt-0/build_tools/kselftest/mount_setattr/mount_setattr_test] Error 1 make[1]: *** nsfs: No such file or directory. Stop. pid_max.c: In function ‘pid_max_cb’: pid_max.c:42:15: error: implicit declaration of function ‘mount’ [-Wimplicit-function-declaration] 42 | ret = mount("", "/", NULL, MS_PRIVATE | MS_REC, 0); | ^~~~~ pid_max.c:42:36: error: ‘MS_PRIVATE’ undeclared (first use in this function); did you mean ‘MAP_PRIVATE’? 42 | ret = mount("", "/", NULL, MS_PRIVATE | MS_REC, 0); | ^~~~~~~~~~ | MAP_PRIVATE pid_max.c:42:36: note: each undeclared identifier is reported only once for each function it appears in pid_max.c:42:49: error: ‘MS_REC’ undeclared (first use in this function) 42 | ret = mount("", "/", NULL, MS_PRIVATE | MS_REC, 0); | ^~~~~~ pid_max.c:48:9: error: implicit declaration of function ‘umount2’; did you mean ‘SYS_umount2’? [-Wimplicit-function-declaration] 48 | umount2("/proc", MNT_DETACH); | ^~~~~~~ | SYS_umount2 pid_max.c:48:26: error: ‘MNT_DETACH’ undeclared (first use in this function) 48 | umount2("/proc", MNT_DETACH); | ^~~~~~~~~~ pid_max.c: In function ‘pid_max_nested_inner’: pid_max.c:88:36: error: ‘MS_PRIVATE’ undeclared (first use in this function); did you mean ‘MAP_PRIVATE’? 88 | ret = mount("", "/", NULL, MS_PRIVATE | MS_REC, 0); | ^~~~~~~~~~ | MAP_PRIVATE pid_max.c:88:49: error: ‘MS_REC’ undeclared (first use in this function) 88 | ret = mount("", "/", NULL, MS_PRIVATE | MS_REC, 0); | ^~~~~~ pid_max.c:94:26: error: ‘MNT_DETACH’ undeclared (first use in this function) 94 | umount2("/proc", MNT_DETACH); | ^~~~~~~~~~ pid_max.c: In function ‘pid_max_nested_outer’: pid_max.c:163:36: error: ‘MS_PRIVATE’ undeclared (first use in this function); did you mean ‘MAP_PRIVATE’? 163 | ret = mount("", "/", NULL, MS_PRIVATE | MS_REC, 0); | ^~~~~~~~~~ | MAP_PRIVATE pid_max.c:163:49: error: ‘MS_REC’ undeclared (first use in this function) 163 | ret = mount("", "/", NULL, MS_PRIVATE | MS_REC, 0); | ^~~~~~ pid_max.c:169:26: error: ‘MNT_DETACH’ undeclared (first use in this function) 169 | umount2("/proc", MNT_DETACH); | ^~~~~~~~~~ pid_max.c: In function ‘pid_max_nested_limit_inner’: pid_max.c:232:36: error: ‘MS_PRIVATE’ undeclared (first use in this function); did you mean ‘MAP_PRIVATE’? 232 | ret = mount("", "/", NULL, MS_PRIVATE | MS_REC, 0); | ^~~~~~~~~~ | MAP_PRIVATE pid_max.c:232:49: error: ‘MS_REC’ undeclared (first use in this function) 232 | ret = mount("", "/", NULL, MS_PRIVATE | MS_REC, 0); | ^~~~~~ pid_max.c:238:26: error: ‘MNT_DETACH’ undeclared (first use in this function) 238 | umount2("/proc", MNT_DETACH); | ^~~~~~~~~~ pid_max.c: In function ‘pid_max_nested_limit_outer’: pid_max.c:289:36: error: ‘MS_PRIVATE’ undeclared (first use in this function); did you mean ‘MAP_PRIVATE’? 289 | ret = mount("", "/", NULL, MS_PRIVATE | MS_REC, 0); | ^~~~~~~~~~ | MAP_PRIVATE pid_max.c:289:49: error: ‘MS_REC’ undeclared (first use in this function) 289 | ret = mount("", "/", NULL, MS_PRIVATE | MS_REC, 0); | ^~~~~~ pid_max.c:295:26: error: ‘MNT_DETACH’ undeclared (first use in this function) 295 | umount2("/proc", MNT_DETACH); | ^~~~~~~~~~ make[1]: *** [../lib.mk:222: /home/nipa/bpf-next/wt-0/build_tools/kselftest/pid_namespace/pid_max] Error 1 In file included from kublk.c:6: kublk.h:23:10: fatal error: liburing.h: No such file or directory 23 | #include | ^~~~~~~~~~~~ compilation terminated. In file included from null.c:3: kublk.h:23:10: fatal error: liburing.h: No such file or directory 23 | #include | ^~~~~~~~~~~~ compilation terminated. In file included from file_backed.c:3: kublk.h:23:10: fatal error: liburing.h: No such file or directory 23 | #include | ^~~~~~~~~~~~ compilation terminated. In file included from common.c:3: kublk.h:23:10: fatal error: liburing.h: No such file or directory 23 | #include | ^~~~~~~~~~~~ compilation terminated. In file included from stripe.c:3: kublk.h:23:10: fatal error: liburing.h: No such file or directory 23 | #include | ^~~~~~~~~~~~ compilation terminated. make[1]: *** [../lib.mk:222: /home/nipa/bpf-next/wt-0/build_tools/kselftest/ublk/kublk] Error 1 ====== Checking if tree is clean ====== ?? arch/x86/Makefile.orig ?? arch/x86/Makefile.rej New errors added --- /tmp/tmp.vREy9zhBMD 2025-04-14 13:17:36.018646642 -0700 +++ /tmp/tmp.Msp8sr4c2v 2025-04-14 13:17:38.985623109 -0700 @@ -0,0 +1,56 @@ +skeleton/stream.bpf.c:42:11: error: call to undeclared function 'bpf_prog_stream_get'; ISO C99 and later do not support implicit function declarations [-Wimplicit-function-declaration] + 42 | stream = bpf_prog_stream_get(BPF_STDERR, prog_id); + | ^ +skeleton/stream.bpf.c:42:31: error: use of undeclared identifier 'BPF_STDERR' + 42 | stream = bpf_prog_stream_get(BPF_STDERR, prog_id); + | ^ +skeleton/stream.bpf.c:51:16: error: call to undeclared function 'bpf_stream_next_elem_batch'; ISO C99 and later do not support implicit function declarations [-Wimplicit-function-declaration] + 51 | elem_batch = bpf_stream_next_elem_batch(stream); + | ^ +skeleton/stream.bpf.c:51:14: error: incompatible integer to pointer conversion assigning to 'struct bpf_stream_elem_batch *' from 'int' [-Wint-conversion] + 51 | elem_batch = bpf_stream_next_elem_batch(stream); + | ^ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +skeleton/stream.bpf.c:59:10: error: call to undeclared function 'bpf_stream_next_elem'; ISO C99 and later do not support implicit function declarations [-Wimplicit-function-declaration] + 59 | elem = bpf_stream_next_elem(elem_batch); + | ^ +skeleton/stream.bpf.c:59:8: error: incompatible integer to pointer conversion assigning to 'struct bpf_stream_elem *' from 'int' [-Wint-conversion] + 59 | elem = bpf_stream_next_elem(elem_batch); + | ^ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +skeleton/stream.bpf.c:62:14: error: incomplete definition of type 'struct bpf_stream_elem' + 62 | size = elem->mem_slice.len; + | ~~~~^ +skeleton/stream.bpf.c:36:9: note: forward declaration of 'struct bpf_stream_elem' + 36 | struct bpf_stream_elem *elem; + | ^ +skeleton/stream.bpf.c:64:7: error: call to undeclared function 'bpf_dynptr_from_mem_slice'; ISO C99 and later do not support implicit function declarations [-Wimplicit-function-declaration] + 64 | if (bpf_dynptr_from_mem_slice(&elem->mem_slice, 0, &src_dptr)) + | ^ +skeleton/stream.bpf.c:64:7: note: did you mean 'bpf_dynptr_from_skb'? +/home/nipa/bpf-next/wt-0/build_tools/kselftest/hid/tools/build/bpftool/vmlinux.h:157855:12: note: 'bpf_dynptr_from_skb' declared here + 157855 | extern int bpf_dynptr_from_skb(struct __sk_buff *s, u64 flags, struct bpf_dynptr *ptr__uninit) __weak __ksym; + | ^ +skeleton/stream.bpf.c:64:38: error: incomplete definition of type 'struct bpf_stream_elem' + 64 | if (bpf_dynptr_from_mem_slice(&elem->mem_slice, 0, &src_dptr)) + | ~~~~^ +skeleton/stream.bpf.c:36:9: note: forward declaration of 'struct bpf_stream_elem' + 36 | struct bpf_stream_elem *elem; + | ^ +skeleton/stream.bpf.c:68:7: error: call to undeclared function 'bpf_dynptr_copy'; ISO C99 and later do not support implicit function declarations [-Wimplicit-function-declaration] + 68 | if (bpf_dynptr_copy(&dst_dptr, 0, &src_dptr, 0, size)) + | ^ +skeleton/stream.bpf.c:68:7: note: did you mean 'bpf_dynptr_clone'? +/home/nipa/bpf-next/wt-0/build_tools/kselftest/hid/tools/build/bpftool/vmlinux.h:157854:12: note: 'bpf_dynptr_clone' declared here + 157854 | extern int bpf_dynptr_clone(const struct bpf_dynptr *p, struct bpf_dynptr *clone__uninit) __weak __ksym; + | ^ +skeleton/stream.bpf.c:75:3: error: call to undeclared function 'bpf_stream_free_elem'; ISO C99 and later do not support implicit function declarations [-Wimplicit-function-declaration] + 75 | bpf_stream_free_elem(elem); + | ^ +skeleton/stream.bpf.c:89:3: error: call to undeclared function 'bpf_stream_free_elem_batch'; ISO C99 and later do not support implicit function declarations [-Wimplicit-function-declaration] + 89 | bpf_stream_free_elem_batch(elem_batch); + | ^ +skeleton/stream.bpf.c:91:2: error: call to undeclared function 'bpf_prog_stream_put'; ISO C99 and later do not support implicit function declarations [-Wimplicit-function-declaration] + 91 | bpf_prog_stream_put(stream); + | ^ +13 errors generated. +make[2]: *** [Makefile:226: /home/nipa/bpf-next/wt-0/build_tools/kselftest/hid/tools/build/bpftool/stream.bpf.o] Error 1 +make[1]: *** [Makefile:124: /home/nipa/bpf-next/wt-0/build_tools/kselftest/hid/tools/sbin/bpftool] Error 2 Per-file breakdown