* Re: [PATCH bpf-next v6 12/23] HID: initial BPF implementation [not found] <20220712145850.599666-13-benjamin.tissoires@redhat.com> @ 2022-07-14 14:49 ` kernel test robot 2022-07-14 16:42 ` kernel test robot 1 sibling, 0 replies; 3+ messages in thread From: kernel test robot @ 2022-07-14 14:49 UTC (permalink / raw) To: Benjamin Tissoires; +Cc: llvm, kbuild-all Hi Benjamin, I love your patch! Perhaps something to improve: [auto build test WARNING on bpf-next/master] url: https://github.com/intel-lab-lkp/linux/commits/Benjamin-Tissoires/Introduce-eBPF-support-for-HID-devices/20220712-230852 base: https://git.kernel.org/pub/scm/linux/kernel/git/bpf/bpf-next.git master config: hexagon-randconfig-r016-20220714 (https://download.01.org/0day-ci/archive/20220714/202207142225.7Lu43LAS-lkp@intel.com/config) compiler: clang version 15.0.0 (https://github.com/llvm/llvm-project 5e61b9c556267086ef9b743a0b57df302eef831b) reproduce (this is a W=1 build): wget https://raw.githubusercontent.com/intel/lkp-tests/master/sbin/make.cross -O ~/bin/make.cross chmod +x ~/bin/make.cross # https://github.com/intel-lab-lkp/linux/commit/57eb5074a35029f30cc13ed3a526b3342b169788 git remote add linux-review https://github.com/intel-lab-lkp/linux git fetch --no-tags linux-review Benjamin-Tissoires/Introduce-eBPF-support-for-HID-devices/20220712-230852 git checkout 57eb5074a35029f30cc13ed3a526b3342b169788 # save the config file mkdir build_dir && cp config build_dir/.config COMPILER_INSTALL_PATH=$HOME/0day COMPILER=clang make.cross W=1 O=build_dir ARCH=hexagon SHELL=/bin/bash drivers/hid/bpf/ If you fix the issue, kindly add following tag where applicable Reported-by: kernel test robot <lkp@intel.com> All warnings (new ones prefixed by >>): >> drivers/hid/bpf/hid_bpf_dispatch.c:191:12: warning: no previous prototype for function 'hid_bpf_init' [-Wmissing-prototypes] int __init hid_bpf_init(void) ^ drivers/hid/bpf/hid_bpf_dispatch.c:191:1: note: declare 'static' if the function is not intended to be used outside of this translation unit int __init hid_bpf_init(void) ^ static >> drivers/hid/bpf/hid_bpf_dispatch.c:224:13: warning: no previous prototype for function 'hid_bpf_exit' [-Wmissing-prototypes] void __exit hid_bpf_exit(void) ^ drivers/hid/bpf/hid_bpf_dispatch.c:224:1: note: declare 'static' if the function is not intended to be used outside of this translation unit void __exit hid_bpf_exit(void) ^ static 2 warnings generated. -- >> drivers/hid/bpf/hid_bpf_jmp_table.c:100:21: warning: no previous prototype for function '__hid_bpf_tail_call' [-Wmissing-prototypes] __weak noinline int __hid_bpf_tail_call(struct hid_bpf_ctx *ctx) ^ drivers/hid/bpf/hid_bpf_jmp_table.c:100:17: note: declare 'static' if the function is not intended to be used outside of this translation unit __weak noinline int __hid_bpf_tail_call(struct hid_bpf_ctx *ctx) ^ static 1 warning generated. vim +/hid_bpf_init +191 drivers/hid/bpf/hid_bpf_dispatch.c 190 > 191 int __init hid_bpf_init(void) 192 { 193 int err; 194 195 /* Note: if we exit with an error any time here, we would entirely break HID, which 196 * is probably not something we want. So we log an error and return success. 197 * 198 * This is not a big deal: the syscall allowing to attach a BPF program to a HID device 199 * will not be available, so nobody will be able to use the functionality. 200 */ 201 202 err = register_btf_kfunc_id_set(BPF_PROG_TYPE_TRACING, &hid_bpf_kfunc_set); 203 if (err) { 204 pr_warn("error while setting HID BPF tracing kfuncs: %d", err); 205 return 0; 206 } 207 208 err = hid_bpf_preload_skel(); 209 if (err) { 210 pr_warn("error while preloading HID BPF dispatcher: %d", err); 211 return 0; 212 } 213 214 /* register syscalls after we are sure we can load our preloaded bpf program */ 215 err = register_btf_kfunc_id_set(BPF_PROG_TYPE_SYSCALL, &hid_bpf_syscall_kfunc_set); 216 if (err) { 217 pr_warn("error while setting HID BPF syscall kfuncs: %d", err); 218 return 0; 219 } 220 221 return 0; 222 } 223 > 224 void __exit hid_bpf_exit(void) 225 { 226 /* HID depends on us, so if we hit that code, we are guaranteed that hid 227 * has been removed and thus we do not need to clear the HID devices 228 */ 229 hid_bpf_free_links_and_skel(); 230 } 231 -- 0-DAY CI Kernel Test Service https://01.org/lkp ^ permalink raw reply [flat|nested] 3+ messages in thread
* Re: [PATCH bpf-next v6 12/23] HID: initial BPF implementation [not found] <20220712145850.599666-13-benjamin.tissoires@redhat.com> 2022-07-14 14:49 ` [PATCH bpf-next v6 12/23] HID: initial BPF implementation kernel test robot @ 2022-07-14 16:42 ` kernel test robot 2022-07-15 9:28 ` Benjamin Tissoires 1 sibling, 1 reply; 3+ messages in thread From: kernel test robot @ 2022-07-14 16:42 UTC (permalink / raw) To: Benjamin Tissoires; +Cc: llvm, kbuild-all Hi Benjamin, I love your patch! Yet something to improve: [auto build test ERROR on bpf-next/master] url: https://github.com/intel-lab-lkp/linux/commits/Benjamin-Tissoires/Introduce-eBPF-support-for-HID-devices/20220712-230852 base: https://git.kernel.org/pub/scm/linux/kernel/git/bpf/bpf-next.git master config: arm-vexpress_defconfig (https://download.01.org/0day-ci/archive/20220715/202207150008.O4t08On6-lkp@intel.com/config) compiler: clang version 15.0.0 (https://github.com/llvm/llvm-project 5e61b9c556267086ef9b743a0b57df302eef831b) reproduce (this is a W=1 build): wget https://raw.githubusercontent.com/intel/lkp-tests/master/sbin/make.cross -O ~/bin/make.cross chmod +x ~/bin/make.cross # install arm cross compiling tool for clang build # apt-get install binutils-arm-linux-gnueabi # https://github.com/intel-lab-lkp/linux/commit/57eb5074a35029f30cc13ed3a526b3342b169788 git remote add linux-review https://github.com/intel-lab-lkp/linux git fetch --no-tags linux-review Benjamin-Tissoires/Introduce-eBPF-support-for-HID-devices/20220712-230852 git checkout 57eb5074a35029f30cc13ed3a526b3342b169788 # save the config file mkdir build_dir && cp config build_dir/.config COMPILER_INSTALL_PATH=$HOME/0day COMPILER=clang make.cross W=1 O=build_dir ARCH=arm SHELL=/bin/bash If you fix the issue, kindly add following tag where applicable Reported-by: kernel test robot <lkp@intel.com> All errors (new ones prefixed by >>): >> ld.lld: error: undefined symbol: dispatch_hid_bpf_device_event >>> referenced by hid-core.c >>> hid/hid-core.o:(hid_input_report) in archive drivers/built-in.a -- >> ld.lld: error: undefined symbol: hid_bpf_device_init >>> referenced by hid-core.c >>> hid/hid-core.o:(hid_allocate_device) in archive drivers/built-in.a -- >> ld.lld: error: undefined symbol: hid_bpf_destroy_device >>> referenced by hid-core.c >>> hid/hid-core.o:(hid_destroy_device) in archive drivers/built-in.a -- 0-DAY CI Kernel Test Service https://01.org/lkp ^ permalink raw reply [flat|nested] 3+ messages in thread
* Re: [PATCH bpf-next v6 12/23] HID: initial BPF implementation 2022-07-14 16:42 ` kernel test robot @ 2022-07-15 9:28 ` Benjamin Tissoires 0 siblings, 0 replies; 3+ messages in thread From: Benjamin Tissoires @ 2022-07-15 9:28 UTC (permalink / raw) To: kernel test robot; +Cc: llvm, kbuild-all On Thu, Jul 14, 2022 at 6:43 PM kernel test robot <lkp@intel.com> wrote: > > Hi Benjamin, > > I love your patch! Yet something to improve: > > [auto build test ERROR on bpf-next/master] > > url: https://github.com/intel-lab-lkp/linux/commits/Benjamin-Tissoires/Introduce-eBPF-support-for-HID-devices/20220712-230852 > base: https://git.kernel.org/pub/scm/linux/kernel/git/bpf/bpf-next.git master > config: arm-vexpress_defconfig (https://download.01.org/0day-ci/archive/20220715/202207150008.O4t08On6-lkp@intel.com/config) > compiler: clang version 15.0.0 (https://github.com/llvm/llvm-project 5e61b9c556267086ef9b743a0b57df302eef831b) > reproduce (this is a W=1 build): > wget https://raw.githubusercontent.com/intel/lkp-tests/master/sbin/make.cross -O ~/bin/make.cross > chmod +x ~/bin/make.cross > # install arm cross compiling tool for clang build > # apt-get install binutils-arm-linux-gnueabi > # https://github.com/intel-lab-lkp/linux/commit/57eb5074a35029f30cc13ed3a526b3342b169788 > git remote add linux-review https://github.com/intel-lab-lkp/linux > git fetch --no-tags linux-review Benjamin-Tissoires/Introduce-eBPF-support-for-HID-devices/20220712-230852 > git checkout 57eb5074a35029f30cc13ed3a526b3342b169788 > # save the config file > mkdir build_dir && cp config build_dir/.config > COMPILER_INSTALL_PATH=$HOME/0day COMPILER=clang make.cross W=1 O=build_dir ARCH=arm SHELL=/bin/bash > > If you fix the issue, kindly add following tag where applicable > Reported-by: kernel test robot <lkp@intel.com> > > All errors (new ones prefixed by >>): > > >> ld.lld: error: undefined symbol: dispatch_hid_bpf_device_event > >>> referenced by hid-core.c > >>> hid/hid-core.o:(hid_input_report) in archive drivers/built-in.a > -- > >> ld.lld: error: undefined symbol: hid_bpf_device_init > >>> referenced by hid-core.c > >>> hid/hid-core.o:(hid_allocate_device) in archive drivers/built-in.a > -- > >> ld.lld: error: undefined symbol: hid_bpf_destroy_device > >>> referenced by hid-core.c > >>> hid/hid-core.o:(hid_destroy_device) in archive drivers/built-in.a > Good catch! The issue is in include/linux/hid_bpf.h, the declaration of the functions are guarded by #ifdef CONFIG_BPF instead of #ifdef CONFIG_HID_BPF. I'll amend it in the next version (and same for the other missing static declarations). Cheers, Benjamin ^ permalink raw reply [flat|nested] 3+ messages in thread
end of thread, other threads:[~2022-07-15 9:28 UTC | newest]
Thread overview: 3+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
[not found] <20220712145850.599666-13-benjamin.tissoires@redhat.com>
2022-07-14 14:49 ` [PATCH bpf-next v6 12/23] HID: initial BPF implementation kernel test robot
2022-07-14 16:42 ` kernel test robot
2022-07-15 9:28 ` Benjamin Tissoires
This is a public inbox, see mirroring instructions for how to clone and mirror all data and code used for this inbox