tree:
https://git.kernel.org/pub/scm/linux/kernel/git/tip/tip.git irq/core
head: 1d07a835819e2d3c85af8f093a02c2e6bca422d6
commit: af5b7fe6bb77ac775d446e2f25f013d5df551e9a [14/15] genirq: Change force_irqthreads
to a static key
config: i386-tinyconfig (attached as .config)
compiler: gcc-9 (Debian 9.3.0-22) 9.3.0
reproduce (this is a W=1 build):
#
https://git.kernel.org/pub/scm/linux/kernel/git/tip/tip.git/commit/?id=af...
git remote add tip
https://git.kernel.org/pub/scm/linux/kernel/git/tip/tip.git
git fetch --no-tags tip irq/core
git checkout af5b7fe6bb77ac775d446e2f25f013d5df551e9a
# save the attached .config to linux build tree
mkdir build_dir
make W=1 O=build_dir ARCH=i386 SHELL=/bin/bash kernel/irq/
If you fix the issue, kindly add following tag as appropriate
Reported-by: kernel test robot <lkp(a)intel.com>
All errors (new ones prefixed by >>):
kernel/irq/manage.c: In function 'irq_setup_forced_threading':
> kernel/irq/manage.c:1324:7: error: 'force_irqthreads'
undeclared (first use in this function); did you mean 'force_irqthreads_key'?
1324 | if (!force_irqthreads)
| ^~~~~~~~~~~~~~~~
| force_irqthreads_key
kernel/irq/manage.c:1324:7: note: each undeclared identifier is reported only once for
each function it appears in
vim +1324 kernel/irq/manage.c
a92444c6b2225a Thomas Gleixner 2014-02-15 1321
2a1d3ab8986d1b Thomas Gleixner 2015-09-21 1322 static int
irq_setup_forced_threading(struct irqaction *new)
8d32a307e4faa8 Thomas Gleixner 2011-02-23 1323 {
8d32a307e4faa8 Thomas Gleixner 2011-02-23 @1324 if (!force_irqthreads)
2a1d3ab8986d1b Thomas Gleixner 2015-09-21 1325 return 0;
8d32a307e4faa8 Thomas Gleixner 2011-02-23 1326 if (new->flags & (IRQF_NO_THREAD
| IRQF_PERCPU | IRQF_ONESHOT))
2a1d3ab8986d1b Thomas Gleixner 2015-09-21 1327 return 0;
8d32a307e4faa8 Thomas Gleixner 2011-02-23 1328
d1f0301b3333ee Thomas Gleixner 2018-08-03 1329 /*
d1f0301b3333ee Thomas Gleixner 2018-08-03 1330 * No further action required for
interrupts which are requested as
d1f0301b3333ee Thomas Gleixner 2018-08-03 1331 * threaded interrupts already
d1f0301b3333ee Thomas Gleixner 2018-08-03 1332 */
d1f0301b3333ee Thomas Gleixner 2018-08-03 1333 if (new->handler ==
irq_default_primary_handler)
d1f0301b3333ee Thomas Gleixner 2018-08-03 1334 return 0;
d1f0301b3333ee Thomas Gleixner 2018-08-03 1335
8d32a307e4faa8 Thomas Gleixner 2011-02-23 1336 new->flags |= IRQF_ONESHOT;
8d32a307e4faa8 Thomas Gleixner 2011-02-23 1337
2a1d3ab8986d1b Thomas Gleixner 2015-09-21 1338 /*
2a1d3ab8986d1b Thomas Gleixner 2015-09-21 1339 * Handle the case where we have a real
primary handler and a
2a1d3ab8986d1b Thomas Gleixner 2015-09-21 1340 * thread handler. We force thread them
as well by creating a
2a1d3ab8986d1b Thomas Gleixner 2015-09-21 1341 * secondary action.
2a1d3ab8986d1b Thomas Gleixner 2015-09-21 1342 */
d1f0301b3333ee Thomas Gleixner 2018-08-03 1343 if (new->handler &&
new->thread_fn) {
2a1d3ab8986d1b Thomas Gleixner 2015-09-21 1344 /* Allocate the secondary action */
2a1d3ab8986d1b Thomas Gleixner 2015-09-21 1345 new->secondary =
kzalloc(sizeof(struct irqaction), GFP_KERNEL);
2a1d3ab8986d1b Thomas Gleixner 2015-09-21 1346 if (!new->secondary)
2a1d3ab8986d1b Thomas Gleixner 2015-09-21 1347 return -ENOMEM;
2a1d3ab8986d1b Thomas Gleixner 2015-09-21 1348 new->secondary->handler =
irq_forced_secondary_handler;
2a1d3ab8986d1b Thomas Gleixner 2015-09-21 1349 new->secondary->thread_fn =
new->thread_fn;
2a1d3ab8986d1b Thomas Gleixner 2015-09-21 1350 new->secondary->dev_id =
new->dev_id;
2a1d3ab8986d1b Thomas Gleixner 2015-09-21 1351 new->secondary->irq =
new->irq;
2a1d3ab8986d1b Thomas Gleixner 2015-09-21 1352 new->secondary->name =
new->name;
2a1d3ab8986d1b Thomas Gleixner 2015-09-21 1353 }
2a1d3ab8986d1b Thomas Gleixner 2015-09-21 1354 /* Deal with the primary handler */
8d32a307e4faa8 Thomas Gleixner 2011-02-23 1355 set_bit(IRQTF_FORCED_THREAD,
&new->thread_flags);
8d32a307e4faa8 Thomas Gleixner 2011-02-23 1356 new->thread_fn = new->handler;
8d32a307e4faa8 Thomas Gleixner 2011-02-23 1357 new->handler =
irq_default_primary_handler;
2a1d3ab8986d1b Thomas Gleixner 2015-09-21 1358 return 0;
8d32a307e4faa8 Thomas Gleixner 2011-02-23 1359 }
8d32a307e4faa8 Thomas Gleixner 2011-02-23 1360
:::::: The code at line 1324 was first introduced by commit
:::::: 8d32a307e4faa8b123dc8a9cd56d1a7525f69ad3 genirq: Provide forced interrupt
threading
:::::: TO: Thomas Gleixner <tglx(a)linutronix.de>
:::::: CC: Thomas Gleixner <tglx(a)linutronix.de>
---
0-DAY CI Kernel Test Service, Intel Corporation
https://lists.01.org/hyperkitty/list/kbuild-all@lists.01.org