llvm.lists.linux.dev archive mirror
 help / color / mirror / Atom feed
* [tglx-devel:irqflags 17/20] include/linux/math64.h:106:15: error: call to undeclared function 'is_power_of_2'; ISO C99 and later do not support implicit function declarations
@ 2026-08-29 22:13 kernel test robot
  0 siblings, 0 replies; only message in thread
From: kernel test robot @ 2026-08-29 22:13 UTC (permalink / raw)
  To: Thomas Gleixner; +Cc: llvm, oe-kbuild-all

tree:   https://git.kernel.org/pub/scm/linux/kernel/git/tglx/devel.git irqflags
head:   59394501f5a285ef270931207a67d2f129403151
commit: f0f1f20d167c74ea3bf43b179ce88214100b21a5 [17/20] irqflags: Provide refcounted local_irq_*() variants
config: arm-defconfig (https://download.01.org/0day-ci/archive/20260830/202608300655.4x1xVMdw-lkp@intel.com/config)
compiler: clang version 24.0.0git (https://github.com/llvm/llvm-project 52774473867e49b5891ab9381accf4e5a3ce0024)
reproduce (this is a W=1 build): (https://download.01.org/0day-ci/archive/20260830/202608300655.4x1xVMdw-lkp@intel.com/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 <lkp@intel.com>
| Closes: https://lore.kernel.org/oe-kbuild-all/202608300655.4x1xVMdw-lkp@intel.com/

All errors (new ones prefixed by >>):

   In file included from kernel/bounds.c:14:
   In file included from include/linux/log2.h:12:
   In file included from include/linux/bitops.h:67:
   In file included from arch/arm/include/asm/bitops.h:28:
   In file included from include/linux/irqflags.h:16:
   In file included from include/linux/preempt.h:109:
   In file included from ./arch/arm/include/generated/asm/preempt.h:1:
   In file included from include/asm-generic/preempt.h:5:
   In file included from include/linux/thread_info.h:14:
   In file included from include/linux/restart_block.h:9:
   In file included from include/linux/time64.h:5:
>> include/linux/math64.h:106:15: error: call to undeclared function 'is_power_of_2'; ISO C99 and later do not support implicit function declarations [-Wimplicit-function-declaration]
     106 |         *remainder = do_div(dividend, divisor);
         |                      ^
   include/asm-generic/div64.h:185:6: note: expanded from macro 'do_div'
     185 |             is_power_of_2(__base)) {                    \
         |             ^
   In file included from kernel/bounds.c:14:
   In file included from include/linux/log2.h:12:
   In file included from include/linux/bitops.h:67:
   In file included from arch/arm/include/asm/bitops.h:28:
   In file included from include/linux/irqflags.h:16:
   In file included from include/linux/preempt.h:109:
   In file included from ./arch/arm/include/generated/asm/preempt.h:1:
   In file included from include/asm-generic/preempt.h:5:
   In file included from include/linux/thread_info.h:14:
   In file included from include/linux/restart_block.h:9:
   In file included from include/linux/time64.h:5:
>> include/linux/math64.h:106:15: error: call to undeclared function 'ilog2'; ISO C99 and later do not support implicit function declarations [-Wimplicit-function-declaration]
   include/asm-generic/div64.h:187:11: note: expanded from macro 'do_div'
     187 |                 (n) >>= ilog2(__base);                  \
         |                         ^
   In file included from kernel/bounds.c:14:
   In file included from include/linux/log2.h:12:
   In file included from include/linux/bitops.h:67:
   In file included from arch/arm/include/asm/bitops.h:28:
   In file included from include/linux/irqflags.h:16:
   In file included from include/linux/preempt.h:109:
   In file included from ./arch/arm/include/generated/asm/preempt.h:1:
   In file included from include/asm-generic/preempt.h:5:
   In file included from include/linux/thread_info.h:14:
   In file included from include/linux/restart_block.h:9:
   In file included from include/linux/time64.h:5:
>> include/linux/math64.h:106:15: error: call to undeclared function 'ilog2'; ISO C99 and later do not support implicit function declarations [-Wimplicit-function-declaration]
   include/asm-generic/div64.h:191:9: note: expanded from macro 'do_div'
     191 |                 (n) = __div64_const32(n, __base);       \
         |                       ^
   include/asm-generic/div64.h:81:14: note: expanded from macro '__div64_const32'
      81 |         ___p = 1 << ilog2(___b);                                        \
         |                     ^
   In file included from kernel/bounds.c:14:
   In file included from include/linux/log2.h:12:
   In file included from include/linux/bitops.h:67:
   In file included from arch/arm/include/asm/bitops.h:28:
   In file included from include/linux/irqflags.h:16:
   In file included from include/linux/preempt.h:109:
   In file included from ./arch/arm/include/generated/asm/preempt.h:1:
   In file included from include/asm-generic/preempt.h:5:
   In file included from include/linux/thread_info.h:14:
   In file included from include/linux/restart_block.h:9:
   In file included from include/linux/time64.h:5:
   include/linux/math64.h:304:14: error: call to undeclared function 'is_power_of_2'; ISO C99 and later do not support implicit function declarations [-Wimplicit-function-declaration]
     304 |         rl.l.high = do_div(rh.ll, divisor);
         |                     ^
   include/asm-generic/div64.h:185:6: note: expanded from macro 'do_div'
     185 |             is_power_of_2(__base)) {                    \
         |             ^
   In file included from kernel/bounds.c:14:
   In file included from include/linux/log2.h:12:
   In file included from include/linux/bitops.h:67:
   In file included from arch/arm/include/asm/bitops.h:28:
   In file included from include/linux/irqflags.h:16:
   In file included from include/linux/preempt.h:109:
   In file included from ./arch/arm/include/generated/asm/preempt.h:1:
   In file included from include/asm-generic/preempt.h:5:
   In file included from include/linux/thread_info.h:14:
   In file included from include/linux/restart_block.h:9:
   In file included from include/linux/time64.h:5:
   include/linux/math64.h:304:14: error: call to undeclared function 'ilog2'; ISO C99 and later do not support implicit function declarations [-Wimplicit-function-declaration]
   include/asm-generic/div64.h:187:11: note: expanded from macro 'do_div'
     187 |                 (n) >>= ilog2(__base);                  \
         |                         ^
   In file included from kernel/bounds.c:14:
   In file included from include/linux/log2.h:12:
   In file included from include/linux/bitops.h:67:
   In file included from arch/arm/include/asm/bitops.h:28:
   In file included from include/linux/irqflags.h:16:
   In file included from include/linux/preempt.h:109:
   In file included from ./arch/arm/include/generated/asm/preempt.h:1:
   In file included from include/asm-generic/preempt.h:5:
   In file included from include/linux/thread_info.h:14:
   In file included from include/linux/restart_block.h:9:
   In file included from include/linux/time64.h:5:
   include/linux/math64.h:304:14: error: call to undeclared function 'ilog2'; ISO C99 and later do not support implicit function declarations [-Wimplicit-function-declaration]
   include/asm-generic/div64.h:191:9: note: expanded from macro 'do_div'
     191 |                 (n) = __div64_const32(n, __base);       \
         |                       ^
   include/asm-generic/div64.h:81:14: note: expanded from macro '__div64_const32'
      81 |         ___p = 1 << ilog2(___b);                                        \
         |                     ^
   In file included from kernel/bounds.c:14:
   In file included from include/linux/log2.h:12:
   In file included from include/linux/bitops.h:67:
   In file included from arch/arm/include/asm/bitops.h:28:
   In file included from include/linux/irqflags.h:16:
   In file included from include/linux/preempt.h:109:
   In file included from ./arch/arm/include/generated/asm/preempt.h:1:
   In file included from include/asm-generic/preempt.h:5:
   In file included from include/linux/thread_info.h:14:
   In file included from include/linux/restart_block.h:9:
   In file included from include/linux/time64.h:5:
   include/linux/math64.h:307:2: error: call to undeclared function 'is_power_of_2'; ISO C99 and later do not support implicit function declarations [-Wimplicit-function-declaration]
     307 |         do_div(rl.ll, divisor);
         |         ^
   include/asm-generic/div64.h:185:6: note: expanded from macro 'do_div'
     185 |             is_power_of_2(__base)) {                    \
         |             ^
   In file included from kernel/bounds.c:14:
   In file included from include/linux/log2.h:12:
   In file included from include/linux/bitops.h:67:
   In file included from arch/arm/include/asm/bitops.h:28:
   In file included from include/linux/irqflags.h:16:
   In file included from include/linux/preempt.h:109:
   In file included from ./arch/arm/include/generated/asm/preempt.h:1:
   In file included from include/asm-generic/preempt.h:5:
   In file included from include/linux/thread_info.h:14:
   In file included from include/linux/restart_block.h:9:
   In file included from include/linux/time64.h:5:
   include/linux/math64.h:307:2: error: call to undeclared function 'ilog2'; ISO C99 and later do not support implicit function declarations [-Wimplicit-function-declaration]
   include/asm-generic/div64.h:187:11: note: expanded from macro 'do_div'
     187 |                 (n) >>= ilog2(__base);                  \
         |                         ^
   In file included from kernel/bounds.c:14:
   In file included from include/linux/log2.h:12:
   In file included from include/linux/bitops.h:67:
   In file included from arch/arm/include/asm/bitops.h:28:
   In file included from include/linux/irqflags.h:16:
   In file included from include/linux/preempt.h:109:
   In file included from ./arch/arm/include/generated/asm/preempt.h:1:
   In file included from include/asm-generic/preempt.h:5:
   In file included from include/linux/thread_info.h:14:
   In file included from include/linux/restart_block.h:9:
   In file included from include/linux/time64.h:5:
   include/linux/math64.h:307:2: error: call to undeclared function 'ilog2'; ISO C99 and later do not support implicit function declarations [-Wimplicit-function-declaration]
   include/asm-generic/div64.h:191:9: note: expanded from macro 'do_div'
     191 |                 (n) = __div64_const32(n, __base);       \
         |                       ^
   include/asm-generic/div64.h:81:14: note: expanded from macro '__div64_const32'
      81 |         ___p = 1 << ilog2(___b);                                        \
         |                     ^
   In file included from kernel/bounds.c:14:
   In file included from include/linux/log2.h:12:
   In file included from include/linux/bitops.h:67:
   In file included from arch/arm/include/asm/bitops.h:28:
   In file included from include/linux/irqflags.h:16:
   In file included from include/linux/preempt.h:109:
   In file included from ./arch/arm/include/generated/asm/preempt.h:1:
   In file included from include/asm-generic/preempt.h:5:
   In file included from include/linux/thread_info.h:62:
   In file included from arch/arm/include/asm/thread_info.h:14:
   In file included from arch/arm/include/asm/page.h:189:
>> include/asm-generic/getorder.h:38:10: error: call to undeclared function 'ilog2'; ISO C99 and later do not support implicit function declarations [-Wimplicit-function-declaration]
      38 |                 return ilog2((size) - 1) - PAGE_SHIFT + 1;
         |                        ^
>> include/asm-generic/getorder.h:44:9: error: call to undeclared function 'fls'; ISO C99 and later do not support implicit function declarations [-Wimplicit-function-declaration]
      44 |         return fls(size);
         |                ^
   In file included from kernel/bounds.c:14:
   In file included from include/linux/log2.h:12:
   In file included from include/linux/bitops.h:67:
   In file included from arch/arm/include/asm/bitops.h:28:
   In file included from include/linux/irqflags.h:16:
   In file included from include/linux/preempt.h:109:
   In file included from ./arch/arm/include/generated/asm/preempt.h:1:
   In file included from include/asm-generic/preempt.h:5:
   In file included from include/linux/thread_info.h:62:
>> arch/arm/include/asm/thread_info.h:40:39: error: type specifier missing, defaults to 'int'; ISO C99 and later do not support implicit int [-Wimplicit-int]
      40 | DECLARE_PER_CPU(struct task_struct *, __entry_task);
         |                                       ^
         |                                       int 
   arch/arm/include/asm/thread_info.h:40:1: error: type specifier missing, defaults to 'int'; ISO C99 and later do not support implicit int [-Wimplicit-int]
      40 | DECLARE_PER_CPU(struct task_struct *, __entry_task);
         | ^
         | int 
>> arch/arm/include/asm/thread_info.h:115:16: error: use of undeclared identifier 'MODE_MASK'
     115 |                 .cpsr_mask      = MODE_MASK | PSR_T_BIT,
         |                                   ^~~~~~~~~
>> arch/arm/include/asm/thread_info.h:115:28: error: use of undeclared identifier 'PSR_T_BIT'
     115 |                 .cpsr_mask      = MODE_MASK | PSR_T_BIT,
         |                                               ^~~~~~~~~
>> arch/arm/include/asm/thread_info.h:116:15: error: use of undeclared identifier 'USR_MODE'
     116 |                 .cpsr_val       = USR_MODE,
         |                                   ^~~~~~~~
   In file included from kernel/bounds.c:14:
   In file included from include/linux/log2.h:12:
   In file included from include/linux/bitops.h:67:
   In file included from arch/arm/include/asm/bitops.h:28:
   In file included from include/linux/irqflags.h:16:
   In file included from include/linux/preempt.h:109:
   In file included from ./arch/arm/include/generated/asm/preempt.h:1:
   In file included from include/asm-generic/preempt.h:5:
>> include/linux/thread_info.h:104:2: error: call to undeclared function 'set_bit'; ISO C99 and later do not support implicit function declarations [-Wimplicit-function-declaration]
     104 |         set_bit(flag, (unsigned long *)&ti->flags);
         |         ^
>> include/linux/thread_info.h:109:2: error: call to undeclared function 'clear_bit'; ISO C99 and later do not support implicit function declarations [-Wimplicit-function-declaration]
     109 |         clear_bit(flag, (unsigned long *)&ti->flags);
         |         ^
>> include/linux/thread_info.h:123:9: error: call to undeclared function 'test_and_set_bit'; ISO C99 and later do not support implicit function declarations [-Wimplicit-function-declaration]
     123 |         return test_and_set_bit(flag, (unsigned long *)&ti->flags);
         |                ^
   fatal error: too many errors emitted, stopping now [-ferror-limit=]
   20 errors generated.
   make[3]: *** [scripts/Makefile.build:185: kernel/bounds.s] Error 1
   make[3]: Target 'prepare' not remade because of errors.
   make[2]: *** [Makefile:1414: prepare0] Error 2
   make[2]: Target 'prepare' not remade because of errors.
   make[1]: *** [Makefile:248: __sub-make] Error 2
   make[1]: Target 'prepare' not remade because of errors.
   make: *** [Makefile:248: __sub-make] Error 2
   make: Target 'prepare' not remade because of errors.


vim +/is_power_of_2 +106 include/linux/math64.h

f910381a55cdaa0 Sasha Levin  2012-03-15  102  
2418f4f28f8467b Roman Zippel 2008-05-01  103  #ifndef div_u64_rem
2418f4f28f8467b Roman Zippel 2008-05-01  104  static inline u64 div_u64_rem(u64 dividend, u32 divisor, u32 *remainder)
2418f4f28f8467b Roman Zippel 2008-05-01  105  {
2418f4f28f8467b Roman Zippel 2008-05-01 @106  	*remainder = do_div(dividend, divisor);
2418f4f28f8467b Roman Zippel 2008-05-01  107  	return dividend;
2418f4f28f8467b Roman Zippel 2008-05-01  108  }
2418f4f28f8467b Roman Zippel 2008-05-01  109  #endif
2418f4f28f8467b Roman Zippel 2008-05-01  110  

:::::: The code at line 106 was first introduced by commit
:::::: 2418f4f28f8467b92a6177af32d05737ebf6206c introduce explicit signed/unsigned 64bit divide

:::::: TO: Roman Zippel <zippel@linux-m68k.org>
:::::: CC: Linus Torvalds <torvalds@linux-foundation.org>

--
0-DAY CI Kernel Test Service
https://github.com/intel/lkp-tests/wiki

^ permalink raw reply	[flat|nested] only message in thread

only message in thread, other threads:[~2026-08-29 22:13 UTC | newest]

Thread overview: (only message) (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2026-08-29 22:13 [tglx-devel:irqflags 17/20] include/linux/math64.h:106:15: error: call to undeclared function 'is_power_of_2'; ISO C99 and later do not support implicit function declarations kernel test robot

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).