Hi Donglin, kernel test robot noticed the following build errors:
[auto build test ERROR on trace/for-next] [also build test ERROR on linus/master v6.18 next-20251212] [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#_base_tree_information] url: https://github.com/intel-lab-lkp/linux/commits/Donglin-Peng/fgraph-Enhance-funcgraph-retval-with-BTF-based-type-aware-output/20251209-201633 base: https://git.kernel.org/pub/scm/linux/kernel/git/trace/linux-trace for-next patch link: https://lore.kernel.org/r/20251209121349.525641-2-dolinux.peng%40gmail.com patch subject: [PATCH v3 1/2] fgraph: Enhance funcgraph-retval with BTF-based type-aware output config: arm-randconfig-002-20251214 (https://download.01.org/0day-ci/archive/20251214/[email protected]/config) compiler: arm-linux-gnueabi-gcc (GCC) 10.5.0 reproduce (this is a W=1 build): (https://download.01.org/0day-ci/archive/20251214/[email protected]/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 <[email protected]> | Closes: https://lore.kernel.org/oe-kbuild-all/[email protected]/ All errors (new ones prefixed by >>): arm-linux-gnueabi-ld: kernel/trace/trace_functions_graph.o: in function `trim_retval': >> kernel/trace/trace_functions_graph.c:888: undefined reference to >> `btf_find_func_proto' vim +888 kernel/trace/trace_functions_graph.c 872 873 static void trim_retval(unsigned long func, unsigned long *retval, bool *print_retval, 874 int *fmt) 875 { 876 const struct btf_type *t; 877 char name[KSYM_NAME_LEN]; 878 struct btf *btf; 879 u32 v, msb; 880 int kind; 881 882 if (!IS_ENABLED(CONFIG_DEBUG_INFO_BTF)) 883 return; 884 885 if (lookup_symbol_name(func, name)) 886 return; 887 > 888 t = btf_find_func_proto(name, &btf); 889 if (IS_ERR_OR_NULL(t)) 890 return; 891 892 t = btf_type_skip_modifiers(btf, t->type, NULL); 893 kind = t ? BTF_INFO_KIND(t->info) : BTF_KIND_UNKN; 894 switch (kind) { 895 case BTF_KIND_UNKN: 896 *print_retval = false; 897 break; 898 case BTF_KIND_STRUCT: 899 case BTF_KIND_UNION: 900 case BTF_KIND_ENUM: 901 case BTF_KIND_ENUM64: 902 if (kind == BTF_KIND_STRUCT || kind == BTF_KIND_UNION) 903 *fmt = RETVAL_FMT_HEX; 904 else 905 *fmt = RETVAL_FMT_DEC; 906 907 if (t->size > sizeof(unsigned long)) { 908 *fmt |= RETVAL_FMT_TRUNC; 909 } else { 910 msb = BITS_PER_BYTE * t->size - 1; 911 *retval &= GENMASK(msb, 0); 912 } 913 break; 914 case BTF_KIND_INT: 915 v = *(u32 *)(t + 1); 916 if (BTF_INT_ENCODING(v) == BTF_INT_BOOL) { 917 *fmt = RETVAL_FMT_BOOL; 918 msb = 0; 919 } else { 920 if (BTF_INT_ENCODING(v) == BTF_INT_SIGNED) 921 *fmt = RETVAL_FMT_DEC; 922 else 923 *fmt = RETVAL_FMT_HEX; 924 925 if (t->size > sizeof(unsigned long)) { 926 *fmt |= RETVAL_FMT_TRUNC; 927 msb = BITS_PER_LONG - 1; 928 } else { 929 msb = BTF_INT_BITS(v) - 1; 930 } 931 } 932 *retval &= GENMASK(msb, 0); 933 break; 934 default: 935 *fmt = RETVAL_FMT_HEX; 936 break; 937 } 938 } 939 -- 0-DAY CI Kernel Test Service https://github.com/intel/lkp-tests/wiki
