tree: https://gitee.com/openeuler/kernel.git OLK-6.6
head: afd82dd979acad2f99b9d30f8ce8463ca4153a05
commit: 470628a716984e1325b92bef4fa2140ff5a062a5 [1786/7652] livepatch: Use breakpoint exception to optimize enabling livepatch
config: arm64-randconfig-004-20240508 (https://download.01.org/0day-ci/archive/20240508/202405080901.aTVbuOkv-lkp@…)
compiler: clang version 19.0.0git (https://github.com/llvm/llvm-project 0ab4458df0688955620b72cc2c72a32dffad3615)
reproduce (this is a W=1 build): (https://download.01.org/0day-ci/archive/20240508/202405080901.aTVbuOkv-lkp@…)
If you fix the issue in a separate patch/commit (i.e. not just a new version of
the same patch/commit), kindly add following tags
| Reported-by: kernel test robot <lkp(a)intel.com>
| Closes: https://lore.kernel.org/oe-kbuild-all/202405080901.aTVbuOkv-lkp@intel.com/
All warnings (new ones prefixed by >>):
In file included from kernel/livepatch/core.c:17:
In file included from include/linux/kallsyms.h:13:
In file included from include/linux/mm.h:2181:
include/linux/vmstat.h:508:43: warning: arithmetic between different enumeration types ('enum zone_stat_item' and 'enum numa_stat_item') [-Wenum-enum-conversion]
508 | return vmstat_text[NR_VM_ZONE_STAT_ITEMS +
| ~~~~~~~~~~~~~~~~~~~~~ ^
509 | item];
| ~~~~
include/linux/vmstat.h:515:43: warning: arithmetic between different enumeration types ('enum zone_stat_item' and 'enum numa_stat_item') [-Wenum-enum-conversion]
515 | return vmstat_text[NR_VM_ZONE_STAT_ITEMS +
| ~~~~~~~~~~~~~~~~~~~~~ ^
516 | NR_VM_NUMA_EVENT_ITEMS +
| ~~~~~~~~~~~~~~~~~~~~~~
include/linux/vmstat.h:522:36: warning: arithmetic between different enumeration types ('enum node_stat_item' and 'enum lru_list') [-Wenum-enum-conversion]
522 | return node_stat_name(NR_LRU_BASE + lru) + 3; // skip "nr_"
| ~~~~~~~~~~~ ^ ~~~
include/linux/vmstat.h:527:43: warning: arithmetic between different enumeration types ('enum zone_stat_item' and 'enum numa_stat_item') [-Wenum-enum-conversion]
527 | return vmstat_text[NR_VM_ZONE_STAT_ITEMS +
| ~~~~~~~~~~~~~~~~~~~~~ ^
528 | NR_VM_NUMA_EVENT_ITEMS +
| ~~~~~~~~~~~~~~~~~~~~~~
kernel/livepatch/core.c:1728:12: warning: no previous prototype for function 'arch_klp_check_activeness_func' [-Wmissing-prototypes]
1728 | int __weak arch_klp_check_activeness_func(struct klp_func *func, int enable,
| ^
kernel/livepatch/core.c:1728:1: note: declare 'static' if the function is not intended to be used outside of this translation unit
1728 | int __weak arch_klp_check_activeness_func(struct klp_func *func, int enable,
| ^
| static
kernel/livepatch/core.c:1983:14: warning: no previous prototype for function 'arch_klp_mem_alloc' [-Wmissing-prototypes]
1983 | void __weak *arch_klp_mem_alloc(size_t size)
| ^
kernel/livepatch/core.c:1983:1: note: declare 'static' if the function is not intended to be used outside of this translation unit
1983 | void __weak *arch_klp_mem_alloc(size_t size)
| ^
| static
kernel/livepatch/core.c:1988:13: warning: no previous prototype for function 'arch_klp_mem_free' [-Wmissing-prototypes]
1988 | void __weak arch_klp_mem_free(void *mem)
| ^
kernel/livepatch/core.c:1988:1: note: declare 'static' if the function is not intended to be used outside of this translation unit
1988 | void __weak arch_klp_mem_free(void *mem)
| ^
| static
kernel/livepatch/core.c:1993:13: warning: no previous prototype for function 'arch_klp_code_modify_prepare' [-Wmissing-prototypes]
1993 | void __weak arch_klp_code_modify_prepare(void)
| ^
kernel/livepatch/core.c:1993:1: note: declare 'static' if the function is not intended to be used outside of this translation unit
1993 | void __weak arch_klp_code_modify_prepare(void)
| ^
| static
kernel/livepatch/core.c:1997:13: warning: no previous prototype for function 'arch_klp_code_modify_post_process' [-Wmissing-prototypes]
1997 | void __weak arch_klp_code_modify_post_process(void)
| ^
kernel/livepatch/core.c:1997:1: note: declare 'static' if the function is not intended to be used outside of this translation unit
1997 | void __weak arch_klp_code_modify_post_process(void)
| ^
| static
>> kernel/livepatch/core.c:2006:12: warning: no previous prototype for function 'arch_klp_check_breakpoint' [-Wmissing-prototypes]
2006 | int __weak arch_klp_check_breakpoint(struct arch_klp_data *arch_data, void *old_func)
| ^
kernel/livepatch/core.c:2006:1: note: declare 'static' if the function is not intended to be used outside of this translation unit
2006 | int __weak arch_klp_check_breakpoint(struct arch_klp_data *arch_data, void *old_func)
| ^
| static
kernel/livepatch/core.c:2011:12: warning: no previous prototype for function 'arch_klp_add_breakpoint' [-Wmissing-prototypes]
2011 | int __weak arch_klp_add_breakpoint(struct arch_klp_data *arch_data, void *old_func)
| ^
kernel/livepatch/core.c:2011:1: note: declare 'static' if the function is not intended to be used outside of this translation unit
2011 | int __weak arch_klp_add_breakpoint(struct arch_klp_data *arch_data, void *old_func)
| ^
| static
kernel/livepatch/core.c:2016:13: warning: no previous prototype for function 'arch_klp_remove_breakpoint' [-Wmissing-prototypes]
2016 | void __weak arch_klp_remove_breakpoint(struct arch_klp_data *arch_data, void *old_func)
| ^
kernel/livepatch/core.c:2016:1: note: declare 'static' if the function is not intended to be used outside of this translation unit
2016 | void __weak arch_klp_remove_breakpoint(struct arch_klp_data *arch_data, void *old_func)
| ^
| static
kernel/livepatch/core.c:2020:13: warning: no previous prototype for function 'arch_klp_set_brk_func' [-Wmissing-prototypes]
2020 | void __weak arch_klp_set_brk_func(struct klp_func_node *func_node, void *new_func)
| ^
kernel/livepatch/core.c:2020:1: note: declare 'static' if the function is not intended to be used outside of this translation unit
2020 | void __weak arch_klp_set_brk_func(struct klp_func_node *func_node, void *new_func)
| ^
| static
13 warnings generated.
vim +/arch_klp_check_breakpoint +2006 kernel/livepatch/core.c
2005
> 2006 int __weak arch_klp_check_breakpoint(struct arch_klp_data *arch_data, void *old_func)
2007 {
2008 return 0;
2009 }
2010
--
0-DAY CI Kernel Test Service
https://github.com/intel/lkp-tests/wiki