Hi Steven, FYI, the error/warning still remains.
tree: https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git master head: 8e143b90e4d45cca3dc53760d3cfab988bc74571 commit: cec8d0e7f06e08b981e9d61bef267c8c36d536f5 sh: ftrace: Use ftrace_graph_get_ret_stack() instead of curr_ret_stack date: 11 days ago config: sh-allmodconfig (attached as .config) compiler: sh4-linux-gnu-gcc (Debian 7.2.0-11) 7.2.0 reproduce: wget https://raw.githubusercontent.com/intel/lkp-tests/master/sbin/make.cross -O ~/bin/make.cross chmod +x ~/bin/make.cross git checkout cec8d0e7f06e08b981e9d61bef267c8c36d536f5 # save the attached .config to linux build tree GCC_VERSION=7.2.0 make.cross ARCH=sh All errors (new ones prefixed by >>): arch/sh/kernel/dwarf.c: In function 'dwarf_unwind_stack': >> arch/sh/kernel/dwarf.c:1209:0: error: unterminated argument list invoking >> macro "WARN_ON" early_initcall(dwarf_unwinder_init); >> arch/sh/kernel/dwarf.c:622:3: error: 'WARN_ON' undeclared (first use in this >> function); did you mean 'WMARK_LOW'? WARN_ON(ftrace_graph_get_ret_stack(current, 1); ^~~~~~~ WMARK_LOW arch/sh/kernel/dwarf.c:622:3: note: each undeclared identifier is reported only once for each function it appears in >> arch/sh/kernel/dwarf.c:622:3: error: expected ';' at end of input >> arch/sh/kernel/dwarf.c:622:3: error: expected declaration or statement at >> end of input >> arch/sh/kernel/dwarf.c:622:3: error: expected declaration or statement at >> end of input >> arch/sh/kernel/dwarf.c:584:16: error: unused variable 'addr' >> [-Werror=unused-variable] unsigned long addr; ^~~~ >> arch/sh/kernel/dwarf.c:583:20: error: unused variable 'reg' >> [-Werror=unused-variable] struct dwarf_reg *reg; ^~~ >> arch/sh/kernel/dwarf.c:582:20: error: unused variable 'fde' >> [-Werror=unused-variable] struct dwarf_fde *fde; ^~~ >> arch/sh/kernel/dwarf.c:581:20: error: unused variable 'cie' >> [-Werror=unused-variable] struct dwarf_cie *cie; ^~~ >> arch/sh/kernel/dwarf.c:580:22: error: unused variable 'frame' >> [-Werror=unused-variable] struct dwarf_frame *frame; ^~~~~ arch/sh/kernel/dwarf.c:622:3: error: control reaches end of non-void function [-Werror=return-type] WARN_ON(ftrace_graph_get_ret_stack(current, 1); ^~~~~~~ At top level: >> arch/sh/kernel/dwarf.c:399:12: error: 'dwarf_cfa_execute_insns' defined but >> not used [-Werror=unused-function] static int dwarf_cfa_execute_insns(unsigned char *insn_start, ^~~~~~~~~~~~~~~~~~~~~~~ >> arch/sh/kernel/dwarf.c:306:26: error: 'dwarf_lookup_cie' defined but not >> used [-Werror=unused-function] static struct dwarf_cie *dwarf_lookup_cie(unsigned long cie_ptr) ^~~~~~~~~~~~~~~~ >> arch/sh/kernel/dwarf.c:226:12: error: 'dwarf_read_encoded_value' defined but >> not used [-Werror=unused-function] static int dwarf_read_encoded_value(char *addr, unsigned long *val, ^~~~~~~~~~~~~~~~~~~~~~~~ >> arch/sh/kernel/dwarf.c:107:26: error: 'dwarf_frame_reg' defined but not used >> [-Werror=unused-function] static struct dwarf_reg *dwarf_frame_reg(struct dwarf_frame *frame, ^~~~~~~~~~~~~~~ >> arch/sh/kernel/dwarf.c:41:27: error: 'dwarf_reg_cachep' defined but not used >> [-Werror=unused-variable] static struct kmem_cache *dwarf_reg_cachep; ^~~~~~~~~~~~~~~~ >> arch/sh/kernel/dwarf.c:38:27: error: 'dwarf_frame_cachep' defined but not >> used [-Werror=unused-variable] static struct kmem_cache *dwarf_frame_cachep; ^~~~~~~~~~~~~~~~~~ cc1: all warnings being treated as errors vim +/WARN_ON +1209 arch/sh/kernel/dwarf.c a6a2f2ad Matt Fleming 2009-10-09 1160 a6a2f2ad Matt Fleming 2009-10-09 1161 /** a6a2f2ad Matt Fleming 2009-10-09 1162 * dwarf_unwinder_init - initialise the dwarf unwinder a6a2f2ad Matt Fleming 2009-10-09 1163 * a6a2f2ad Matt Fleming 2009-10-09 1164 * Build the data structures describing the .dwarf_frame section to a6a2f2ad Matt Fleming 2009-10-09 1165 * make it easier to lookup CIE and FDE entries. Because the a6a2f2ad Matt Fleming 2009-10-09 1166 * .eh_frame section is packed as tightly as possible it is not a6a2f2ad Matt Fleming 2009-10-09 1167 * easy to lookup the FDE for a given PC, so we build a list of FDE a6a2f2ad Matt Fleming 2009-10-09 1168 * and CIE entries that make it easier. a6a2f2ad Matt Fleming 2009-10-09 1169 */ a6a2f2ad Matt Fleming 2009-10-09 1170 static int __init dwarf_unwinder_init(void) a6a2f2ad Matt Fleming 2009-10-09 1171 { 8a37f520 Paul Mundt 2010-05-25 1172 int err = -ENOMEM; a6a2f2ad Matt Fleming 2009-10-09 1173 a6a2f2ad Matt Fleming 2009-10-09 1174 dwarf_frame_cachep = kmem_cache_create("dwarf_frames", 8ec006c5 Paul Mundt 2009-10-12 1175 sizeof(struct dwarf_frame), 0, 75f296d9 Levin, Alexander (Sasha Levin 2017-11-15 1176) SLAB_PANIC | SLAB_HWCACHE_ALIGN, NULL); 8ec006c5 Paul Mundt 2009-10-12 1177 a6a2f2ad Matt Fleming 2009-10-09 1178 dwarf_reg_cachep = kmem_cache_create("dwarf_regs", 8ec006c5 Paul Mundt 2009-10-12 1179 sizeof(struct dwarf_reg), 0, 75f296d9 Levin, Alexander (Sasha Levin 2017-11-15 1180) SLAB_PANIC | SLAB_HWCACHE_ALIGN, NULL); a6a2f2ad Matt Fleming 2009-10-09 1181 1cf370c6 David Rientjes 2015-04-14 1182 dwarf_frame_pool = mempool_create_slab_pool(DWARF_FRAME_MIN_REQ, a6a2f2ad Matt Fleming 2009-10-09 1183 dwarf_frame_cachep); 8a37f520 Paul Mundt 2010-05-25 1184 if (!dwarf_frame_pool) 8a37f520 Paul Mundt 2010-05-25 1185 goto out; a6a2f2ad Matt Fleming 2009-10-09 1186 1cf370c6 David Rientjes 2015-04-14 1187 dwarf_reg_pool = mempool_create_slab_pool(DWARF_REG_MIN_REQ, a6a2f2ad Matt Fleming 2009-10-09 1188 dwarf_reg_cachep); 8a37f520 Paul Mundt 2010-05-25 1189 if (!dwarf_reg_pool) 8a37f520 Paul Mundt 2010-05-25 1190 goto out; a6a2f2ad Matt Fleming 2009-10-09 1191 a6a2f2ad Matt Fleming 2009-10-09 1192 err = dwarf_parse_section(__start_eh_frame, __stop_eh_frame, NULL); a6a2f2ad Matt Fleming 2009-10-09 1193 if (err) a6a2f2ad Matt Fleming 2009-10-09 1194 goto out; a6a2f2ad Matt Fleming 2009-10-09 1195 bd353861 Matt Fleming 2009-08-14 1196 err = unwinder_register(&dwarf_unwinder); bd353861 Matt Fleming 2009-08-14 1197 if (err) bd353861 Matt Fleming 2009-08-14 1198 goto out; bd353861 Matt Fleming 2009-08-14 1199 8a37f520 Paul Mundt 2010-05-25 1200 dwarf_unwinder_ready = 1; 8a37f520 Paul Mundt 2010-05-25 1201 97f361e2 Paul Mundt 2009-08-17 1202 return 0; bd353861 Matt Fleming 2009-08-14 1203 bd353861 Matt Fleming 2009-08-14 1204 out: bd353861 Matt Fleming 2009-08-14 1205 printk(KERN_ERR "Failed to initialise DWARF unwinder: %d\n", err); bd353861 Matt Fleming 2009-08-14 1206 dwarf_unwinder_cleanup(); 8a37f520 Paul Mundt 2010-05-25 1207 return err; bd353861 Matt Fleming 2009-08-14 1208 } 97f361e2 Paul Mundt 2009-08-17 @1209 early_initcall(dwarf_unwinder_init); :::::: The code at line 1209 was first introduced by commit :::::: 97f361e2498ada54b48a235619eaf5af8e46427e sh: unwinder: Move initialization to early_initcall() and tidy up locking. :::::: TO: Paul Mundt <let...@linux-sh.org> :::::: CC: Paul Mundt <let...@linux-sh.org> --- 0-DAY kernel test infrastructure Open Source Technology Center https://lists.01.org/pipermail/kbuild-all Intel Corporation
.config.gz
Description: application/gzip