[peterz-queue:sched/idle 15/37] kernel/time/tick-broadcast.c:627:9: error: call to undeclared function 'arch_test_bit'; ISO C99 and later do not support implicit function declarations
From: kernel test robot
Date: Sun Jun 05 2022 - 18:14:05 EST
tree: https://git.kernel.org/pub/scm/linux/kernel/git/peterz/queue.git sched/idle
head: e11e56428f57b36930eb0f8eed997a462010aa95
commit: b581e362d475d40edb2d1099d19a8e12721e7734 [15/37] cpuidle: Fix rcu_idle_*() usage
config: hexagon-randconfig-r024-20220605 (https://download.01.org/0day-ci/archive/20220606/202206060612.7U4QNOzX-lkp@xxxxxxxxx/config)
compiler: clang version 15.0.0 (https://github.com/llvm/llvm-project 416a5080d89066029f9889dc23f94de47c2fa895)
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/peterz/queue.git/commit/?id=b581e362d475d40edb2d1099d19a8e12721e7734
git remote add peterz-queue https://git.kernel.org/pub/scm/linux/kernel/git/peterz/queue.git
git fetch --no-tags peterz-queue sched/idle
git checkout b581e362d475d40edb2d1099d19a8e12721e7734
# save the config file
mkdir build_dir && cp config build_dir/.config
COMPILER_INSTALL_PATH=$HOME/0day COMPILER=clang make.cross W=1 O=build_dir ARCH=hexagon SHELL=/bin/bash kernel/time/
If you fix the issue, kindly add following tag where applicable
Reported-by: kernel test robot <lkp@xxxxxxxxx>
All errors (new ones prefixed by >>):
>> kernel/time/tick-broadcast.c:627:9: error: call to undeclared function 'arch_test_bit'; ISO C99 and later do not support implicit function declarations [-Wimplicit-function-declaration]
return arch_test_bit(smp_processor_id(), cpumask_bits(tick_broadcast_force_mask));
^
kernel/time/tick-broadcast.c:627:9: note: did you mean '__test_bit'?
arch/hexagon/include/asm/bitops.h:161:19: note: '__test_bit' declared here
static inline int __test_bit(int nr, const volatile unsigned long *addr)
^
1 error generated.
vim +/arch_test_bit +627 kernel/time/tick-broadcast.c
617
618 /*
619 * Called before going idle with interrupts disabled. Checks whether a
620 * broadcast event from the other core is about to happen. We detected
621 * that in tick_broadcast_oneshot_control(). The callsite can use this
622 * to avoid a deep idle transition as we are about to get the
623 * broadcast IPI right away.
624 */
625 noinstr int tick_check_broadcast_expired(void)
626 {
> 627 return arch_test_bit(smp_processor_id(), cpumask_bits(tick_broadcast_force_mask));
628 }
629
--
0-DAY CI Kernel Test Service
https://01.org/lkp