Hi Vadim, kernel test robot noticed the following build errors: [auto build test ERROR on bpf-next/master] url: https://github.com/intel-lab-lkp/linux/commits/Vadim-Fedorenko/selftests-bpf-add-selftest-to-check-rdtsc-jit/20241024-050747 base: https://git.kernel.org/pub/scm/linux/kernel/git/bpf/bpf-next.git master patch link: https://lore.kernel.org/r/20241023210437.2266063-1-vadfed%40meta.com patch subject: [PATCH bpf-next 1/2] bpf: add bpf_get_hw_counter kfunc config: riscv-defconfig (https://download.01.org/0day-ci/archive/20241024/202410242317.RqcJ3H1k-lkp@xxxxxxxxx/config) compiler: clang version 20.0.0git (https://github.com/llvm/llvm-project 5886454669c3c9026f7f27eab13509dd0241f2d6) reproduce (this is a W=1 build): (https://download.01.org/0day-ci/archive/20241024/202410242317.RqcJ3H1k-lkp@xxxxxxxxx/reproduce) 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@xxxxxxxxx> | Closes: https://lore.kernel.org/oe-kbuild-all/202410242317.RqcJ3H1k-lkp@xxxxxxxxx/ All error/warnings (new ones prefixed by >>): In file included from kernel/bpf/helpers.c:4: In file included from include/linux/bpf.h:21: In file included from include/linux/kallsyms.h:13: In file included from include/linux/mm.h:2213: include/linux/vmstat.h:518:36: warning: arithmetic between different enumeration types ('enum node_stat_item' and 'enum lru_list') [-Wenum-enum-conversion] 518 | return node_stat_name(NR_LRU_BASE + lru) + 3; // skip "nr_" | ~~~~~~~~~~~ ^ ~~~ In file included from kernel/bpf/helpers.c:26: >> arch/riscv/include/asm/vdso/gettimeofday.h:72:21: warning: declaration of 'struct vdso_data' will not be visible outside of this function [-Wvisibility] 72 | const struct vdso_data *vd) | ^ >> arch/riscv/include/asm/vdso/gettimeofday.h:84:9: error: use of undeclared identifier '_vdso_data' 84 | return _vdso_data; | ^ >> arch/riscv/include/asm/vdso/gettimeofday.h:91:9: error: use of undeclared identifier '_timens_data' 91 | return _timens_data; | ^ kernel/bpf/helpers.c:115:36: warning: bitwise operation between different enumeration types ('enum bpf_arg_type' and 'enum bpf_type_flag') [-Wenum-enum-conversion] 115 | .arg2_type = ARG_PTR_TO_MAP_VALUE | MEM_UNINIT, | ~~~~~~~~~~~~~~~~~~~~ ^ ~~~~~~~~~~ kernel/bpf/helpers.c:128:36: warning: bitwise operation between different enumeration types ('enum bpf_arg_type' and 'enum bpf_type_flag') [-Wenum-enum-conversion] 128 | .arg2_type = ARG_PTR_TO_MAP_VALUE | MEM_UNINIT, | ~~~~~~~~~~~~~~~~~~~~ ^ ~~~~~~~~~~ kernel/bpf/helpers.c:539:30: warning: bitwise operation between different enumeration types ('enum bpf_arg_type' and 'enum bpf_type_flag') [-Wenum-enum-conversion] 539 | .arg1_type = ARG_PTR_TO_MEM | MEM_RDONLY, | ~~~~~~~~~~~~~~ ^ ~~~~~~~~~~ kernel/bpf/helpers.c:542:41: warning: bitwise operation between different enumeration types ('enum bpf_arg_type' and 'enum bpf_type_flag') [-Wenum-enum-conversion] 542 | .arg4_type = ARG_PTR_TO_FIXED_SIZE_MEM | MEM_UNINIT | MEM_ALIGNED, | ~~~~~~~~~~~~~~~~~~~~~~~~~ ^ ~~~~~~~~~~ kernel/bpf/helpers.c:567:30: warning: bitwise operation between different enumeration types ('enum bpf_arg_type' and 'enum bpf_type_flag') [-Wenum-enum-conversion] 567 | .arg1_type = ARG_PTR_TO_MEM | MEM_RDONLY, | ~~~~~~~~~~~~~~ ^ ~~~~~~~~~~ kernel/bpf/helpers.c:570:41: warning: bitwise operation between different enumeration types ('enum bpf_arg_type' and 'enum bpf_type_flag') [-Wenum-enum-conversion] 570 | .arg4_type = ARG_PTR_TO_FIXED_SIZE_MEM | MEM_UNINIT | MEM_ALIGNED, | ~~~~~~~~~~~~~~~~~~~~~~~~~ ^ ~~~~~~~~~~ kernel/bpf/helpers.c:583:30: warning: bitwise operation between different enumeration types ('enum bpf_arg_type' and 'enum bpf_type_flag') [-Wenum-enum-conversion] 583 | .arg1_type = ARG_PTR_TO_MEM | MEM_RDONLY, | ~~~~~~~~~~~~~~ ^ ~~~~~~~~~~ kernel/bpf/helpers.c:653:35: warning: bitwise operation between different enumeration types ('enum bpf_arg_type' and 'enum bpf_type_flag') [-Wenum-enum-conversion] 653 | .arg4_type = ARG_PTR_TO_MEM | MEM_RDONLY, | ~~~~~~~~~~~~~~ ^ ~~~~~~~~~~ kernel/bpf/helpers.c:725:39: warning: bitwise operation between different enumeration types ('enum bpf_return_type' and 'enum bpf_type_flag') [-Wenum-enum-conversion] 725 | .ret_type = RET_PTR_TO_MEM_OR_BTF_ID | PTR_MAYBE_NULL | MEM_RDONLY, | ~~~~~~~~~~~~~~~~~~~~~~~~ ^ ~~~~~~~~~~~~~~ kernel/bpf/helpers.c:738:39: warning: bitwise operation between different enumeration types ('enum bpf_return_type' and 'enum bpf_type_flag') [-Wenum-enum-conversion] 738 | .ret_type = RET_PTR_TO_MEM_OR_BTF_ID | MEM_RDONLY, | ~~~~~~~~~~~~~~~~~~~~~~~~ ^ ~~~~~~~~~~ kernel/bpf/helpers.c:1080:30: warning: bitwise operation between different enumeration types ('enum bpf_arg_type' and 'enum bpf_type_flag') [-Wenum-enum-conversion] 1080 | .arg4_type = ARG_PTR_TO_MEM | PTR_MAYBE_NULL | MEM_RDONLY, | ~~~~~~~~~~~~~~ ^ ~~~~~~~~~~~~~~ kernel/bpf/helpers.c:1641:44: warning: bitwise operation between different enumeration types ('enum bpf_arg_type' and 'enum bpf_type_flag') [-Wenum-enum-conversion] 1641 | .arg2_type = ARG_PTR_TO_BTF_ID_OR_NULL | OBJ_RELEASE, | ~~~~~~~~~~~~~~~~~~~~~~~~~ ^ ~~~~~~~~~~~ kernel/bpf/helpers.c:1746:33: warning: bitwise operation between different enumeration types ('enum bpf_arg_type' and 'enum bpf_type_flag') [-Wenum-enum-conversion] 1746 | .arg4_type = ARG_PTR_TO_DYNPTR | DYNPTR_TYPE_LOCAL | MEM_UNINIT, | ~~~~~~~~~~~~~~~~~ ^ ~~~~~~~~~~~~~~~~~ kernel/bpf/helpers.c:1789:33: warning: bitwise operation between different enumeration types ('enum bpf_arg_type' and 'enum bpf_type_flag') [-Wenum-enum-conversion] 1789 | .arg3_type = ARG_PTR_TO_DYNPTR | MEM_RDONLY, | ~~~~~~~~~~~~~~~~~ ^ ~~~~~~~~~~ kernel/bpf/helpers.c:1837:33: warning: bitwise operation between different enumeration types ('enum bpf_arg_type' and 'enum bpf_type_flag') [-Wenum-enum-conversion] 1837 | .arg1_type = ARG_PTR_TO_DYNPTR | MEM_RDONLY, | ~~~~~~~~~~~~~~~~~ ^ ~~~~~~~~~~ kernel/bpf/helpers.c:1839:30: warning: bitwise operation between different enumeration types ('enum bpf_arg_type' and 'enum bpf_type_flag') [-Wenum-enum-conversion] 1839 | .arg3_type = ARG_PTR_TO_MEM | MEM_RDONLY, | ~~~~~~~~~~~~~~ ^ ~~~~~~~~~~ kernel/bpf/helpers.c:1879:33: warning: bitwise operation between different enumeration types ('enum bpf_arg_type' and 'enum bpf_type_flag') [-Wenum-enum-conversion] 1879 | .arg1_type = ARG_PTR_TO_DYNPTR | MEM_RDONLY, | ~~~~~~~~~~~~~~~~~ ^ ~~~~~~~~~~ 19 warnings and 2 errors generated. vim +/_vdso_data +84 arch/riscv/include/asm/vdso/gettimeofday.h aa5af0aa90bad3 Evan Green 2023-04-07 70 4c5a116ada953b Thomas Gleixner 2020-08-04 71 static __always_inline u64 __arch_get_hw_counter(s32 clock_mode, 4c5a116ada953b Thomas Gleixner 2020-08-04 @72 const struct vdso_data *vd) ad5d1122b82fbd Vincent Chen 2020-06-09 73 { ad5d1122b82fbd Vincent Chen 2020-06-09 74 /* ad5d1122b82fbd Vincent Chen 2020-06-09 75 * The purpose of csr_read(CSR_TIME) is to trap the system into ad5d1122b82fbd Vincent Chen 2020-06-09 76 * M-mode to obtain the value of CSR_TIME. Hence, unlike other ad5d1122b82fbd Vincent Chen 2020-06-09 77 * architecture, no fence instructions surround the csr_read() ad5d1122b82fbd Vincent Chen 2020-06-09 78 */ ad5d1122b82fbd Vincent Chen 2020-06-09 79 return csr_read(CSR_TIME); ad5d1122b82fbd Vincent Chen 2020-06-09 80 } ad5d1122b82fbd Vincent Chen 2020-06-09 81 ad5d1122b82fbd Vincent Chen 2020-06-09 82 static __always_inline const struct vdso_data *__arch_get_vdso_data(void) ad5d1122b82fbd Vincent Chen 2020-06-09 83 { ad5d1122b82fbd Vincent Chen 2020-06-09 @84 return _vdso_data; ad5d1122b82fbd Vincent Chen 2020-06-09 85 } ad5d1122b82fbd Vincent Chen 2020-06-09 86 dffe11e280a42c Tong Tiangen 2021-09-01 87 #ifdef CONFIG_TIME_NS dffe11e280a42c Tong Tiangen 2021-09-01 88 static __always_inline dffe11e280a42c Tong Tiangen 2021-09-01 89 const struct vdso_data *__arch_get_timens_vdso_data(const struct vdso_data *vd) dffe11e280a42c Tong Tiangen 2021-09-01 90 { dffe11e280a42c Tong Tiangen 2021-09-01 @91 return _timens_data; dffe11e280a42c Tong Tiangen 2021-09-01 92 } dffe11e280a42c Tong Tiangen 2021-09-01 93 #endif ad5d1122b82fbd Vincent Chen 2020-06-09 94 #endif /* !__ASSEMBLY__ */ ad5d1122b82fbd Vincent Chen 2020-06-09 95 -- 0-DAY CI Kernel Test Service https://github.com/intel/lkp-tests/wiki