Hi Daniel, I love your patch! Perhaps something to improve: [auto build test WARNING on rostedt-trace/for-next] [also build test WARNING on tip/sched/core] [If your patch is applied to the wrong git tree, kindly drop us a note. And when submitting patch, we suggest to use '--base' as documented in https://git-scm.com/docs/git-format-patch] url: https://github.com/intel-lab-lkp/linux/commits/Daniel-Bristot-de-Oliveira/The-Runtime-Verification-RV-interface/20220616-164837 base: https://git.kernel.org/pub/scm/linux/kernel/git/rostedt/linux-trace.git for-next config: riscv-randconfig-r004-20220616 (https://download.01.org/0day-ci/archive/20220616/202206161937.RukeWKWk-lkp@xxxxxxxxx/config) compiler: riscv64-linux-gcc (GCC) 11.3.0 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/a76032130de277ff6f39fc08277a70823fd85bf3 git remote add linux-review https://github.com/intel-lab-lkp/linux git fetch --no-tags linux-review Daniel-Bristot-de-Oliveira/The-Runtime-Verification-RV-interface/20220616-164837 git checkout a76032130de277ff6f39fc08277a70823fd85bf3 # save the config file mkdir build_dir && cp config build_dir/.config COMPILER_INSTALL_PATH=$HOME/0day COMPILER=gcc-11.3.0 make.cross W=1 O=build_dir ARCH=riscv SHELL=/bin/bash kernel/trace/rv/ If you fix the issue, kindly add following tag where applicable Reported-by: kernel test robot <lkp@xxxxxxxxx> All warnings (new ones prefixed by >>): In file included from kernel/trace/rv/monitors/wip/wip.c:8: kernel/trace/rv/monitors/wip/wip.c: In function 'start_wip': include/rv/instrumentation.h:15:17: error: implicit declaration of function 'check_trace_callback_type_preempt_disable'; did you mean 'check_trace_callback_type_irq_disable'? [-Werror=implicit-function-declaration] 15 | check_trace_callback_type_##tp(rv_handler); \ | ^~~~~~~~~~~~~~~~~~~~~~~~~~ kernel/trace/rv/monitors/wip/wip.c:61:9: note: in expansion of macro 'rv_attach_trace_probe' 61 | rv_attach_trace_probe("wip", preempt_disable, handle_preempt_disable); | ^~~~~~~~~~~~~~~~~~~~~ In file included from include/linux/printk.h:11, from include/linux/kernel.h:29, from include/linux/interrupt.h:6, from include/linux/trace_recursion.h:5, from include/linux/ftrace.h:10, from kernel/trace/rv/monitors/wip/wip.c:2: include/rv/instrumentation.h:16:27: error: implicit declaration of function 'register_trace_preempt_disable'; did you mean 'register_trace_prio_irq_disable'? [-Werror=implicit-function-declaration] 16 | WARN_ONCE(register_trace_##tp(rv_handler, NULL), \ | ^~~~~~~~~~~~~~~ include/linux/once_lite.h:15:41: note: in definition of macro 'DO_ONCE_LITE_IF' 15 | bool __ret_do_once = !!(condition); \ | ^~~~~~~~~ include/rv/instrumentation.h:16:17: note: in expansion of macro 'WARN_ONCE' 16 | WARN_ONCE(register_trace_##tp(rv_handler, NULL), \ | ^~~~~~~~~ kernel/trace/rv/monitors/wip/wip.c:61:9: note: in expansion of macro 'rv_attach_trace_probe' 61 | rv_attach_trace_probe("wip", preempt_disable, handle_preempt_disable); | ^~~~~~~~~~~~~~~~~~~~~ In file included from kernel/trace/rv/monitors/wip/wip.c:8: include/rv/instrumentation.h:15:17: error: implicit declaration of function 'check_trace_callback_type_preempt_enable'; did you mean 'check_trace_callback_type_irq_enable'? [-Werror=implicit-function-declaration] 15 | check_trace_callback_type_##tp(rv_handler); \ | ^~~~~~~~~~~~~~~~~~~~~~~~~~ kernel/trace/rv/monitors/wip/wip.c:62:9: note: in expansion of macro 'rv_attach_trace_probe' 62 | rv_attach_trace_probe("wip", preempt_enable, handle_preempt_enable); | ^~~~~~~~~~~~~~~~~~~~~ In file included from include/linux/printk.h:11, from include/linux/kernel.h:29, from include/linux/interrupt.h:6, from include/linux/trace_recursion.h:5, from include/linux/ftrace.h:10, from kernel/trace/rv/monitors/wip/wip.c:2: include/rv/instrumentation.h:16:27: error: implicit declaration of function 'register_trace_preempt_enable'; did you mean 'register_trace_prio_irq_enable'? [-Werror=implicit-function-declaration] 16 | WARN_ONCE(register_trace_##tp(rv_handler, NULL), \ | ^~~~~~~~~~~~~~~ include/linux/once_lite.h:15:41: note: in definition of macro 'DO_ONCE_LITE_IF' 15 | bool __ret_do_once = !!(condition); \ | ^~~~~~~~~ include/rv/instrumentation.h:16:17: note: in expansion of macro 'WARN_ONCE' 16 | WARN_ONCE(register_trace_##tp(rv_handler, NULL), \ | ^~~~~~~~~ kernel/trace/rv/monitors/wip/wip.c:62:9: note: in expansion of macro 'rv_attach_trace_probe' 62 | rv_attach_trace_probe("wip", preempt_enable, handle_preempt_enable); | ^~~~~~~~~~~~~~~~~~~~~ In file included from kernel/trace/rv/monitors/wip/wip.c:8: kernel/trace/rv/monitors/wip/wip.c: In function 'stop_wip': include/rv/instrumentation.h:22:17: error: implicit declaration of function 'unregister_trace_preempt_disable'; did you mean 'unregister_trace_irq_disable'? [-Werror=implicit-function-declaration] 22 | unregister_trace_##tp(rv_handler, NULL); \ | ^~~~~~~~~~~~~~~~~ kernel/trace/rv/monitors/wip/wip.c:72:9: note: in expansion of macro 'rv_detach_trace_probe' 72 | rv_detach_trace_probe("wip", preempt_disable, handle_preempt_disable); | ^~~~~~~~~~~~~~~~~~~~~ include/rv/instrumentation.h:22:17: error: implicit declaration of function 'unregister_trace_preempt_enable'; did you mean 'unregister_trace_irq_enable'? [-Werror=implicit-function-declaration] 22 | unregister_trace_##tp(rv_handler, NULL); \ | ^~~~~~~~~~~~~~~~~ kernel/trace/rv/monitors/wip/wip.c:73:9: note: in expansion of macro 'rv_detach_trace_probe' 73 | rv_detach_trace_probe("wip", preempt_enable, handle_preempt_enable); | ^~~~~~~~~~~~~~~~~~~~~ kernel/trace/rv/monitors/wip/wip.c: At top level: >> kernel/trace/rv/monitors/wip/wip.c:91:5: warning: no previous prototype for 'register_wip' [-Wmissing-prototypes] 91 | int register_wip(void) | ^~~~~~~~~~~~ >> kernel/trace/rv/monitors/wip/wip.c:97:6: warning: no previous prototype for 'unregister_wip' [-Wmissing-prototypes] 97 | void unregister_wip(void) | ^~~~~~~~~~~~~~ cc1: some warnings being treated as errors vim +/register_wip +91 kernel/trace/rv/monitors/wip/wip.c 15679ffb99664f Daniel Bristot de Oliveira 2022-06-16 90 15679ffb99664f Daniel Bristot de Oliveira 2022-06-16 @91 int register_wip(void) 15679ffb99664f Daniel Bristot de Oliveira 2022-06-16 92 { 15679ffb99664f Daniel Bristot de Oliveira 2022-06-16 93 rv_register_monitor(&rv_wip); 15679ffb99664f Daniel Bristot de Oliveira 2022-06-16 94 return 0; 15679ffb99664f Daniel Bristot de Oliveira 2022-06-16 95 } 15679ffb99664f Daniel Bristot de Oliveira 2022-06-16 96 15679ffb99664f Daniel Bristot de Oliveira 2022-06-16 @97 void unregister_wip(void) 15679ffb99664f Daniel Bristot de Oliveira 2022-06-16 98 { 15679ffb99664f Daniel Bristot de Oliveira 2022-06-16 99 if (rv_wip.enabled) 15679ffb99664f Daniel Bristot de Oliveira 2022-06-16 100 stop_wip(); 15679ffb99664f Daniel Bristot de Oliveira 2022-06-16 101 15679ffb99664f Daniel Bristot de Oliveira 2022-06-16 102 rv_unregister_monitor(&rv_wip); 15679ffb99664f Daniel Bristot de Oliveira 2022-06-16 103 } 15679ffb99664f Daniel Bristot de Oliveira 2022-06-16 104 -- 0-DAY CI Kernel Test Service https://01.org/lkp