arch/riscv/kernel/stacktrace.c:78:8: error: 'sp_in_global' undeclared

From: kbuild test robot
Date: Fri Apr 10 2020 - 14:04:22 EST


Hi Palmer,

FYI, the error/warning still remains.

tree: https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git master
head: c0cc271173b2e1c2d8d0ceaef14e4dfa79eefc0d
commit: 52e7c52d2ded5908e6a4f8a7248e5fa6e0d6809a RISC-V: Stop relying on GCC's register allocator's hueristics
date: 5 weeks ago
config: riscv-allnoconfig (attached as .config)
compiler: riscv64-linux-gcc (GCC) 9.3.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 52e7c52d2ded5908e6a4f8a7248e5fa6e0d6809a
# save the attached .config to linux build tree
GCC_VERSION=9.3.0 make.cross ARCH=riscv

If you fix the issue, kindly add following tag as appropriate
Reported-by: kbuild test robot <lkp@xxxxxxxxx>

All errors (new ones prefixed by >>):

arch/riscv/kernel/stacktrace.c: In function 'walk_stackframe':
>> arch/riscv/kernel/stacktrace.c:78:8: error: 'sp_in_global' undeclared (first use in this function)
78 | sp = sp_in_global;
| ^~~~~~~~~~~~
arch/riscv/kernel/stacktrace.c:78:8: note: each undeclared identifier is reported only once for each function it appears in

vim +/sp_in_global +78 arch/riscv/kernel/stacktrace.c

67
68 static void notrace walk_stackframe(struct task_struct *task,
69 struct pt_regs *regs, bool (*fn)(unsigned long, void *), void *arg)
70 {
71 unsigned long sp, pc;
72 unsigned long *ksp;
73
74 if (regs) {
75 sp = user_stack_pointer(regs);
76 pc = instruction_pointer(regs);
77 } else if (task == NULL || task == current) {
> 78 sp = sp_in_global;
79 pc = (unsigned long)walk_stackframe;
80 } else {
81 /* task blocked in __switch_to */
82 sp = task->thread.sp;
83 pc = task->thread.ra;
84 }
85
86 if (unlikely(sp & 0x7))
87 return;
88
89 ksp = (unsigned long *)sp;
90 while (!kstack_end(ksp)) {
91 if (__kernel_text_address(pc) && unlikely(fn(pc, arg)))
92 break;
93 pc = (*ksp++) - 0x4;
94 }
95 }
96

---
0-DAY CI Kernel Test Service, Intel Corporation
https://lists.01.org/hyperkitty/list/kbuild-all@xxxxxxxxxxxx

Attachment: .config.gz
Description: application/gzip