tree:
https://git.kernel.org/pub/scm/linux/kernel/git/rafael/linux-pm.git bleeding-edge
head: 506a524e05e240d2878cf86a56c47e72e09d329f
commit: bc5706eaeae0b51385d3859b0fdf17a2c8fdc134 [46/47] ACPI: processor: Fix CPU0 wakeup
in acpi_idle_play_dead()
config: x86_64-randconfig-s022-20210330 (attached as .config)
compiler: gcc-9 (Debian 9.3.0-22) 9.3.0
reproduce:
# apt-get install sparse
# sparse version: v0.6.3-279-g6d5d9b42-dirty
#
https://git.kernel.org/pub/scm/linux/kernel/git/rafael/linux-pm.git/commi...
git remote add pm
https://git.kernel.org/pub/scm/linux/kernel/git/rafael/linux-pm.git
git fetch --no-tags pm bleeding-edge
git checkout bc5706eaeae0b51385d3859b0fdf17a2c8fdc134
# save the attached .config to linux build tree
make W=1 C=1 CF='-fdiagnostic-prefix -D__CHECK_ENDIAN__' 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 >>):
drivers/acpi/processor_idle.c: In function 'acpi_idle_play_dead':
> drivers/acpi/processor_idle.c:546:15: warning: extra tokens at
end of #ifdef directive
546 | #ifdef defined(CONFIG_X86) &&
defined(CONFIG_HOTPLUG_CPU)
| ^
drivers/acpi/processor_idle.c: At top level:
drivers/acpi/processor_idle.c:1103:12: warning: no previous prototype for
'acpi_processor_ffh_lpi_probe' [-Wmissing-prototypes]
1103 | int __weak acpi_processor_ffh_lpi_probe(unsigned int cpu)
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
drivers/acpi/processor_idle.c:1108:12: warning: no previous prototype for
'acpi_processor_ffh_lpi_enter' [-Wmissing-prototypes]
1108 | int __weak acpi_processor_ffh_lpi_enter(struct acpi_lpi_state *lpi)
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
Kconfig warnings: (for reference only)
WARNING: unmet direct dependencies detected for ADI_AXI_ADC
Depends on IIO && HAS_IOMEM && OF
Selected by
- AD9467 && IIO && SPI
vim +546 drivers/acpi/processor_idle.c
524
525 /**
526 * acpi_idle_play_dead - enters an ACPI state for long-term idle (i.e. off-lining)
527 * @dev: the target CPU
528 * @index: the index of suggested state
529 */
530 static int acpi_idle_play_dead(struct cpuidle_device *dev, int index)
531 {
532 struct acpi_processor_cx *cx = per_cpu(acpi_cstate[index], dev->cpu);
533
534 ACPI_FLUSH_CPU_CACHE();
535
536 while (1) {
537
538 if (cx->entry_method == ACPI_CSTATE_HALT)
539 safe_halt();
540 else if (cx->entry_method == ACPI_CSTATE_SYSTEMIO) {
541 inb(cx->address);
542 wait_for_freeze();
543 } else
544 return -ENODEV;
545
546 #ifdef defined(CONFIG_X86) && defined(CONFIG_HOTPLUG_CPU)
547 /* If NMI wants to wake up CPU0, start CPU0. */
548 if (wakeup_cpu0())
549 start_cpu0();
550 #endif
551 }
552
553 /* Never reached */
554 return 0;
555 }
556
---
0-DAY CI Kernel Test Service, Intel Corporation
https://lists.01.org/hyperkitty/list/kbuild-all@lists.01.org