wcd938x.c:undefined reference to `wcd938x_sdw_free'
by kernel test robot
tree: https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git master
head: 7fef2edf7cc753b51f7ccc74993971b0a9c81eca
commit: 04544222886881cb0865040dcdf747fe7e025947 ASoC: codecs: wcd938x: add audio routing and Kconfig
date: 4 weeks ago
config: ia64-randconfig-c004-20210713 (attached as .config)
compiler: ia64-linux-gcc (GCC) 9.3.0
reproduce (this is a W=1 build):
wget https://raw.githubusercontent.com/intel/lkp-tests/master/sbin/make.cross -O ~/bin/make.cross
chmod +x ~/bin/make.cross
# https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/commit...
git remote add linus https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
git fetch --no-tags linus master
git checkout 04544222886881cb0865040dcdf747fe7e025947
# save the attached .config to linux build tree
mkdir build_dir
COMPILER_INSTALL_PATH=$HOME/0day COMPILER=gcc-9.3.0 make.cross O=build_dir ARCH=ia64 SHELL=/bin/bash
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 >>):
ia64-linux-ld: sound/soc/codecs/wcd938x.o: in function `wcd938x_codec_free':
>> wcd938x.c:(.text+0x892): undefined reference to `wcd938x_sdw_free'
ia64-linux-ld: sound/soc/codecs/wcd938x.o: in function `wcd938x_codec_hw_params':
>> wcd938x.c:(.text+0x922): undefined reference to `wcd938x_sdw_hw_params'
ia64-linux-ld: sound/soc/codecs/wcd938x.o: in function `wcd938x_codec_set_sdw_stream':
>> wcd938x.c:(.text+0x9b2): undefined reference to `wcd938x_sdw_set_sdw_stream'
ia64-linux-ld: sound/soc/codecs/wcd938x.o: in function `wcd938x_tx_swr_ctrl':
>> wcd938x.c:(.text+0x2b62): undefined reference to `wcd938x_swr_get_current_bank'
ia64-linux-ld: sound/soc/codecs/wcd938x.o: in function `wcd938x_bind':
>> wcd938x.c:(.text+0x5112): undefined reference to `wcd938x_sdw_device_get'
>> ia64-linux-ld: wcd938x.c:(.text+0x5192): undefined reference to `wcd938x_sdw_device_get'
---
0-DAY CI Kernel Test Service, Intel Corporation
https://lists.01.org/hyperkitty/list/kbuild-all@lists.01.org
1 year, 2 months
arch/arm/mach-s3c/irq-s3c24xx.c:529:31: sparse: sparse: incorrect type in initializer (different address spaces)
by kernel test robot
tree: https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git master
head: 7fef2edf7cc753b51f7ccc74993971b0a9c81eca
commit: 71b9114d2c13a648fbe6523dd859e611c316ad90 ARM: s3c: move into a common directory
date: 11 months ago
config: arm-randconfig-s032-20210713 (attached as .config)
compiler: arm-linux-gnueabi-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
# apt-get install sparse
# sparse version: v0.6.3-341-g8af24329-dirty
# https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/commit...
git remote add linus https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
git fetch --no-tags linus master
git checkout 71b9114d2c13a648fbe6523dd859e611c316ad90
# save the attached .config to linux build tree
COMPILER_INSTALL_PATH=$HOME/0day COMPILER=gcc-9.3.0 make.cross C=1 CF='-fdiagnostic-prefix -D__CHECK_ENDIAN__' ARCH=arm
If you fix the issue, kindly add following tag as appropriate
Reported-by: kernel test robot <lkp(a)intel.com>
sparse warnings: (new ones prefixed by >>)
arch/arm/mach-s3c/irq-s3c24xx.c:360:39: sparse: sparse: symbol 's3c24xx_handle_irq' was not declared. Should it be static?
>> arch/arm/mach-s3c/irq-s3c24xx.c:529:31: sparse: sparse: incorrect type in initializer (different address spaces) @@ expected void [noderef] __iomem *base @@ got void * @@
arch/arm/mach-s3c/irq-s3c24xx.c:529:31: sparse: expected void [noderef] __iomem *base
arch/arm/mach-s3c/irq-s3c24xx.c:529:31: sparse: got void *
>> arch/arm/mach-s3c/irq-s3c24xx.c:573:22: sparse: sparse: incorrect type in assignment (different address spaces) @@ expected void [noderef] __iomem *base @@ got void * @@
arch/arm/mach-s3c/irq-s3c24xx.c:573:22: sparse: expected void [noderef] __iomem *base
arch/arm/mach-s3c/irq-s3c24xx.c:573:22: sparse: got void *
arch/arm/mach-s3c/irq-s3c24xx.c:1308:12: sparse: sparse: symbol 's3c2410_init_intc_of' was not declared. Should it be static?
arch/arm/mach-s3c/irq-s3c24xx.c:1330:12: sparse: sparse: symbol 's3c2416_init_intc_of' was not declared. Should it be static?
vim +529 arch/arm/mach-s3c/irq-s3c24xx.c
17453dd2e7df20 arch/arm/mach-s3c24xx/irq.c Heiko Stuebner 2013-03-07 359
17453dd2e7df20 arch/arm/mach-s3c24xx/irq.c Heiko Stuebner 2013-03-07 @360 asmlinkage void __exception_irq_entry s3c24xx_handle_irq(struct pt_regs *regs)
17453dd2e7df20 arch/arm/mach-s3c24xx/irq.c Heiko Stuebner 2013-03-07 361 {
17453dd2e7df20 arch/arm/mach-s3c24xx/irq.c Heiko Stuebner 2013-03-07 362 do {
658dc8fb9cbc77 drivers/irqchip/irq-s3c24xx.c Heiko Stuebner 2013-04-04 363 if (likely(s3c_intc[0]))
f0774d41da0e60 drivers/irqchip/irq-s3c24xx.c Heiko Stuebner 2013-04-04 364 if (s3c24xx_handle_intc(s3c_intc[0], regs, 0))
17453dd2e7df20 arch/arm/mach-s3c24xx/irq.c Heiko Stuebner 2013-03-07 365 continue;
17453dd2e7df20 arch/arm/mach-s3c24xx/irq.c Heiko Stuebner 2013-03-07 366
658dc8fb9cbc77 drivers/irqchip/irq-s3c24xx.c Heiko Stuebner 2013-04-04 367 if (s3c_intc[2])
f0774d41da0e60 drivers/irqchip/irq-s3c24xx.c Heiko Stuebner 2013-04-04 368 if (s3c24xx_handle_intc(s3c_intc[2], regs, 64))
17453dd2e7df20 arch/arm/mach-s3c24xx/irq.c Heiko Stuebner 2013-03-07 369 continue;
17453dd2e7df20 arch/arm/mach-s3c24xx/irq.c Heiko Stuebner 2013-03-07 370
17453dd2e7df20 arch/arm/mach-s3c24xx/irq.c Heiko Stuebner 2013-03-07 371 break;
17453dd2e7df20 arch/arm/mach-s3c24xx/irq.c Heiko Stuebner 2013-03-07 372 } while (1);
17453dd2e7df20 arch/arm/mach-s3c24xx/irq.c Heiko Stuebner 2013-03-07 373 }
17453dd2e7df20 arch/arm/mach-s3c24xx/irq.c Heiko Stuebner 2013-03-07 374
229fd8ffba57df arch/arm/plat-s3c24xx/irq.c Ben Dooks 2009-08-03 375 #ifdef CONFIG_FIQ
229fd8ffba57df arch/arm/plat-s3c24xx/irq.c Ben Dooks 2009-08-03 376 /**
229fd8ffba57df arch/arm/plat-s3c24xx/irq.c Ben Dooks 2009-08-03 377 * s3c24xx_set_fiq - set the FIQ routing
229fd8ffba57df arch/arm/plat-s3c24xx/irq.c Ben Dooks 2009-08-03 378 * @irq: IRQ number to route to FIQ on processor.
cd4bd8f9435ddf arch/arm/mach-s3c24xx/irq-s3c24xx.c Arnd Bergmann 2020-08-06 379 * @ack_ptr: pointer to a location for storing the bit mask
229fd8ffba57df arch/arm/plat-s3c24xx/irq.c Ben Dooks 2009-08-03 380 * @on: Whether to route @irq to the FIQ, or to remove the FIQ routing.
229fd8ffba57df arch/arm/plat-s3c24xx/irq.c Ben Dooks 2009-08-03 381 *
229fd8ffba57df arch/arm/plat-s3c24xx/irq.c Ben Dooks 2009-08-03 382 * Change the state of the IRQ to FIQ routing depending on @irq and @on. If
229fd8ffba57df arch/arm/plat-s3c24xx/irq.c Ben Dooks 2009-08-03 383 * @on is true, the @irq is checked to see if it can be routed and the
229fd8ffba57df arch/arm/plat-s3c24xx/irq.c Ben Dooks 2009-08-03 384 * interrupt controller updated to route the IRQ. If @on is false, the FIQ
229fd8ffba57df arch/arm/plat-s3c24xx/irq.c Ben Dooks 2009-08-03 385 * routing is cleared, regardless of which @irq is specified.
cd4bd8f9435ddf arch/arm/mach-s3c24xx/irq-s3c24xx.c Arnd Bergmann 2020-08-06 386 *
cd4bd8f9435ddf arch/arm/mach-s3c24xx/irq-s3c24xx.c Arnd Bergmann 2020-08-06 387 * returns the mask value for the register.
229fd8ffba57df arch/arm/plat-s3c24xx/irq.c Ben Dooks 2009-08-03 388 */
cd4bd8f9435ddf arch/arm/mach-s3c24xx/irq-s3c24xx.c Arnd Bergmann 2020-08-06 389 int s3c24xx_set_fiq(unsigned int irq, u32 *ack_ptr, bool on)
229fd8ffba57df arch/arm/plat-s3c24xx/irq.c Ben Dooks 2009-08-03 390 {
229fd8ffba57df arch/arm/plat-s3c24xx/irq.c Ben Dooks 2009-08-03 391 u32 intmod;
229fd8ffba57df arch/arm/plat-s3c24xx/irq.c Ben Dooks 2009-08-03 392 unsigned offs;
229fd8ffba57df arch/arm/plat-s3c24xx/irq.c Ben Dooks 2009-08-03 393
229fd8ffba57df arch/arm/plat-s3c24xx/irq.c Ben Dooks 2009-08-03 394 if (on) {
229fd8ffba57df arch/arm/plat-s3c24xx/irq.c Ben Dooks 2009-08-03 395 offs = irq - FIQ_START;
229fd8ffba57df arch/arm/plat-s3c24xx/irq.c Ben Dooks 2009-08-03 396 if (offs > 31)
cd4bd8f9435ddf arch/arm/mach-s3c24xx/irq-s3c24xx.c Arnd Bergmann 2020-08-06 397 return 0;
229fd8ffba57df arch/arm/plat-s3c24xx/irq.c Ben Dooks 2009-08-03 398
229fd8ffba57df arch/arm/plat-s3c24xx/irq.c Ben Dooks 2009-08-03 399 intmod = 1 << offs;
229fd8ffba57df arch/arm/plat-s3c24xx/irq.c Ben Dooks 2009-08-03 400 } else {
229fd8ffba57df arch/arm/plat-s3c24xx/irq.c Ben Dooks 2009-08-03 401 intmod = 0;
229fd8ffba57df arch/arm/plat-s3c24xx/irq.c Ben Dooks 2009-08-03 402 }
229fd8ffba57df arch/arm/plat-s3c24xx/irq.c Ben Dooks 2009-08-03 403
cd4bd8f9435ddf arch/arm/mach-s3c24xx/irq-s3c24xx.c Arnd Bergmann 2020-08-06 404 if (ack_ptr)
cd4bd8f9435ddf arch/arm/mach-s3c24xx/irq-s3c24xx.c Arnd Bergmann 2020-08-06 405 *ack_ptr = intmod;
353332855eef20 drivers/irqchip/irq-s3c24xx.c Ben Dooks 2016-06-21 406 writel_relaxed(intmod, S3C2410_INTMOD);
cd4bd8f9435ddf arch/arm/mach-s3c24xx/irq-s3c24xx.c Arnd Bergmann 2020-08-06 407
cd4bd8f9435ddf arch/arm/mach-s3c24xx/irq-s3c24xx.c Arnd Bergmann 2020-08-06 408 return intmod;
229fd8ffba57df arch/arm/plat-s3c24xx/irq.c Ben Dooks 2009-08-03 409 }
0f13c8248040d6 arch/arm/plat-s3c24xx/irq.c Ben Dooks 2009-12-07 410
0f13c8248040d6 arch/arm/plat-s3c24xx/irq.c Ben Dooks 2009-12-07 411 EXPORT_SYMBOL_GPL(s3c24xx_set_fiq);
229fd8ffba57df arch/arm/plat-s3c24xx/irq.c Ben Dooks 2009-08-03 412 #endif
229fd8ffba57df arch/arm/plat-s3c24xx/irq.c Ben Dooks 2009-08-03 413
1f629b7a3ced8e arch/arm/plat-s3c24xx/irq.c Heiko Stuebner 2013-01-29 414 static int s3c24xx_irq_map(struct irq_domain *h, unsigned int virq,
1f629b7a3ced8e arch/arm/plat-s3c24xx/irq.c Heiko Stuebner 2013-01-29 415 irq_hw_number_t hw)
a21765a70ec06b arch/arm/plat-s3c24xx/irq.c Ben Dooks 2007-02-11 416 {
1f629b7a3ced8e arch/arm/plat-s3c24xx/irq.c Heiko Stuebner 2013-01-29 417 struct s3c_irq_intc *intc = h->host_data;
1f629b7a3ced8e arch/arm/plat-s3c24xx/irq.c Heiko Stuebner 2013-01-29 418 struct s3c_irq_data *irq_data = &intc->irqs[hw];
1f629b7a3ced8e arch/arm/plat-s3c24xx/irq.c Heiko Stuebner 2013-01-29 419 struct s3c_irq_intc *parent_intc;
1f629b7a3ced8e arch/arm/plat-s3c24xx/irq.c Heiko Stuebner 2013-01-29 420 struct s3c_irq_data *parent_irq_data;
1f629b7a3ced8e arch/arm/plat-s3c24xx/irq.c Heiko Stuebner 2013-01-29 421 unsigned int irqno;
1f629b7a3ced8e arch/arm/plat-s3c24xx/irq.c Heiko Stuebner 2013-01-29 422
1f629b7a3ced8e arch/arm/plat-s3c24xx/irq.c Heiko Stuebner 2013-01-29 423 /* attach controller pointer to irq_data */
1f629b7a3ced8e arch/arm/plat-s3c24xx/irq.c Heiko Stuebner 2013-01-29 424 irq_data->intc = intc;
f5a25524508e68 drivers/irqchip/irq-s3c24xx.c Heiko Stuebner 2013-04-04 425 irq_data->offset = hw;
a21765a70ec06b arch/arm/plat-s3c24xx/irq.c Ben Dooks 2007-02-11 426
0fe3cb1ea5bf38 arch/arm/mach-s3c24xx/irq.c Heiko Stuebner 2013-03-07 427 parent_intc = intc->parent;
a21765a70ec06b arch/arm/plat-s3c24xx/irq.c Ben Dooks 2007-02-11 428
1f629b7a3ced8e arch/arm/plat-s3c24xx/irq.c Heiko Stuebner 2013-01-29 429 /* set handler and flags */
1f629b7a3ced8e arch/arm/plat-s3c24xx/irq.c Heiko Stuebner 2013-01-29 430 switch (irq_data->type) {
1f629b7a3ced8e arch/arm/plat-s3c24xx/irq.c Heiko Stuebner 2013-01-29 431 case S3C_IRQTYPE_NONE:
1f629b7a3ced8e arch/arm/plat-s3c24xx/irq.c Heiko Stuebner 2013-01-29 432 return 0;
1f629b7a3ced8e arch/arm/plat-s3c24xx/irq.c Heiko Stuebner 2013-01-29 433 case S3C_IRQTYPE_EINT:
1c8408e3137bcb arch/arm/mach-s3c24xx/irq.c Heiko Stuebner 2013-02-12 434 /* On the S3C2412, the EINT0to3 have a parent irq
1c8408e3137bcb arch/arm/mach-s3c24xx/irq.c Heiko Stuebner 2013-02-12 435 * but need the s3c_irq_eint0t4 chip
1c8408e3137bcb arch/arm/mach-s3c24xx/irq.c Heiko Stuebner 2013-02-12 436 */
0fe3cb1ea5bf38 arch/arm/mach-s3c24xx/irq.c Heiko Stuebner 2013-03-07 437 if (parent_intc && (!soc_is_s3c2412() || hw >= 4))
1f629b7a3ced8e arch/arm/plat-s3c24xx/irq.c Heiko Stuebner 2013-01-29 438 irq_set_chip_and_handler(virq, &s3c_irqext_chip,
1f629b7a3ced8e arch/arm/plat-s3c24xx/irq.c Heiko Stuebner 2013-01-29 439 handle_edge_irq);
1f629b7a3ced8e arch/arm/plat-s3c24xx/irq.c Heiko Stuebner 2013-01-29 440 else
1f629b7a3ced8e arch/arm/plat-s3c24xx/irq.c Heiko Stuebner 2013-01-29 441 irq_set_chip_and_handler(virq, &s3c_irq_eint0t4,
1f629b7a3ced8e arch/arm/plat-s3c24xx/irq.c Heiko Stuebner 2013-01-29 442 handle_edge_irq);
1f629b7a3ced8e arch/arm/plat-s3c24xx/irq.c Heiko Stuebner 2013-01-29 443 break;
1f629b7a3ced8e arch/arm/plat-s3c24xx/irq.c Heiko Stuebner 2013-01-29 444 case S3C_IRQTYPE_EDGE:
0fe3cb1ea5bf38 arch/arm/mach-s3c24xx/irq.c Heiko Stuebner 2013-03-07 445 if (parent_intc || intc->reg_pending == S3C2416_SRCPND2)
1f629b7a3ced8e arch/arm/plat-s3c24xx/irq.c Heiko Stuebner 2013-01-29 446 irq_set_chip_and_handler(virq, &s3c_irq_level_chip,
1f629b7a3ced8e arch/arm/plat-s3c24xx/irq.c Heiko Stuebner 2013-01-29 447 handle_edge_irq);
1f629b7a3ced8e arch/arm/plat-s3c24xx/irq.c Heiko Stuebner 2013-01-29 448 else
1f629b7a3ced8e arch/arm/plat-s3c24xx/irq.c Heiko Stuebner 2013-01-29 449 irq_set_chip_and_handler(virq, &s3c_irq_chip,
1f629b7a3ced8e arch/arm/plat-s3c24xx/irq.c Heiko Stuebner 2013-01-29 450 handle_edge_irq);
1f629b7a3ced8e arch/arm/plat-s3c24xx/irq.c Heiko Stuebner 2013-01-29 451 break;
1f629b7a3ced8e arch/arm/plat-s3c24xx/irq.c Heiko Stuebner 2013-01-29 452 case S3C_IRQTYPE_LEVEL:
0fe3cb1ea5bf38 arch/arm/mach-s3c24xx/irq.c Heiko Stuebner 2013-03-07 453 if (parent_intc)
1f629b7a3ced8e arch/arm/plat-s3c24xx/irq.c Heiko Stuebner 2013-01-29 454 irq_set_chip_and_handler(virq, &s3c_irq_level_chip,
1f629b7a3ced8e arch/arm/plat-s3c24xx/irq.c Heiko Stuebner 2013-01-29 455 handle_level_irq);
1f629b7a3ced8e arch/arm/plat-s3c24xx/irq.c Heiko Stuebner 2013-01-29 456 else
1f629b7a3ced8e arch/arm/plat-s3c24xx/irq.c Heiko Stuebner 2013-01-29 457 irq_set_chip_and_handler(virq, &s3c_irq_chip,
1f629b7a3ced8e arch/arm/plat-s3c24xx/irq.c Heiko Stuebner 2013-01-29 458 handle_level_irq);
1f629b7a3ced8e arch/arm/plat-s3c24xx/irq.c Heiko Stuebner 2013-01-29 459 break;
1f629b7a3ced8e arch/arm/plat-s3c24xx/irq.c Heiko Stuebner 2013-01-29 460 default:
1f629b7a3ced8e arch/arm/plat-s3c24xx/irq.c Heiko Stuebner 2013-01-29 461 pr_err("irq-s3c24xx: unsupported irqtype %d\n", irq_data->type);
1f629b7a3ced8e arch/arm/plat-s3c24xx/irq.c Heiko Stuebner 2013-01-29 462 return -EINVAL;
1f629b7a3ced8e arch/arm/plat-s3c24xx/irq.c Heiko Stuebner 2013-01-29 463 }
f5a25524508e68 drivers/irqchip/irq-s3c24xx.c Heiko Stuebner 2013-04-04 464
f5a25524508e68 drivers/irqchip/irq-s3c24xx.c Heiko Stuebner 2013-04-04 465 irq_set_chip_data(virq, irq_data);
f5a25524508e68 drivers/irqchip/irq-s3c24xx.c Heiko Stuebner 2013-04-04 466
0fe3cb1ea5bf38 arch/arm/mach-s3c24xx/irq.c Heiko Stuebner 2013-03-07 467 if (parent_intc && irq_data->type != S3C_IRQTYPE_NONE) {
502a29890cb102 arch/arm/mach-s3c24xx/irq.c Heiko Stuebner 2013-03-07 468 if (irq_data->parent_irq > 31) {
502a29890cb102 arch/arm/mach-s3c24xx/irq.c Heiko Stuebner 2013-03-07 469 pr_err("irq-s3c24xx: parent irq %lu is out of range\n",
502a29890cb102 arch/arm/mach-s3c24xx/irq.c Heiko Stuebner 2013-03-07 470 irq_data->parent_irq);
d17cab4451df1f drivers/irqchip/irq-s3c24xx.c Rob Herring 2015-08-29 471 return -EINVAL;
1f629b7a3ced8e arch/arm/plat-s3c24xx/irq.c Heiko Stuebner 2013-01-29 472 }
a21765a70ec06b arch/arm/plat-s3c24xx/irq.c Ben Dooks 2007-02-11 473
1f629b7a3ced8e arch/arm/plat-s3c24xx/irq.c Heiko Stuebner 2013-01-29 474 parent_irq_data = &parent_intc->irqs[irq_data->parent_irq];
1f629b7a3ced8e arch/arm/plat-s3c24xx/irq.c Heiko Stuebner 2013-01-29 475 parent_irq_data->sub_intc = intc;
1f629b7a3ced8e arch/arm/plat-s3c24xx/irq.c Heiko Stuebner 2013-01-29 476 parent_irq_data->sub_bits |= (1UL << hw);
1f629b7a3ced8e arch/arm/plat-s3c24xx/irq.c Heiko Stuebner 2013-01-29 477
1f629b7a3ced8e arch/arm/plat-s3c24xx/irq.c Heiko Stuebner 2013-01-29 478 /* attach the demuxer to the parent irq */
1f629b7a3ced8e arch/arm/plat-s3c24xx/irq.c Heiko Stuebner 2013-01-29 479 irqno = irq_find_mapping(parent_intc->domain,
1f629b7a3ced8e arch/arm/plat-s3c24xx/irq.c Heiko Stuebner 2013-01-29 480 irq_data->parent_irq);
1f629b7a3ced8e arch/arm/plat-s3c24xx/irq.c Heiko Stuebner 2013-01-29 481 if (!irqno) {
1f629b7a3ced8e arch/arm/plat-s3c24xx/irq.c Heiko Stuebner 2013-01-29 482 pr_err("irq-s3c24xx: could not find mapping for parent irq %lu\n",
1f629b7a3ced8e arch/arm/plat-s3c24xx/irq.c Heiko Stuebner 2013-01-29 483 irq_data->parent_irq);
d17cab4451df1f drivers/irqchip/irq-s3c24xx.c Rob Herring 2015-08-29 484 return -EINVAL;
1f629b7a3ced8e arch/arm/plat-s3c24xx/irq.c Heiko Stuebner 2013-01-29 485 }
1f629b7a3ced8e arch/arm/plat-s3c24xx/irq.c Heiko Stuebner 2013-01-29 486 irq_set_chained_handler(irqno, s3c_irq_demux);
a21765a70ec06b arch/arm/plat-s3c24xx/irq.c Ben Dooks 2007-02-11 487 }
a21765a70ec06b arch/arm/plat-s3c24xx/irq.c Ben Dooks 2007-02-11 488
1f629b7a3ced8e arch/arm/plat-s3c24xx/irq.c Heiko Stuebner 2013-01-29 489 return 0;
a21765a70ec06b arch/arm/plat-s3c24xx/irq.c Ben Dooks 2007-02-11 490 }
a21765a70ec06b arch/arm/plat-s3c24xx/irq.c Ben Dooks 2007-02-11 491
9600973656c697 drivers/irqchip/irq-s3c24xx.c Krzysztof Kozlowski 2015-04-27 492 static const struct irq_domain_ops s3c24xx_irq_ops = {
1f629b7a3ced8e arch/arm/plat-s3c24xx/irq.c Heiko Stuebner 2013-01-29 493 .map = s3c24xx_irq_map,
1f629b7a3ced8e arch/arm/plat-s3c24xx/irq.c Heiko Stuebner 2013-01-29 494 .xlate = irq_domain_xlate_twocell,
1f629b7a3ced8e arch/arm/plat-s3c24xx/irq.c Heiko Stuebner 2013-01-29 495 };
1f629b7a3ced8e arch/arm/plat-s3c24xx/irq.c Heiko Stuebner 2013-01-29 496
1f629b7a3ced8e arch/arm/plat-s3c24xx/irq.c Heiko Stuebner 2013-01-29 497 static void s3c24xx_clear_intc(struct s3c_irq_intc *intc)
1f629b7a3ced8e arch/arm/plat-s3c24xx/irq.c Heiko Stuebner 2013-01-29 498 {
1f629b7a3ced8e arch/arm/plat-s3c24xx/irq.c Heiko Stuebner 2013-01-29 499 void __iomem *reg_source;
1f629b7a3ced8e arch/arm/plat-s3c24xx/irq.c Heiko Stuebner 2013-01-29 500 unsigned long pend;
1f629b7a3ced8e arch/arm/plat-s3c24xx/irq.c Heiko Stuebner 2013-01-29 501 unsigned long last;
1f629b7a3ced8e arch/arm/plat-s3c24xx/irq.c Heiko Stuebner 2013-01-29 502 int i;
1f629b7a3ced8e arch/arm/plat-s3c24xx/irq.c Heiko Stuebner 2013-01-29 503
1f629b7a3ced8e arch/arm/plat-s3c24xx/irq.c Heiko Stuebner 2013-01-29 504 /* if intpnd is set, read the next pending irq from there */
1f629b7a3ced8e arch/arm/plat-s3c24xx/irq.c Heiko Stuebner 2013-01-29 505 reg_source = intc->reg_intpnd ? intc->reg_intpnd : intc->reg_pending;
1f629b7a3ced8e arch/arm/plat-s3c24xx/irq.c Heiko Stuebner 2013-01-29 506
a21765a70ec06b arch/arm/plat-s3c24xx/irq.c Ben Dooks 2007-02-11 507 last = 0;
a21765a70ec06b arch/arm/plat-s3c24xx/irq.c Ben Dooks 2007-02-11 508 for (i = 0; i < 4; i++) {
353332855eef20 drivers/irqchip/irq-s3c24xx.c Ben Dooks 2016-06-21 509 pend = readl_relaxed(reg_source);
a21765a70ec06b arch/arm/plat-s3c24xx/irq.c Ben Dooks 2007-02-11 510
a21765a70ec06b arch/arm/plat-s3c24xx/irq.c Ben Dooks 2007-02-11 511 if (pend == 0 || pend == last)
a21765a70ec06b arch/arm/plat-s3c24xx/irq.c Ben Dooks 2007-02-11 512 break;
a21765a70ec06b arch/arm/plat-s3c24xx/irq.c Ben Dooks 2007-02-11 513
353332855eef20 drivers/irqchip/irq-s3c24xx.c Ben Dooks 2016-06-21 514 writel_relaxed(pend, intc->reg_pending);
1f629b7a3ced8e arch/arm/plat-s3c24xx/irq.c Heiko Stuebner 2013-01-29 515 if (intc->reg_intpnd)
353332855eef20 drivers/irqchip/irq-s3c24xx.c Ben Dooks 2016-06-21 516 writel_relaxed(pend, intc->reg_intpnd);
1f629b7a3ced8e arch/arm/plat-s3c24xx/irq.c Heiko Stuebner 2013-01-29 517
1f629b7a3ced8e arch/arm/plat-s3c24xx/irq.c Heiko Stuebner 2013-01-29 518 pr_info("irq: clearing pending status %08x\n", (int)pend);
a21765a70ec06b arch/arm/plat-s3c24xx/irq.c Ben Dooks 2007-02-11 519 last = pend;
a21765a70ec06b arch/arm/plat-s3c24xx/irq.c Ben Dooks 2007-02-11 520 }
1f629b7a3ced8e arch/arm/plat-s3c24xx/irq.c Heiko Stuebner 2013-01-29 521 }
a21765a70ec06b arch/arm/plat-s3c24xx/irq.c Ben Dooks 2007-02-11 522
bc8fd900c4d460 drivers/irqchip/irq-s3c24xx.c Arnd Bergmann 2013-04-25 523 static struct s3c_irq_intc * __init s3c24xx_init_intc(struct device_node *np,
1f629b7a3ced8e arch/arm/plat-s3c24xx/irq.c Heiko Stuebner 2013-01-29 524 struct s3c_irq_data *irq_data,
1f629b7a3ced8e arch/arm/plat-s3c24xx/irq.c Heiko Stuebner 2013-01-29 525 struct s3c_irq_intc *parent,
1f629b7a3ced8e arch/arm/plat-s3c24xx/irq.c Heiko Stuebner 2013-01-29 526 unsigned long address)
1f629b7a3ced8e arch/arm/plat-s3c24xx/irq.c Heiko Stuebner 2013-01-29 527 {
1f629b7a3ced8e arch/arm/plat-s3c24xx/irq.c Heiko Stuebner 2013-01-29 528 struct s3c_irq_intc *intc;
1f629b7a3ced8e arch/arm/plat-s3c24xx/irq.c Heiko Stuebner 2013-01-29 @529 void __iomem *base = (void *)0xf6000000; /* static mapping */
1f629b7a3ced8e arch/arm/plat-s3c24xx/irq.c Heiko Stuebner 2013-01-29 530 int irq_num;
1f629b7a3ced8e arch/arm/plat-s3c24xx/irq.c Heiko Stuebner 2013-01-29 531 int irq_start;
1f629b7a3ced8e arch/arm/plat-s3c24xx/irq.c Heiko Stuebner 2013-01-29 532 int ret;
a21765a70ec06b arch/arm/plat-s3c24xx/irq.c Ben Dooks 2007-02-11 533
1f629b7a3ced8e arch/arm/plat-s3c24xx/irq.c Heiko Stuebner 2013-01-29 534 intc = kzalloc(sizeof(struct s3c_irq_intc), GFP_KERNEL);
1f629b7a3ced8e arch/arm/plat-s3c24xx/irq.c Heiko Stuebner 2013-01-29 535 if (!intc)
1f629b7a3ced8e arch/arm/plat-s3c24xx/irq.c Heiko Stuebner 2013-01-29 536 return ERR_PTR(-ENOMEM);
a21765a70ec06b arch/arm/plat-s3c24xx/irq.c Ben Dooks 2007-02-11 537
1f629b7a3ced8e arch/arm/plat-s3c24xx/irq.c Heiko Stuebner 2013-01-29 538 intc->irqs = irq_data;
a21765a70ec06b arch/arm/plat-s3c24xx/irq.c Ben Dooks 2007-02-11 539
1f629b7a3ced8e arch/arm/plat-s3c24xx/irq.c Heiko Stuebner 2013-01-29 540 if (parent)
1f629b7a3ced8e arch/arm/plat-s3c24xx/irq.c Heiko Stuebner 2013-01-29 541 intc->parent = parent;
a21765a70ec06b arch/arm/plat-s3c24xx/irq.c Ben Dooks 2007-02-11 542
1f629b7a3ced8e arch/arm/plat-s3c24xx/irq.c Heiko Stuebner 2013-01-29 543 /* select the correct data for the controller.
1f629b7a3ced8e arch/arm/plat-s3c24xx/irq.c Heiko Stuebner 2013-01-29 544 * Need to hard code the irq num start and offset
1f629b7a3ced8e arch/arm/plat-s3c24xx/irq.c Heiko Stuebner 2013-01-29 545 * to preserve the static mapping for now
1f629b7a3ced8e arch/arm/plat-s3c24xx/irq.c Heiko Stuebner 2013-01-29 546 */
1f629b7a3ced8e arch/arm/plat-s3c24xx/irq.c Heiko Stuebner 2013-01-29 547 switch (address) {
1f629b7a3ced8e arch/arm/plat-s3c24xx/irq.c Heiko Stuebner 2013-01-29 548 case 0x4a000000:
1f629b7a3ced8e arch/arm/plat-s3c24xx/irq.c Heiko Stuebner 2013-01-29 549 pr_debug("irq: found main intc\n");
1f629b7a3ced8e arch/arm/plat-s3c24xx/irq.c Heiko Stuebner 2013-01-29 550 intc->reg_pending = base;
1f629b7a3ced8e arch/arm/plat-s3c24xx/irq.c Heiko Stuebner 2013-01-29 551 intc->reg_mask = base + 0x08;
1f629b7a3ced8e arch/arm/plat-s3c24xx/irq.c Heiko Stuebner 2013-01-29 552 intc->reg_intpnd = base + 0x10;
1f629b7a3ced8e arch/arm/plat-s3c24xx/irq.c Heiko Stuebner 2013-01-29 553 irq_num = 32;
1f629b7a3ced8e arch/arm/plat-s3c24xx/irq.c Heiko Stuebner 2013-01-29 554 irq_start = S3C2410_IRQ(0);
a21765a70ec06b arch/arm/plat-s3c24xx/irq.c Ben Dooks 2007-02-11 555 break;
1f629b7a3ced8e arch/arm/plat-s3c24xx/irq.c Heiko Stuebner 2013-01-29 556 case 0x4a000018:
1f629b7a3ced8e arch/arm/plat-s3c24xx/irq.c Heiko Stuebner 2013-01-29 557 pr_debug("irq: found subintc\n");
1f629b7a3ced8e arch/arm/plat-s3c24xx/irq.c Heiko Stuebner 2013-01-29 558 intc->reg_pending = base + 0x18;
1f629b7a3ced8e arch/arm/plat-s3c24xx/irq.c Heiko Stuebner 2013-01-29 559 intc->reg_mask = base + 0x1c;
1f629b7a3ced8e arch/arm/plat-s3c24xx/irq.c Heiko Stuebner 2013-01-29 560 irq_num = 29;
1f629b7a3ced8e arch/arm/plat-s3c24xx/irq.c Heiko Stuebner 2013-01-29 561 irq_start = S3C2410_IRQSUB(0);
1f629b7a3ced8e arch/arm/plat-s3c24xx/irq.c Heiko Stuebner 2013-01-29 562 break;
1f629b7a3ced8e arch/arm/plat-s3c24xx/irq.c Heiko Stuebner 2013-01-29 563 case 0x4a000040:
1f629b7a3ced8e arch/arm/plat-s3c24xx/irq.c Heiko Stuebner 2013-01-29 564 pr_debug("irq: found intc2\n");
1f629b7a3ced8e arch/arm/plat-s3c24xx/irq.c Heiko Stuebner 2013-01-29 565 intc->reg_pending = base + 0x40;
1f629b7a3ced8e arch/arm/plat-s3c24xx/irq.c Heiko Stuebner 2013-01-29 566 intc->reg_mask = base + 0x48;
1f629b7a3ced8e arch/arm/plat-s3c24xx/irq.c Heiko Stuebner 2013-01-29 567 intc->reg_intpnd = base + 0x50;
1f629b7a3ced8e arch/arm/plat-s3c24xx/irq.c Heiko Stuebner 2013-01-29 568 irq_num = 8;
1f629b7a3ced8e arch/arm/plat-s3c24xx/irq.c Heiko Stuebner 2013-01-29 569 irq_start = S3C2416_IRQ(0);
1f629b7a3ced8e arch/arm/plat-s3c24xx/irq.c Heiko Stuebner 2013-01-29 570 break;
1f629b7a3ced8e arch/arm/plat-s3c24xx/irq.c Heiko Stuebner 2013-01-29 571 case 0x560000a4:
1f629b7a3ced8e arch/arm/plat-s3c24xx/irq.c Heiko Stuebner 2013-01-29 572 pr_debug("irq: found eintc\n");
1f629b7a3ced8e arch/arm/plat-s3c24xx/irq.c Heiko Stuebner 2013-01-29 @573 base = (void *)0xfd000000;
1f629b7a3ced8e arch/arm/plat-s3c24xx/irq.c Heiko Stuebner 2013-01-29 574
1f629b7a3ced8e arch/arm/plat-s3c24xx/irq.c Heiko Stuebner 2013-01-29 575 intc->reg_mask = base + 0xa4;
646dd2f0a98094 arch/arm/mach-s3c24xx/irq.c Sylwester Nawrocki 2013-04-09 576 intc->reg_pending = base + 0xa8;
5424f2188a76d0 arch/arm/mach-s3c24xx/irq.c Heiko Stuebner 2013-02-12 577 irq_num = 24;
1f629b7a3ced8e arch/arm/plat-s3c24xx/irq.c Heiko Stuebner 2013-01-29 578 irq_start = S3C2410_IRQ(32);
a21765a70ec06b arch/arm/plat-s3c24xx/irq.c Ben Dooks 2007-02-11 579 break;
a21765a70ec06b arch/arm/plat-s3c24xx/irq.c Ben Dooks 2007-02-11 580 default:
1f629b7a3ced8e arch/arm/plat-s3c24xx/irq.c Heiko Stuebner 2013-01-29 581 pr_err("irq: unsupported controller address\n");
1f629b7a3ced8e arch/arm/plat-s3c24xx/irq.c Heiko Stuebner 2013-01-29 582 ret = -EINVAL;
1f629b7a3ced8e arch/arm/plat-s3c24xx/irq.c Heiko Stuebner 2013-01-29 583 goto err;
a21765a70ec06b arch/arm/plat-s3c24xx/irq.c Ben Dooks 2007-02-11 584 }
a21765a70ec06b arch/arm/plat-s3c24xx/irq.c Ben Dooks 2007-02-11 585
1f629b7a3ced8e arch/arm/plat-s3c24xx/irq.c Heiko Stuebner 2013-01-29 586 /* now that all the data is complete, init the irq-domain */
1f629b7a3ced8e arch/arm/plat-s3c24xx/irq.c Heiko Stuebner 2013-01-29 587 s3c24xx_clear_intc(intc);
1f629b7a3ced8e arch/arm/plat-s3c24xx/irq.c Heiko Stuebner 2013-01-29 588 intc->domain = irq_domain_add_legacy(np, irq_num, irq_start,
5424f2188a76d0 arch/arm/mach-s3c24xx/irq.c Heiko Stuebner 2013-02-12 589 0, &s3c24xx_irq_ops,
1f629b7a3ced8e arch/arm/plat-s3c24xx/irq.c Heiko Stuebner 2013-01-29 590 intc);
1f629b7a3ced8e arch/arm/plat-s3c24xx/irq.c Heiko Stuebner 2013-01-29 591 if (!intc->domain) {
1f629b7a3ced8e arch/arm/plat-s3c24xx/irq.c Heiko Stuebner 2013-01-29 592 pr_err("irq: could not create irq-domain\n");
1f629b7a3ced8e arch/arm/plat-s3c24xx/irq.c Heiko Stuebner 2013-01-29 593 ret = -EINVAL;
1f629b7a3ced8e arch/arm/plat-s3c24xx/irq.c Heiko Stuebner 2013-01-29 594 goto err;
1f629b7a3ced8e arch/arm/plat-s3c24xx/irq.c Heiko Stuebner 2013-01-29 595 }
a21765a70ec06b arch/arm/plat-s3c24xx/irq.c Ben Dooks 2007-02-11 596
17453dd2e7df20 arch/arm/mach-s3c24xx/irq.c Heiko Stuebner 2013-03-07 597 set_handle_irq(s3c24xx_handle_irq);
17453dd2e7df20 arch/arm/mach-s3c24xx/irq.c Heiko Stuebner 2013-03-07 598
1f629b7a3ced8e arch/arm/plat-s3c24xx/irq.c Heiko Stuebner 2013-01-29 599 return intc;
a21765a70ec06b arch/arm/plat-s3c24xx/irq.c Ben Dooks 2007-02-11 600
1f629b7a3ced8e arch/arm/plat-s3c24xx/irq.c Heiko Stuebner 2013-01-29 601 err:
1f629b7a3ced8e arch/arm/plat-s3c24xx/irq.c Heiko Stuebner 2013-01-29 602 kfree(intc);
1f629b7a3ced8e arch/arm/plat-s3c24xx/irq.c Heiko Stuebner 2013-01-29 603 return ERR_PTR(ret);
a21765a70ec06b arch/arm/plat-s3c24xx/irq.c Ben Dooks 2007-02-11 604 }
a21765a70ec06b arch/arm/plat-s3c24xx/irq.c Ben Dooks 2007-02-11 605
:::::: The code at line 529 was first introduced by commit
:::::: 1f629b7a3ced8e73784a9ae3b0d9039496878f18 ARM: S3C24XX: transform irq handling into a declarative form
:::::: TO: Heiko Stuebner <heiko(a)sntech.de>
:::::: CC: Kukjin Kim <kgene.kim(a)samsung.com>
---
0-DAY CI Kernel Test Service, Intel Corporation
https://lists.01.org/hyperkitty/list/kbuild-all@lists.01.org
1 year, 2 months
arch/arm/mm/kasan_init.c:229:9: warning: incompatible integer to pointer conversion passing 'unsigned long' to parameter of type 'const void *'
by kernel test robot
tree: https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git master
head: 7fef2edf7cc753b51f7ccc74993971b0a9c81eca
commit: dc4875f0e791de554bdc45aa1dbd6e45e107e50f mm: rename p4d_page_vaddr to p4d_pgtable and make it return pud_t *
date: 5 days ago
config: arm-buildonly-randconfig-r002-20210713 (attached as .config)
compiler: clang version 13.0.0 (https://github.com/llvm/llvm-project 8d69635ed9ecf36fd0ca85906bfde17949671cbe)
reproduce (this is a W=1 build):
wget https://raw.githubusercontent.com/intel/lkp-tests/master/sbin/make.cross -O ~/bin/make.cross
chmod +x ~/bin/make.cross
# install arm cross compiling tool for clang build
# apt-get install binutils-arm-linux-gnueabi
# https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/commit...
git remote add linus https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
git fetch --no-tags linus master
git checkout dc4875f0e791de554bdc45aa1dbd6e45e107e50f
# save the attached .config to linux build tree
COMPILER_INSTALL_PATH=$HOME/0day COMPILER=clang make.cross ARCH=arm
If you fix the issue, kindly add following tag as appropriate
Reported-by: kernel test robot <lkp(a)intel.com>
All warnings (new ones prefixed by >>):
>> arch/arm/mm/kasan_init.c:229:9: warning: incompatible integer to pointer conversion passing 'unsigned long' to parameter of type 'const void *' [-Wint-conversion]
pgd_page_vaddr(*pgd_offset_k(KASAN_SHADOW_START)),
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
include/asm-generic/pgtable-nop4d.h:44:31: note: expanded from macro 'pgd_page_vaddr'
#define pgd_page_vaddr(pgd) ((unsigned long)(p4d_pgtable((p4d_t){ pgd })))
^
arch/arm/include/asm/string.h:58:45: note: expanded from macro 'memcpy'
#define memcpy(dst, src, len) __memcpy(dst, src, len)
^~~
arch/arm/include/asm/string.h:21:47: note: passing argument to parameter 'src' here
extern void *__memcpy(void *dest, const void *src, __kernel_size_t n);
^
1 warning generated.
vim +229 arch/arm/mm/kasan_init.c
5615f69bc20974 Linus Walleij 2020-10-25 204
5615f69bc20974 Linus Walleij 2020-10-25 205 void __init kasan_init(void)
5615f69bc20974 Linus Walleij 2020-10-25 206 {
5615f69bc20974 Linus Walleij 2020-10-25 207 phys_addr_t pa_start, pa_end;
5615f69bc20974 Linus Walleij 2020-10-25 208 u64 i;
5615f69bc20974 Linus Walleij 2020-10-25 209
5615f69bc20974 Linus Walleij 2020-10-25 210 /*
5615f69bc20974 Linus Walleij 2020-10-25 211 * We are going to perform proper setup of shadow memory.
5615f69bc20974 Linus Walleij 2020-10-25 212 *
5615f69bc20974 Linus Walleij 2020-10-25 213 * At first we should unmap early shadow (clear_pgds() call bellow).
5615f69bc20974 Linus Walleij 2020-10-25 214 * However, instrumented code can't execute without shadow memory.
5615f69bc20974 Linus Walleij 2020-10-25 215 *
5615f69bc20974 Linus Walleij 2020-10-25 216 * To keep the early shadow memory MMU tables around while setting up
5615f69bc20974 Linus Walleij 2020-10-25 217 * the proper shadow memory, we copy swapper_pg_dir (the initial page
5615f69bc20974 Linus Walleij 2020-10-25 218 * table) to tmp_pgd_table and use that to keep the early shadow memory
5615f69bc20974 Linus Walleij 2020-10-25 219 * mapped until the full shadow setup is finished. Then we swap back
5615f69bc20974 Linus Walleij 2020-10-25 220 * to the proper swapper_pg_dir.
5615f69bc20974 Linus Walleij 2020-10-25 221 */
5615f69bc20974 Linus Walleij 2020-10-25 222
5615f69bc20974 Linus Walleij 2020-10-25 223 memcpy(tmp_pgd_table, swapper_pg_dir, sizeof(tmp_pgd_table));
5615f69bc20974 Linus Walleij 2020-10-25 224 #ifdef CONFIG_ARM_LPAE
5615f69bc20974 Linus Walleij 2020-10-25 225 /* We need to be in the same PGD or this won't work */
5615f69bc20974 Linus Walleij 2020-10-25 226 BUILD_BUG_ON(pgd_index(KASAN_SHADOW_START) !=
5615f69bc20974 Linus Walleij 2020-10-25 227 pgd_index(KASAN_SHADOW_END));
5615f69bc20974 Linus Walleij 2020-10-25 228 memcpy(tmp_pmd_table,
5615f69bc20974 Linus Walleij 2020-10-25 @229 pgd_page_vaddr(*pgd_offset_k(KASAN_SHADOW_START)),
:::::: The code at line 229 was first introduced by commit
:::::: 5615f69bc2097452ecc954f5264d784e158d6801 ARM: 9016/2: Initialize the mapping of KASan shadow memory
:::::: TO: Linus Walleij <linus.walleij(a)linaro.org>
:::::: CC: Russell King <rmk+kernel(a)armlinux.org.uk>
---
0-DAY CI Kernel Test Service, Intel Corporation
https://lists.01.org/hyperkitty/list/kbuild-all@lists.01.org
1 year, 2 months
arch/arm/kernel/traps.c:775:6: warning: no previous prototype for function 'abort'
by kernel test robot
tree: https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git master
head: 7fef2edf7cc753b51f7ccc74993971b0a9c81eca
commit: 4d576cab16f57e1f87978f6997a725179398341e ARM: 9028/1: disable KASAN in call stack capturing routines
date: 7 months ago
config: arm-randconfig-r016-20210713 (attached as .config)
compiler: clang version 13.0.0 (https://github.com/llvm/llvm-project 8d69635ed9ecf36fd0ca85906bfde17949671cbe)
reproduce (this is a W=1 build):
wget https://raw.githubusercontent.com/intel/lkp-tests/master/sbin/make.cross -O ~/bin/make.cross
chmod +x ~/bin/make.cross
# install arm cross compiling tool for clang build
# apt-get install binutils-arm-linux-gnueabi
# https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/commit...
git remote add linus https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
git fetch --no-tags linus master
git checkout 4d576cab16f57e1f87978f6997a725179398341e
# save the attached .config to linux build tree
COMPILER_INSTALL_PATH=$HOME/0day COMPILER=clang make.cross ARCH=arm
If you fix the issue, kindly add following tag as appropriate
Reported-by: kernel test robot <lkp(a)intel.com>
All warnings (new ones prefixed by >>):
arch/arm/kernel/traps.c:82:6: warning: no previous prototype for function 'dump_backtrace_stm' [-Wmissing-prototypes]
void dump_backtrace_stm(u32 *stack, u32 instruction, const char *loglvl)
^
arch/arm/kernel/traps.c:82:1: note: declare 'static' if the function is not intended to be used outside of this translation unit
void dump_backtrace_stm(u32 *stack, u32 instruction, const char *loglvl)
^
static
arch/arm/kernel/traps.c:445:17: warning: no previous prototype for function 'do_undefinstr' [-Wmissing-prototypes]
asmlinkage void do_undefinstr(struct pt_regs *regs)
^
arch/arm/kernel/traps.c:445:12: note: declare 'static' if the function is not intended to be used outside of this translation unit
asmlinkage void do_undefinstr(struct pt_regs *regs)
^
static
arch/arm/kernel/traps.c:510:39: warning: no previous prototype for function 'handle_fiq_as_nmi' [-Wmissing-prototypes]
asmlinkage void __exception_irq_entry handle_fiq_as_nmi(struct pt_regs *regs)
^
arch/arm/kernel/traps.c:510:12: note: declare 'static' if the function is not intended to be used outside of this translation unit
asmlinkage void __exception_irq_entry handle_fiq_as_nmi(struct pt_regs *regs)
^
static
arch/arm/kernel/traps.c:529:17: warning: no previous prototype for function 'bad_mode' [-Wmissing-prototypes]
asmlinkage void bad_mode(struct pt_regs *regs, int reason)
^
arch/arm/kernel/traps.c:529:12: note: declare 'static' if the function is not intended to be used outside of this translation unit
asmlinkage void bad_mode(struct pt_regs *regs, int reason)
^
static
arch/arm/kernel/traps.c:602:16: warning: no previous prototype for function 'arm_syscall' [-Wmissing-prototypes]
asmlinkage int arm_syscall(int no, struct pt_regs *regs)
^
arch/arm/kernel/traps.c:602:12: note: declare 'static' if the function is not intended to be used outside of this translation unit
asmlinkage int arm_syscall(int no, struct pt_regs *regs)
^
static
arch/arm/kernel/traps.c:728:1: warning: no previous prototype for function 'baddataabort' [-Wmissing-prototypes]
baddataabort(int code, unsigned long instr, struct pt_regs *regs)
^
arch/arm/kernel/traps.c:727:12: note: declare 'static' if the function is not intended to be used outside of this translation unit
asmlinkage void
^
static
arch/arm/kernel/traps.c:768:17: warning: no previous prototype for function '__div0' [-Wmissing-prototypes]
asmlinkage void __div0(void)
^
arch/arm/kernel/traps.c:768:12: note: declare 'static' if the function is not intended to be used outside of this translation unit
asmlinkage void __div0(void)
^
static
>> arch/arm/kernel/traps.c:775:6: warning: no previous prototype for function 'abort' [-Wmissing-prototypes]
void abort(void)
^
arch/arm/kernel/traps.c:775:1: note: declare 'static' if the function is not intended to be used outside of this translation unit
void abort(void)
^
static
arch/arm/kernel/traps.c:783:13: warning: no previous prototype for function 'trap_init' [-Wmissing-prototypes]
void __init trap_init(void)
^
arch/arm/kernel/traps.c:783:1: note: declare 'static' if the function is not intended to be used outside of this translation unit
void __init trap_init(void)
^
static
9 warnings generated.
vim +/abort +775 arch/arm/kernel/traps.c
^1da177e4c3f41 Linus Torvalds 2005-04-16 774
^1da177e4c3f41 Linus Torvalds 2005-04-16 @775 void abort(void)
^1da177e4c3f41 Linus Torvalds 2005-04-16 776 {
^1da177e4c3f41 Linus Torvalds 2005-04-16 777 BUG();
^1da177e4c3f41 Linus Torvalds 2005-04-16 778
^1da177e4c3f41 Linus Torvalds 2005-04-16 779 /* if that doesn't kill us, halt */
^1da177e4c3f41 Linus Torvalds 2005-04-16 780 panic("Oops failed to kill thread");
^1da177e4c3f41 Linus Torvalds 2005-04-16 781 }
^1da177e4c3f41 Linus Torvalds 2005-04-16 782
:::::: The code at line 775 was first introduced by commit
:::::: 1da177e4c3f41524e886b7f1b8a0c1fc7321cac2 Linux-2.6.12-rc2
:::::: TO: Linus Torvalds <torvalds(a)ppc970.osdl.org>
:::::: CC: Linus Torvalds <torvalds(a)ppc970.osdl.org>
---
0-DAY CI Kernel Test Service, Intel Corporation
https://lists.01.org/hyperkitty/list/kbuild-all@lists.01.org
1 year, 2 months
drivers/net/wireless/mediatek/mt76/mt7915/init.c:134:41: error: passing 'const char *' to parameter of type 'char *' discards qualifiers
by kernel test robot
tree: https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git master
head: 7fef2edf7cc753b51f7ccc74993971b0a9c81eca
commit: 34b877d972bec8cbf397a57393317672cf92996f mt76: mt7915: add thermal cooling device support
date: 3 weeks ago
config: powerpc-randconfig-r003-20210713 (attached as .config)
compiler: clang version 13.0.0 (https://github.com/llvm/llvm-project 8d69635ed9ecf36fd0ca85906bfde17949671cbe)
reproduce (this is a W=1 build):
wget https://raw.githubusercontent.com/intel/lkp-tests/master/sbin/make.cross -O ~/bin/make.cross
chmod +x ~/bin/make.cross
# install powerpc cross compiling tool for clang build
# apt-get install binutils-powerpc-linux-gnu
# https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/commit...
git remote add linus https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
git fetch --no-tags linus master
git checkout 34b877d972bec8cbf397a57393317672cf92996f
# save the attached .config to linux build tree
COMPILER_INSTALL_PATH=$HOME/0day COMPILER=clang make.cross ARCH=powerpc
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 >>):
In file included from drivers/net/wireless/mediatek/mt76/mt7915/init.c:4:
In file included from include/linux/etherdevice.h:20:
In file included from include/linux/if_ether.h:19:
In file included from include/linux/skbuff.h:13:
In file included from include/linux/kernel.h:12:
In file included from include/linux/bitops.h:32:
In file included from arch/powerpc/include/asm/bitops.h:62:
arch/powerpc/include/asm/barrier.h:49:9: warning: '__lwsync' macro redefined [-Wmacro-redefined]
#define __lwsync() __asm__ __volatile__ (stringify_in_c(LWSYNC) : : :"memory")
^
<built-in>:309:9: note: previous definition is here
#define __lwsync __builtin_ppc_lwsync
^
>> drivers/net/wireless/mediatek/mt76/mt7915/init.c:134:41: error: passing 'const char *' to parameter of type 'char *' discards qualifiers [-Werror,-Wincompatible-pointer-types-discards-qualifiers]
cdev = thermal_cooling_device_register(wiphy_name(wiphy), phy,
^~~~~~~~~~~~~~~~~
include/linux/thermal.h:407:39: note: passing argument to parameter 'type' here
thermal_cooling_device_register(char *type, void *devdata,
^
1 warning and 1 error generated.
vim +134 drivers/net/wireless/mediatek/mt76/mt7915/init.c
127
128 static int mt7915_thermal_init(struct mt7915_phy *phy)
129 {
130 struct wiphy *wiphy = phy->mt76->hw->wiphy;
131 struct thermal_cooling_device *cdev;
132 struct device *hwmon;
133
> 134 cdev = thermal_cooling_device_register(wiphy_name(wiphy), phy,
135 &mt7915_thermal_ops);
136 if (!IS_ERR(cdev)) {
137 if (sysfs_create_link(&wiphy->dev.kobj, &cdev->device.kobj,
138 "cooling_device") < 0)
139 thermal_cooling_device_unregister(cdev);
140 else
141 phy->cdev = cdev;
142 }
143
144 if (!IS_REACHABLE(CONFIG_HWMON))
145 return 0;
146
147 hwmon = devm_hwmon_device_register_with_groups(&wiphy->dev,
148 wiphy_name(wiphy), phy,
149 mt7915_hwmon_groups);
150 if (IS_ERR(hwmon))
151 return PTR_ERR(hwmon);
152
153 return 0;
154 }
155
---
0-DAY CI Kernel Test Service, Intel Corporation
https://lists.01.org/hyperkitty/list/kbuild-all@lists.01.org
1 year, 2 months
[tip:core/urgent 1/1] kernel/smpboot.c:50:20: warning: duplicate 'inline' declaration specifier
by kernel test robot
tree: https://git.kernel.org/pub/scm/linux/kernel/git/tip/tip.git core/urgent
head: e9ba16e68cce2f85e9f5d2eba5c0453f1a741fd2
commit: e9ba16e68cce2f85e9f5d2eba5c0453f1a741fd2 [1/1] smpboot: Mark idle_init() as __always_inlined to work around aggressive compiler un-inlining
config: x86_64-randconfig-a004-20210713 (attached as .config)
compiler: clang version 13.0.0 (https://github.com/llvm/llvm-project 8d69635ed9ecf36fd0ca85906bfde17949671cbe)
reproduce (this is a W=1 build):
wget https://raw.githubusercontent.com/intel/lkp-tests/master/sbin/make.cross -O ~/bin/make.cross
chmod +x ~/bin/make.cross
# install x86_64 cross compiling tool for clang build
# apt-get install binutils-x86-64-linux-gnu
# https://git.kernel.org/pub/scm/linux/kernel/git/tip/tip.git/commit/?id=e9...
git remote add tip https://git.kernel.org/pub/scm/linux/kernel/git/tip/tip.git
git fetch --no-tags tip core/urgent
git checkout e9ba16e68cce2f85e9f5d2eba5c0453f1a741fd2
# save the attached .config to linux build tree
COMPILER_INSTALL_PATH=$HOME/0day COMPILER=clang make.cross ARCH=x86_64
If you fix the issue, kindly add following tag as appropriate
Reported-by: kernel test robot <lkp(a)intel.com>
All warnings (new ones prefixed by >>):
>> kernel/smpboot.c:50:20: warning: duplicate 'inline' declaration specifier [-Wduplicate-decl-specifier]
static inline void __always_inline idle_init(unsigned int cpu)
^
include/linux/compiler_attributes.h:65:41: note: expanded from macro '__always_inline'
#define __always_inline inline __attribute__((__always_inline__))
^
include/linux/compiler_types.h:149:16: note: expanded from macro 'inline'
#define inline inline __gnu_inline __inline_maybe_unused notrace
^
1 warning generated.
vim +/inline +50 kernel/smpboot.c
43
44 /**
45 * idle_init - Initialize the idle thread for a cpu
46 * @cpu: The cpu for which the idle thread should be initialized
47 *
48 * Creates the thread if it does not exist.
49 */
> 50 static inline void __always_inline idle_init(unsigned int cpu)
51 {
52 struct task_struct *tsk = per_cpu(idle_threads, cpu);
53
54 if (!tsk) {
55 tsk = fork_idle(cpu);
56 if (IS_ERR(tsk))
57 pr_err("SMP: fork_idle() failed for CPU %u\n", cpu);
58 else
59 per_cpu(idle_threads, cpu) = tsk;
60 }
61 }
62
---
0-DAY CI Kernel Test Service, Intel Corporation
https://lists.01.org/hyperkitty/list/kbuild-all@lists.01.org
1 year, 2 months
Re: [RFC 1/2] powerpc/book3s_hv: Add new idle-hint attribute in VPA region
by kernel test robot
Hi Parth,
[FYI, it's a private test report for your RFC patch.]
[auto build test WARNING on powerpc/next]
[also build test WARNING on v5.14-rc1 next-20210712]
[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]
url: https://github.com/0day-ci/linux/commits/Parth-Shah/Paravirtualize-idle-C...
base: https://git.kernel.org/pub/scm/linux/kernel/git/powerpc/linux.git next
config: powerpc-allyesconfig (attached as .config)
compiler: powerpc64-linux-gcc (GCC) 9.3.0
reproduce (this is a W=1 build):
wget https://raw.githubusercontent.com/intel/lkp-tests/master/sbin/make.cross -O ~/bin/make.cross
chmod +x ~/bin/make.cross
# https://github.com/0day-ci/linux/commit/09b5719b7516bcf50add81162e131d53e...
git remote add linux-review https://github.com/0day-ci/linux
git fetch --no-tags linux-review Parth-Shah/Paravirtualize-idle-CPU-wakeup-optimization/20210713-132728
git checkout 09b5719b7516bcf50add81162e131d53ec10aeca
# save the attached .config to linux build tree
COMPILER_INSTALL_PATH=$HOME/0day COMPILER=gcc-9.3.0 make.cross ARCH=powerpc
If you fix the issue, kindly add following tag as appropriate
Reported-by: kernel test robot <lkp(a)intel.com>
All warnings (new ones prefixed by >>):
>> arch/powerpc/kvm/book3s_hv.c:3071:6: warning: no previous prototype for 'set_idle_hint_for_kvm' [-Wmissing-prototypes]
3071 | void set_idle_hint_for_kvm(struct kvm *kvm, int cpu, int value)
| ^~~~~~~~~~~~~~~~~~~~~
vim +/set_idle_hint_for_kvm +3071 arch/powerpc/kvm/book3s_hv.c
3070
> 3071 void set_idle_hint_for_kvm(struct kvm *kvm, int cpu, int value)
3072 {
3073 int i;
3074 struct kvm_vcpu *vcpu;
3075
3076 kvm_for_each_vcpu(i, vcpu, kvm) {
3077 if (cpu == prev_cpu_of_kvm(vcpu)) {
3078 kvmppc_idle_hint_set(vcpu, value);
3079 }
3080 }
3081 }
3082
---
0-DAY CI Kernel Test Service, Intel Corporation
https://lists.01.org/hyperkitty/list/kbuild-all@lists.01.org
1 year, 2 months