arch/arc/include/asm/fpu.h:21:37: warning: 'struct task_struct' declared inside parameter list will not be visible outside of this definition or declaration

From: kbuild test robot
Date: Fri Feb 07 2020 - 19:21:38 EST


tree: https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git master
head: 90568ecf561540fa330511e21fcd823b0c3829c6
commit: f05523aa7a1e63bfada5e222c0a57e02dbd4fcfa ARC: fpu: declutter code, move bits out into fpu.h
date: 3 weeks ago
config: arc-randconfig-a001-20200208 (attached as .config)
compiler: arc-elf-gcc (GCC) 9.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 f05523aa7a1e63bfada5e222c0a57e02dbd4fcfa
# save the attached .config to linux build tree
GCC_VERSION=9.2.0 make.cross ARCH=arc

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

All warnings (new ones prefixed by >>):

In file included from arch/arc/include/asm/processor.h:17,
from arch/arc/include/asm/spinlock.h:10,
from arch/arc/include/asm/smp.h:105,
from arch/arc/include/asm/bitops.h:19,
from include/linux/bitops.h:26,
from include/linux/kernel.h:12,
from include/linux/list.h:9,
from include/linux/module.h:12,
from drivers//soundwire/bus_type.c:4:
>> arch/arc/include/asm/fpu.h:21:37: warning: 'struct task_struct' declared inside parameter list will not be visible outside of this definition or declaration
21 | extern void fpu_save_restore(struct task_struct *p, struct task_struct *n);
| ^~~~~~~~~~~
--
In file included from arch/arc/include/asm/processor.h:17,
from arch/arc/include/asm/spinlock.h:10,
from arch/arc/include/asm/smp.h:105,
from arch/arc/include/asm/bitops.h:19,
from include/linux/bitops.h:26,
from include/linux/kernel.h:12,
from include/linux/interrupt.h:6,
from drivers/irqchip/irq-tb10x.c:10:
>> arch/arc/include/asm/fpu.h:21:37: warning: 'struct task_struct' declared inside parameter list will not be visible outside of this definition or declaration
21 | extern void fpu_save_restore(struct task_struct *p, struct task_struct *n);
| ^~~~~~~~~~~
drivers/irqchip/irq-tb10x.c: In function 'tb10x_irq_set_type':
drivers/irqchip/irq-tb10x.c:62:13: warning: this statement may fall through [-Wimplicit-fallthrough=]
62 | flow_type = IRQ_TYPE_LEVEL_LOW;
| ~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~
drivers/irqchip/irq-tb10x.c:63:2: note: here
63 | case IRQ_TYPE_LEVEL_LOW:
| ^~~~
--
In file included from arch/arc/include/asm/processor.h:17,
from arch/arc/include/asm/spinlock.h:10,
from arch/arc/include/asm/smp.h:105,
from arch/arc/include/asm/bitops.h:19,
from include/linux/bitops.h:26,
from include/linux/kernel.h:12,
from include/linux/interrupt.h:6,
from drivers/irqchip/irq-eznps.c:33:
>> arch/arc/include/asm/fpu.h:21:37: warning: 'struct task_struct' declared inside parameter list will not be visible outside of this definition or declaration
21 | extern void fpu_save_restore(struct task_struct *p, struct task_struct *n);
| ^~~~~~~~~~~
In file included from arch/arc/include/asm/arcregs.h:121,
from arch/arc/include/asm/irqflags-compact.h:16,
from arch/arc/include/asm/irqflags.h:11,
from include/linux/irqflags.h:16,
from arch/arc/include/asm/smp.h:102,
from arch/arc/include/asm/bitops.h:19,
from include/linux/bitops.h:26,
from include/linux/kernel.h:12,
from include/linux/interrupt.h:6,
from drivers/irqchip/irq-eznps.c:33:
drivers/irqchip/irq-eznps.c: In function 'nps400_irq_eoi_global':
drivers/irqchip/irq-eznps.c:80:16: error: 'CTOP_AUX_IACK' undeclared (first use in this function)
80 | write_aux_reg(CTOP_AUX_IACK, 1 << irq);
| ^~~~~~~~~~~~~
include/soc/arc/aux.h:14:65: note: in definition of macro 'write_aux_reg'
14 | #define write_aux_reg(r, v) __builtin_arc_sr((unsigned int)(v), r)
| ^
drivers/irqchip/irq-eznps.c:80:16: note: each undeclared identifier is reported only once for each function it appears in
80 | write_aux_reg(CTOP_AUX_IACK, 1 << irq);
| ^~~~~~~~~~~~~
include/soc/arc/aux.h:14:65: note: in definition of macro 'write_aux_reg'
14 | #define write_aux_reg(r, v) __builtin_arc_sr((unsigned int)(v), r)
| ^
drivers/irqchip/irq-eznps.c: In function 'nps400_irq_ack':
drivers/irqchip/irq-eznps.c:92:16: error: 'CTOP_AUX_IACK' undeclared (first use in this function)
92 | write_aux_reg(CTOP_AUX_IACK, 1 << irq);
| ^~~~~~~~~~~~~
include/soc/arc/aux.h:14:65: note: in definition of macro 'write_aux_reg'
14 | #define write_aux_reg(r, v) __builtin_arc_sr((unsigned int)(v), r)
| ^
--
In file included from arch/arc/include/asm/processor.h:17,
from arch/arc/include/asm/spinlock.h:10,
from arch/arc/include/asm/smp.h:105,
from arch/arc/include/asm/bitops.h:19,
from include/linux/bitops.h:26,
from include/linux/kernel.h:12,
from drivers//mtd/devices/docg3.c:8:
>> arch/arc/include/asm/fpu.h:21:37: warning: 'struct task_struct' declared inside parameter list will not be visible outside of this definition or declaration
21 | extern void fpu_save_restore(struct task_struct *p, struct task_struct *n);
| ^~~~~~~~~~~
In file included from drivers//mtd/devices/docg3.h:343,
from drivers//mtd/devices/docg3.c:27:
include/trace/define_trace.h:95:42: fatal error: ./docg3.h: No such file or directory
95 | #include TRACE_INCLUDE(TRACE_INCLUDE_FILE)
| ^
compilation terminated.
--
In file included from arch/arc/include/asm/processor.h:17,
from arch/arc/include/asm/spinlock.h:10,
from arch/arc/include/asm/smp.h:105,
from arch/arc/include/asm/bitops.h:19,
from include/linux/bitops.h:26,
from include/linux/kernel.h:12,
from include/linux/greybus.h:14,
from drivers//greybus/core.c:12:
>> arch/arc/include/asm/fpu.h:21:37: warning: 'struct task_struct' declared inside parameter list will not be visible outside of this definition or declaration
21 | extern void fpu_save_restore(struct task_struct *p, struct task_struct *n);
| ^~~~~~~~~~~
In file included from drivers//greybus/greybus_trace.h:501,
from drivers//greybus/core.c:13:
include/trace/define_trace.h:95:42: fatal error: ./greybus_trace.h: No such file or directory
95 | #include TRACE_INCLUDE(TRACE_INCLUDE_FILE)
| ^
compilation terminated.
--
In file included from arch/arc/include/asm/processor.h:17,
from arch/arc/include/asm/spinlock.h:10,
from arch/arc/include/asm/smp.h:105,
from arch/arc/include/asm/bitops.h:19,
from include/linux/bitops.h:26,
from include/linux/kernel.h:12,
from include/linux/list.h:9,
from include/linux/kobject.h:19,
from include/linux/device.h:16,
from drivers//base/regmap/regmap.c:9:
>> arch/arc/include/asm/fpu.h:21:37: warning: 'struct task_struct' declared inside parameter list will not be visible outside of this definition or declaration
21 | extern void fpu_save_restore(struct task_struct *p, struct task_struct *n);
| ^~~~~~~~~~~
In file included from drivers//base/regmap/trace.h:258,
from drivers//base/regmap/regmap.c:22:
include/trace/define_trace.h:95:42: fatal error: ./trace.h: No such file or directory
95 | #include TRACE_INCLUDE(TRACE_INCLUDE_FILE)
| ^
compilation terminated.
--
In file included from arch/arc/include/asm/processor.h:17,
from arch/arc/include/asm/spinlock.h:10,
from arch/arc/include/asm/smp.h:105,
from arch/arc/include/asm/bitops.h:19,
from include/linux/bitops.h:26,
from include/linux/kernel.h:12,
from include/linux/interrupt.h:6,
from drivers//irqchip/irq-tb10x.c:10:
>> arch/arc/include/asm/fpu.h:21:37: warning: 'struct task_struct' declared inside parameter list will not be visible outside of this definition or declaration
21 | extern void fpu_save_restore(struct task_struct *p, struct task_struct *n);
| ^~~~~~~~~~~
drivers//irqchip/irq-tb10x.c: In function 'tb10x_irq_set_type':
drivers//irqchip/irq-tb10x.c:62:13: warning: this statement may fall through [-Wimplicit-fallthrough=]
62 | flow_type = IRQ_TYPE_LEVEL_LOW;
| ~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~
drivers//irqchip/irq-tb10x.c:63:2: note: here
63 | case IRQ_TYPE_LEVEL_LOW:
| ^~~~
--
In file included from arch/arc/include/asm/processor.h:17,
from arch/arc/include/asm/spinlock.h:10,
from arch/arc/include/asm/smp.h:105,
from arch/arc/include/asm/bitops.h:19,
from include/linux/bitops.h:26,
from include/linux/kernel.h:12,
from include/linux/interrupt.h:6,
from drivers//irqchip/irq-eznps.c:33:
>> arch/arc/include/asm/fpu.h:21:37: warning: 'struct task_struct' declared inside parameter list will not be visible outside of this definition or declaration
21 | extern void fpu_save_restore(struct task_struct *p, struct task_struct *n);
| ^~~~~~~~~~~
In file included from arch/arc/include/asm/arcregs.h:121,
from arch/arc/include/asm/irqflags-compact.h:16,
from arch/arc/include/asm/irqflags.h:11,
from include/linux/irqflags.h:16,
from arch/arc/include/asm/smp.h:102,
from arch/arc/include/asm/bitops.h:19,
from include/linux/bitops.h:26,
from include/linux/kernel.h:12,
from include/linux/interrupt.h:6,
from drivers//irqchip/irq-eznps.c:33:
drivers//irqchip/irq-eznps.c: In function 'nps400_irq_eoi_global':
drivers//irqchip/irq-eznps.c:80:16: error: 'CTOP_AUX_IACK' undeclared (first use in this function)
80 | write_aux_reg(CTOP_AUX_IACK, 1 << irq);
| ^~~~~~~~~~~~~
include/soc/arc/aux.h:14:65: note: in definition of macro 'write_aux_reg'
14 | #define write_aux_reg(r, v) __builtin_arc_sr((unsigned int)(v), r)
| ^
drivers//irqchip/irq-eznps.c:80:16: note: each undeclared identifier is reported only once for each function it appears in
80 | write_aux_reg(CTOP_AUX_IACK, 1 << irq);
| ^~~~~~~~~~~~~
include/soc/arc/aux.h:14:65: note: in definition of macro 'write_aux_reg'
14 | #define write_aux_reg(r, v) __builtin_arc_sr((unsigned int)(v), r)
| ^
drivers//irqchip/irq-eznps.c: In function 'nps400_irq_ack':
drivers//irqchip/irq-eznps.c:92:16: error: 'CTOP_AUX_IACK' undeclared (first use in this function)
92 | write_aux_reg(CTOP_AUX_IACK, 1 << irq);
| ^~~~~~~~~~~~~
include/soc/arc/aux.h:14:65: note: in definition of macro 'write_aux_reg'
14 | #define write_aux_reg(r, v) __builtin_arc_sr((unsigned int)(v), r)
| ^

vim +21 arch/arc/include/asm/fpu.h

20
> 21 extern void fpu_save_restore(struct task_struct *p, struct task_struct *n);
22

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

Attachment: .config.gz
Description: application/gzip