Re: [PATCH V4 09/20] rv/monitor: wip instrumentation and Makefile/Kconfig entries

From: kernel test robot
Date: Thu Jun 16 2022 - 07:22:06 EST


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