[tglx-devel:timers/cleanup 22/59] arch/x86/kernel/apm_32.c:957:3: error: call to undeclared function 'default_idle'; ISO C99 and later do not support implicit function declarations

kernel test robot <[email protected]>
Newsgroups dev.linux.lists.llvm,dev.linux.lists.oe-kbuild-all
Message-ID <[email protected]>
tree:   https://git.kernel.org/pub/scm/linux/kernel/git/tglx/devel.git timers/cleanup
head:   0ad363c8e014568032d53fe2c7ab288de68373f4
commit: 5d4d9accd52166913ded860e2bb84076340e3d1a [22/59] x86/idle: Move idle declarations out of processor.h
config: i386-randconfig-011-20260713 (https://download.01.org/0day-ci/archive/20260713/[email protected]/config)
compiler: clang version 22.1.3 (https://github.com/llvm/llvm-project e9846648fd6183ee6d8cbdb4502213fcf902a211)
reproduce (this is a W=1 build): (https://download.01.org/0day-ci/archive/20260713/[email protected]/reproduce)

If you fix the issue in a separate patch/commit (i.e. not just a new version of
the same patch/commit), kindly add following tags
| Reported-by: kernel test robot <[email protected]>
| Closes: https://lore.kernel.org/oe-kbuild-all/[email protected]/

All errors (new ones prefixed by >>):

>> arch/x86/kernel/apm_32.c:957:3: error: call to undeclared function 'default_idle'; ISO C99 and later do not support implicit function declarations [-Wimplicit-function-declaration]
     957 |                 default_idle();
         |                 ^
   1 error generated.


vim +/default_idle +957 arch/x86/kernel/apm_32.c

^1da177e4c3f41 arch/i386/kernel/apm.c   Linus Torvalds      2005-04-16  891  
^1da177e4c3f41 arch/i386/kernel/apm.c   Linus Torvalds      2005-04-16  892  /**
^1da177e4c3f41 arch/i386/kernel/apm.c   Linus Torvalds      2005-04-16  893   * apm_cpu_idle		-	cpu idling for APM capable Linux
^1da177e4c3f41 arch/i386/kernel/apm.c   Linus Torvalds      2005-04-16  894   *
^1da177e4c3f41 arch/i386/kernel/apm.c   Linus Torvalds      2005-04-16  895   * This is the idling function the kernel executes when APM is available. It
^1da177e4c3f41 arch/i386/kernel/apm.c   Linus Torvalds      2005-04-16  896   * tries to do BIOS powermanagement based on the average system idle time.
^1da177e4c3f41 arch/i386/kernel/apm.c   Linus Torvalds      2005-04-16  897   * Furthermore it calls the system default idle routine.
^1da177e4c3f41 arch/i386/kernel/apm.c   Linus Torvalds      2005-04-16  898   */
^1da177e4c3f41 arch/i386/kernel/apm.c   Linus Torvalds      2005-04-16  899  
dd8af076262cc1 arch/x86/kernel/apm_32.c Len Brown           2013-02-09  900  static int apm_cpu_idle(struct cpuidle_device *dev,
dd8af076262cc1 arch/x86/kernel/apm_32.c Len Brown           2013-02-09  901  	struct cpuidle_driver *drv, int index)
^1da177e4c3f41 arch/i386/kernel/apm.c   Linus Torvalds      2005-04-16  902  {
^1da177e4c3f41 arch/i386/kernel/apm.c   Linus Torvalds      2005-04-16  903  	static int use_apm_idle; /* = 0 */
^1da177e4c3f41 arch/i386/kernel/apm.c   Linus Torvalds      2005-04-16  904  	static unsigned int last_jiffies; /* = 0 */
f7dcd63de44219 arch/x86/kernel/apm_32.c Frederic Weisbecker 2017-01-31  905  	static u64 last_stime; /* = 0 */
f7dcd63de44219 arch/x86/kernel/apm_32.c Frederic Weisbecker 2017-01-31  906  	u64 stime, utime;
^1da177e4c3f41 arch/i386/kernel/apm.c   Linus Torvalds      2005-04-16  907  
^1da177e4c3f41 arch/i386/kernel/apm.c   Linus Torvalds      2005-04-16  908  	int apm_idle_done = 0;
^1da177e4c3f41 arch/i386/kernel/apm.c   Linus Torvalds      2005-04-16  909  	unsigned int jiffies_since_last_check = jiffies - last_jiffies;
^1da177e4c3f41 arch/i386/kernel/apm.c   Linus Torvalds      2005-04-16  910  	unsigned int bucket;
^1da177e4c3f41 arch/i386/kernel/apm.c   Linus Torvalds      2005-04-16  911  
^1da177e4c3f41 arch/i386/kernel/apm.c   Linus Torvalds      2005-04-16  912  recalc:
f7dcd63de44219 arch/x86/kernel/apm_32.c Frederic Weisbecker 2017-01-31  913  	task_cputime(current, &utime, &stime);
^1da177e4c3f41 arch/i386/kernel/apm.c   Linus Torvalds      2005-04-16  914  	if (jiffies_since_last_check > IDLE_CALC_LIMIT) {
^1da177e4c3f41 arch/i386/kernel/apm.c   Linus Torvalds      2005-04-16  915  		use_apm_idle = 0;
^1da177e4c3f41 arch/i386/kernel/apm.c   Linus Torvalds      2005-04-16  916  	} else if (jiffies_since_last_check > idle_period) {
^1da177e4c3f41 arch/i386/kernel/apm.c   Linus Torvalds      2005-04-16  917  		unsigned int idle_percentage;
^1da177e4c3f41 arch/i386/kernel/apm.c   Linus Torvalds      2005-04-16  918  
f7dcd63de44219 arch/x86/kernel/apm_32.c Frederic Weisbecker 2017-01-31  919  		idle_percentage = nsecs_to_jiffies(stime - last_stime);
^1da177e4c3f41 arch/i386/kernel/apm.c   Linus Torvalds      2005-04-16  920  		idle_percentage *= 100;
^1da177e4c3f41 arch/i386/kernel/apm.c   Linus Torvalds      2005-04-16  921  		idle_percentage /= jiffies_since_last_check;
^1da177e4c3f41 arch/i386/kernel/apm.c   Linus Torvalds      2005-04-16  922  		use_apm_idle = (idle_percentage > idle_threshold);
^1da177e4c3f41 arch/i386/kernel/apm.c   Linus Torvalds      2005-04-16  923  		if (apm_info.forbid_idle)
^1da177e4c3f41 arch/i386/kernel/apm.c   Linus Torvalds      2005-04-16  924  			use_apm_idle = 0;
^1da177e4c3f41 arch/i386/kernel/apm.c   Linus Torvalds      2005-04-16  925  	}
^1da177e4c3f41 arch/i386/kernel/apm.c   Linus Torvalds      2005-04-16  926  
6fac4829ce0ef9 arch/x86/kernel/apm_32.c Frederic Weisbecker 2012-11-13  927  	last_jiffies = jiffies;
6fac4829ce0ef9 arch/x86/kernel/apm_32.c Frederic Weisbecker 2012-11-13  928  	last_stime = stime;
6fac4829ce0ef9 arch/x86/kernel/apm_32.c Frederic Weisbecker 2012-11-13  929  
^1da177e4c3f41 arch/i386/kernel/apm.c   Linus Torvalds      2005-04-16  930  	bucket = IDLE_LEAKY_MAX;
^1da177e4c3f41 arch/i386/kernel/apm.c   Linus Torvalds      2005-04-16  931  
^1da177e4c3f41 arch/i386/kernel/apm.c   Linus Torvalds      2005-04-16  932  	while (!need_resched()) {
^1da177e4c3f41 arch/i386/kernel/apm.c   Linus Torvalds      2005-04-16  933  		if (use_apm_idle) {
^1da177e4c3f41 arch/i386/kernel/apm.c   Linus Torvalds      2005-04-16  934  			unsigned int t;
^1da177e4c3f41 arch/i386/kernel/apm.c   Linus Torvalds      2005-04-16  935  
^1da177e4c3f41 arch/i386/kernel/apm.c   Linus Torvalds      2005-04-16  936  			t = jiffies;
^1da177e4c3f41 arch/i386/kernel/apm.c   Linus Torvalds      2005-04-16  937  			switch (apm_do_idle()) {
3f4380a1e0ea44 arch/x86/kernel/apm_32.c Cyrill Gorcunov     2008-01-30  938  			case 0:
3f4380a1e0ea44 arch/x86/kernel/apm_32.c Cyrill Gorcunov     2008-01-30  939  				apm_idle_done = 1;
^1da177e4c3f41 arch/i386/kernel/apm.c   Linus Torvalds      2005-04-16  940  				if (t != jiffies) {
^1da177e4c3f41 arch/i386/kernel/apm.c   Linus Torvalds      2005-04-16  941  					if (bucket) {
^1da177e4c3f41 arch/i386/kernel/apm.c   Linus Torvalds      2005-04-16  942  						bucket = IDLE_LEAKY_MAX;
^1da177e4c3f41 arch/i386/kernel/apm.c   Linus Torvalds      2005-04-16  943  						continue;
^1da177e4c3f41 arch/i386/kernel/apm.c   Linus Torvalds      2005-04-16  944  					}
^1da177e4c3f41 arch/i386/kernel/apm.c   Linus Torvalds      2005-04-16  945  				} else if (bucket) {
^1da177e4c3f41 arch/i386/kernel/apm.c   Linus Torvalds      2005-04-16  946  					bucket--;
^1da177e4c3f41 arch/i386/kernel/apm.c   Linus Torvalds      2005-04-16  947  					continue;
^1da177e4c3f41 arch/i386/kernel/apm.c   Linus Torvalds      2005-04-16  948  				}
^1da177e4c3f41 arch/i386/kernel/apm.c   Linus Torvalds      2005-04-16  949  				break;
3f4380a1e0ea44 arch/x86/kernel/apm_32.c Cyrill Gorcunov     2008-01-30  950  			case 1:
3f4380a1e0ea44 arch/x86/kernel/apm_32.c Cyrill Gorcunov     2008-01-30  951  				apm_idle_done = 1;
^1da177e4c3f41 arch/i386/kernel/apm.c   Linus Torvalds      2005-04-16  952  				break;
^1da177e4c3f41 arch/i386/kernel/apm.c   Linus Torvalds      2005-04-16  953  			default: /* BIOS refused */
^1da177e4c3f41 arch/i386/kernel/apm.c   Linus Torvalds      2005-04-16  954  				break;
^1da177e4c3f41 arch/i386/kernel/apm.c   Linus Torvalds      2005-04-16  955  			}
^1da177e4c3f41 arch/i386/kernel/apm.c   Linus Torvalds      2005-04-16  956  		}
^1da177e4c3f41 arch/i386/kernel/apm.c   Linus Torvalds      2005-04-16 @957  		default_idle();
7f424a8b08c26d arch/x86/kernel/apm_32.c Peter Zijlstra      2008-04-25  958  		local_irq_disable();
^1da177e4c3f41 arch/i386/kernel/apm.c   Linus Torvalds      2005-04-16  959  		jiffies_since_last_check = jiffies - last_jiffies;
^1da177e4c3f41 arch/i386/kernel/apm.c   Linus Torvalds      2005-04-16  960  		if (jiffies_since_last_check > idle_period)
^1da177e4c3f41 arch/i386/kernel/apm.c   Linus Torvalds      2005-04-16  961  			goto recalc;
^1da177e4c3f41 arch/i386/kernel/apm.c   Linus Torvalds      2005-04-16  962  	}
^1da177e4c3f41 arch/i386/kernel/apm.c   Linus Torvalds      2005-04-16  963  
^1da177e4c3f41 arch/i386/kernel/apm.c   Linus Torvalds      2005-04-16  964  	if (apm_idle_done)
^1da177e4c3f41 arch/i386/kernel/apm.c   Linus Torvalds      2005-04-16  965  		apm_do_busy();
7f424a8b08c26d arch/x86/kernel/apm_32.c Peter Zijlstra      2008-04-25  966  
dd8af076262cc1 arch/x86/kernel/apm_32.c Len Brown           2013-02-09  967  	return index;
^1da177e4c3f41 arch/i386/kernel/apm.c   Linus Torvalds      2005-04-16  968  }
^1da177e4c3f41 arch/i386/kernel/apm.c   Linus Torvalds      2005-04-16  969  

:::::: The code at line 957 was first introduced by commit
:::::: 1da177e4c3f41524e886b7f1b8a0c1fc7321cac2 Linux-2.6.12-rc2

:::::: TO: Linus Torvalds <[email protected]>
:::::: CC: Linus Torvalds <[email protected]>

--
0-DAY CI Kernel Test Service
https://github.com/intel/lkp-tests/wiki
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.