====== Cleaning ====== ../../../scripts/Makefile.include:4: *** O=build_tools/ does not exist. Stop. ====== Baseline building the tree ====== 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 progs/hid.c:3: progs/hid_bpf_helpers.h:114:31: error: declaration of 'struct bpf_wq' will not be visible outside of this function [-Werror,-Wvisibility] 114 | extern int bpf_wq_init(struct bpf_wq *wq, void *p__map, unsigned int flags) __weak __ksym; | ^ progs/hid_bpf_helpers.h:115:32: error: declaration of 'struct bpf_wq' will not be visible outside of this function [-Werror,-Wvisibility] 115 | extern int bpf_wq_start(struct bpf_wq *wq, unsigned int flags) __weak __ksym; | ^ progs/hid_bpf_helpers.h:116:44: error: declaration of 'struct bpf_wq' will not be visible outside of this function [-Werror,-Wvisibility] 116 | extern int bpf_wq_set_callback_impl(struct bpf_wq *wq, | ^ progs/hid.c:448:16: error: field has incomplete type 'struct bpf_wq' 448 | struct bpf_wq work; | ^ progs/hid.c:448:9: note: forward declaration of 'struct bpf_wq' 448 | struct bpf_wq work; | ^ progs/hid.c:487:18: error: incompatible pointer types passing 'struct bpf_wq *' to parameter of type 'struct bpf_wq *' [-Werror,-Wincompatible-pointer-types] 487 | if (bpf_wq_init(wq, &hmap, 0) != 0) | ^~ progs/hid_bpf_helpers.h:114:39: note: passing argument to parameter 'wq' here 114 | extern int bpf_wq_init(struct bpf_wq *wq, void *p__map, unsigned int flags) __weak __ksym; | ^ progs/hid.c:490:26: error: incompatible pointer types passing 'struct bpf_wq *' to parameter of type 'struct bpf_wq *' [-Werror,-Wincompatible-pointer-types] 490 | if (bpf_wq_set_callback(wq, wq_cb_sleepable, 0)) | ^~ progs/hid_bpf_helpers.h:120:27: note: expanded from macro 'bpf_wq_set_callback' 120 | bpf_wq_set_callback_impl(timer, cb, flags, NULL) | ^~~~~ progs/hid_bpf_helpers.h:116:52: note: passing argument to parameter 'wq' here 116 | extern int bpf_wq_set_callback_impl(struct bpf_wq *wq, | ^ progs/hid.c:490:30: error: incompatible function pointer types passing 'int (void *, int *, struct bpf_wq *)' to parameter of type 'int (*)(void *, int *, struct bpf_wq *)' [-Wincompatible-function-pointer-types] 490 | if (bpf_wq_set_callback(wq, wq_cb_sleepable, 0)) | ^~~~~~~~~~~~~~~ progs/hid_bpf_helpers.h:120:34: note: expanded from macro 'bpf_wq_set_callback' 120 | bpf_wq_set_callback_impl(timer, cb, flags, NULL) | ^~ progs/hid_bpf_helpers.h:117:8: note: passing argument to parameter 'callback_fn' here 117 | int (callback_fn)(void *map, int *key, struct bpf_wq *wq), | ^ progs/hid.c:493:19: error: incompatible pointer types passing 'struct bpf_wq *' to parameter of type 'struct bpf_wq *' [-Werror,-Wincompatible-pointer-types] 493 | if (bpf_wq_start(wq, 0)) | ^~ progs/hid_bpf_helpers.h:115:40: note: passing argument to parameter 'wq' here 115 | extern int bpf_wq_start(struct bpf_wq *wq, unsigned int flags) __weak __ksym; | ^ 8 errors generated. make[1]: *** [Makefile:225: /home/nipa/net-next/wt-0/build_tools/kselftest/hid/hid.bpf.o] Error 1 Warning: Kernel ABI header at 'tools/include/uapi/linux/if_xdp.h' differs from latest version at 'include/uapi/linux/if_xdp.h' ====== Building the tree before the patch ====== In file included from progs/hid.c:3: progs/hid_bpf_helpers.h:114:31: error: declaration of 'struct bpf_wq' will not be visible outside of this function [-Werror,-Wvisibility] 114 | extern int bpf_wq_init(struct bpf_wq *wq, void *p__map, unsigned int flags) __weak __ksym; | ^ progs/hid_bpf_helpers.h:115:32: error: declaration of 'struct bpf_wq' will not be visible outside of this function [-Werror,-Wvisibility] 115 | extern int bpf_wq_start(struct bpf_wq *wq, unsigned int flags) __weak __ksym; | ^ progs/hid_bpf_helpers.h:116:44: error: declaration of 'struct bpf_wq' will not be visible outside of this function [-Werror,-Wvisibility] 116 | extern int bpf_wq_set_callback_impl(struct bpf_wq *wq, | ^ progs/hid.c:448:16: error: field has incomplete type 'struct bpf_wq' 448 | struct bpf_wq work; | ^ progs/hid.c:448:9: note: forward declaration of 'struct bpf_wq' 448 | struct bpf_wq work; | ^ progs/hid.c:487:18: error: incompatible pointer types passing 'struct bpf_wq *' to parameter of type 'struct bpf_wq *' [-Werror,-Wincompatible-pointer-types] 487 | if (bpf_wq_init(wq, &hmap, 0) != 0) | ^~ progs/hid_bpf_helpers.h:114:39: note: passing argument to parameter 'wq' here 114 | extern int bpf_wq_init(struct bpf_wq *wq, void *p__map, unsigned int flags) __weak __ksym; | ^ progs/hid.c:490:26: error: incompatible pointer types passing 'struct bpf_wq *' to parameter of type 'struct bpf_wq *' [-Werror,-Wincompatible-pointer-types] 490 | if (bpf_wq_set_callback(wq, wq_cb_sleepable, 0)) | ^~ progs/hid_bpf_helpers.h:120:27: note: expanded from macro 'bpf_wq_set_callback' 120 | bpf_wq_set_callback_impl(timer, cb, flags, NULL) | ^~~~~ progs/hid_bpf_helpers.h:116:52: note: passing argument to parameter 'wq' here 116 | extern int bpf_wq_set_callback_impl(struct bpf_wq *wq, | ^ progs/hid.c:490:30: error: incompatible function pointer types passing 'int (void *, int *, struct bpf_wq *)' to parameter of type 'int (*)(void *, int *, struct bpf_wq *)' [-Wincompatible-function-pointer-types] 490 | if (bpf_wq_set_callback(wq, wq_cb_sleepable, 0)) | ^~~~~~~~~~~~~~~ progs/hid_bpf_helpers.h:120:34: note: expanded from macro 'bpf_wq_set_callback' 120 | bpf_wq_set_callback_impl(timer, cb, flags, NULL) | ^~ progs/hid_bpf_helpers.h:117:8: note: passing argument to parameter 'callback_fn' here 117 | int (callback_fn)(void *map, int *key, struct bpf_wq *wq), | ^ progs/hid.c:493:19: error: incompatible pointer types passing 'struct bpf_wq *' to parameter of type 'struct bpf_wq *' [-Werror,-Wincompatible-pointer-types] 493 | if (bpf_wq_start(wq, 0)) | ^~ progs/hid_bpf_helpers.h:115:40: note: passing argument to parameter 'wq' here 115 | extern int bpf_wq_start(struct bpf_wq *wq, unsigned int flags) __weak __ksym; | ^ 8 errors generated. make[1]: *** [Makefile:225: /home/nipa/net-next/wt-0/build_tools/kselftest/hid/hid.bpf.o] Error 1 ====== Building the tree with the patch ====== In file included from progs/hid.c:3: progs/hid_bpf_helpers.h:114:31: error: declaration of 'struct bpf_wq' will not be visible outside of this function [-Werror,-Wvisibility] 114 | extern int bpf_wq_init(struct bpf_wq *wq, void *p__map, unsigned int flags) __weak __ksym; | ^ progs/hid_bpf_helpers.h:115:32: error: declaration of 'struct bpf_wq' will not be visible outside of this function [-Werror,-Wvisibility] 115 | extern int bpf_wq_start(struct bpf_wq *wq, unsigned int flags) __weak __ksym; | ^ progs/hid_bpf_helpers.h:116:44: error: declaration of 'struct bpf_wq' will not be visible outside of this function [-Werror,-Wvisibility] 116 | extern int bpf_wq_set_callback_impl(struct bpf_wq *wq, | ^ progs/hid.c:448:16: error: field has incomplete type 'struct bpf_wq' 448 | struct bpf_wq work; | ^ progs/hid.c:448:9: note: forward declaration of 'struct bpf_wq' 448 | struct bpf_wq work; | ^ progs/hid.c:487:18: error: incompatible pointer types passing 'struct bpf_wq *' to parameter of type 'struct bpf_wq *' [-Werror,-Wincompatible-pointer-types] 487 | if (bpf_wq_init(wq, &hmap, 0) != 0) | ^~ progs/hid_bpf_helpers.h:114:39: note: passing argument to parameter 'wq' here 114 | extern int bpf_wq_init(struct bpf_wq *wq, void *p__map, unsigned int flags) __weak __ksym; | ^ progs/hid.c:490:26: error: incompatible pointer types passing 'struct bpf_wq *' to parameter of type 'struct bpf_wq *' [-Werror,-Wincompatible-pointer-types] 490 | if (bpf_wq_set_callback(wq, wq_cb_sleepable, 0)) | ^~ progs/hid_bpf_helpers.h:120:27: note: expanded from macro 'bpf_wq_set_callback' 120 | bpf_wq_set_callback_impl(timer, cb, flags, NULL) | ^~~~~ progs/hid_bpf_helpers.h:116:52: note: passing argument to parameter 'wq' here 116 | extern int bpf_wq_set_callback_impl(struct bpf_wq *wq, | ^ progs/hid.c:490:30: error: incompatible function pointer types passing 'int (void *, int *, struct bpf_wq *)' to parameter of type 'int (*)(void *, int *, struct bpf_wq *)' [-Wincompatible-function-pointer-types] 490 | if (bpf_wq_set_callback(wq, wq_cb_sleepable, 0)) | ^~~~~~~~~~~~~~~ progs/hid_bpf_helpers.h:120:34: note: expanded from macro 'bpf_wq_set_callback' 120 | bpf_wq_set_callback_impl(timer, cb, flags, NULL) | ^~ progs/hid_bpf_helpers.h:117:8: note: passing argument to parameter 'callback_fn' here 117 | int (callback_fn)(void *map, int *key, struct bpf_wq *wq), | ^ progs/hid.c:493:19: error: incompatible pointer types passing 'struct bpf_wq *' to parameter of type 'struct bpf_wq *' [-Werror,-Wincompatible-pointer-types] 493 | if (bpf_wq_start(wq, 0)) | ^~ progs/hid_bpf_helpers.h:115:40: note: passing argument to parameter 'wq' here 115 | extern int bpf_wq_start(struct bpf_wq *wq, unsigned int flags) __weak __ksym; | ^ 8 errors generated. make[1]: *** [Makefile:225: /home/nipa/net-next/wt-0/build_tools/kselftest/hid/hid.bpf.o] Error 1