* Re: [PATCH v2] lib: test_bitops: add compile-time optimization/evaluations assertions
[not found] <20231130102717.1297492-1-mailhol.vincent@wanadoo.fr>
@ 2023-11-30 16:25 ` kernel test robot
2023-12-06 13:27 ` kernel test robot
1 sibling, 0 replies; 2+ messages in thread
From: kernel test robot @ 2023-11-30 16:25 UTC (permalink / raw)
To: Vincent Mailhol, Andrew Morton, linux-kernel, Yury Norov
Cc: oe-kbuild-all, Linux Memory Management List, Vincent Mailhol,
Nick Desaulniers, Douglas Anderson, Kees Cook, Petr Mladek,
Randy Dunlap, Zhaoyang Huang, Geert Uytterhoeven, Marco Elver
Hi Vincent,
kernel test robot noticed the following build errors:
[auto build test ERROR on akpm-mm/mm-everything]
[also build test ERROR on linus/master v6.7-rc3 next-20231130]
[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#_base_tree_information]
url: https://github.com/intel-lab-lkp/linux/commits/Vincent-Mailhol/lib-test_bitops-add-compile-time-optimization-evaluations-assertions/20231130-182837
base: https://git.kernel.org/pub/scm/linux/kernel/git/akpm/mm.git mm-everything
patch link: https://lore.kernel.org/r/20231130102717.1297492-1-mailhol.vincent%40wanadoo.fr
patch subject: [PATCH v2] lib: test_bitops: add compile-time optimization/evaluations assertions
config: m68k-allmodconfig (https://download.01.org/0day-ci/archive/20231201/202312010058.JJKeeqvE-lkp@intel.com/config)
compiler: m68k-linux-gcc (GCC) 13.2.0
reproduce (this is a W=1 build): (https://download.01.org/0day-ci/archive/20231201/202312010058.JJKeeqvE-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/202312010058.JJKeeqvE-lkp@intel.com/
All errors (new ones prefixed by >>):
In file included from <command-line>:
In function 'test_bitops_const_eval',
inlined from 'test_bitops_startup' at lib/test_bitops.c:126:2:
>> include/linux/compiler_types.h:435:45: error: call to '__compiletime_assert_183' declared with attribute error: BUILD_BUG_ON failed: !__builtin_constant_p(__test_expr)
435 | _compiletime_assert(condition, msg, __compiletime_assert_, __COUNTER__)
| ^
include/linux/compiler_types.h:416:25: note: in definition of macro '__compiletime_assert'
416 | prefix ## suffix(); \
| ^~~~~~
include/linux/compiler_types.h:435:9: note: in expansion of macro '_compiletime_assert'
435 | _compiletime_assert(condition, msg, __compiletime_assert_, __COUNTER__)
| ^~~~~~~~~~~~~~~~~~~
include/linux/build_bug.h:39:37: note: in expansion of macro 'compiletime_assert'
39 | #define BUILD_BUG_ON_MSG(cond, msg) compiletime_assert(!(cond), msg)
| ^~~~~~~~~~~~~~~~~~
include/linux/build_bug.h:50:9: note: in expansion of macro 'BUILD_BUG_ON_MSG'
50 | BUILD_BUG_ON_MSG(condition, "BUILD_BUG_ON failed: " #condition)
| ^~~~~~~~~~~~~~~~
lib/test_bitops.c:59:9: note: in expansion of macro 'BUILD_BUG_ON'
59 | BUILD_BUG_ON(!__builtin_constant_p(__test_expr)); \
| ^~~~~~~~~~~~
lib/test_bitops.c:74:9: note: in expansion of macro 'test_const_eval'
74 | test_const_eval(__ffs(BIT(n)) == n);
| ^~~~~~~~~~~~~~~
vim +/__compiletime_assert_183 +435 include/linux/compiler_types.h
eb5c2d4b45e3d2 Will Deacon 2020-07-21 421
eb5c2d4b45e3d2 Will Deacon 2020-07-21 422 #define _compiletime_assert(condition, msg, prefix, suffix) \
eb5c2d4b45e3d2 Will Deacon 2020-07-21 423 __compiletime_assert(condition, msg, prefix, suffix)
eb5c2d4b45e3d2 Will Deacon 2020-07-21 424
eb5c2d4b45e3d2 Will Deacon 2020-07-21 425 /**
eb5c2d4b45e3d2 Will Deacon 2020-07-21 426 * compiletime_assert - break build and emit msg if condition is false
eb5c2d4b45e3d2 Will Deacon 2020-07-21 427 * @condition: a compile-time constant condition to check
eb5c2d4b45e3d2 Will Deacon 2020-07-21 428 * @msg: a message to emit if condition is false
eb5c2d4b45e3d2 Will Deacon 2020-07-21 429 *
eb5c2d4b45e3d2 Will Deacon 2020-07-21 430 * In tradition of POSIX assert, this macro will break the build if the
eb5c2d4b45e3d2 Will Deacon 2020-07-21 431 * supplied condition is *false*, emitting the supplied error message if the
eb5c2d4b45e3d2 Will Deacon 2020-07-21 432 * compiler has support to do so.
eb5c2d4b45e3d2 Will Deacon 2020-07-21 433 */
eb5c2d4b45e3d2 Will Deacon 2020-07-21 434 #define compiletime_assert(condition, msg) \
eb5c2d4b45e3d2 Will Deacon 2020-07-21 @435 _compiletime_assert(condition, msg, __compiletime_assert_, __COUNTER__)
eb5c2d4b45e3d2 Will Deacon 2020-07-21 436
--
0-DAY CI Kernel Test Service
https://github.com/intel/lkp-tests/wiki
^ permalink raw reply [flat|nested] 2+ messages in thread
* Re: [PATCH v2] lib: test_bitops: add compile-time optimization/evaluations assertions
[not found] <20231130102717.1297492-1-mailhol.vincent@wanadoo.fr>
2023-11-30 16:25 ` [PATCH v2] lib: test_bitops: add compile-time optimization/evaluations assertions kernel test robot
@ 2023-12-06 13:27 ` kernel test robot
1 sibling, 0 replies; 2+ messages in thread
From: kernel test robot @ 2023-12-06 13:27 UTC (permalink / raw)
To: Vincent Mailhol, Andrew Morton, linux-kernel, Yury Norov
Cc: llvm, oe-kbuild-all, Linux Memory Management List,
Vincent Mailhol, Nick Desaulniers, Douglas Anderson, Kees Cook,
Petr Mladek, Randy Dunlap, Zhaoyang Huang, Geert Uytterhoeven,
Marco Elver
Hi Vincent,
kernel test robot noticed the following build errors:
[auto build test ERROR on akpm-mm/mm-everything]
[also build test ERROR on linus/master v6.7-rc4 next-20231206]
[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#_base_tree_information]
url: https://github.com/intel-lab-lkp/linux/commits/Vincent-Mailhol/lib-test_bitops-add-compile-time-optimization-evaluations-assertions/20231130-182837
base: https://git.kernel.org/pub/scm/linux/kernel/git/akpm/mm.git mm-everything
patch link: https://lore.kernel.org/r/20231130102717.1297492-1-mailhol.vincent%40wanadoo.fr
patch subject: [PATCH v2] lib: test_bitops: add compile-time optimization/evaluations assertions
config: hexagon-allmodconfig (https://download.01.org/0day-ci/archive/20231206/202312062158.60c1e6yt-lkp@intel.com/config)
compiler: clang version 17.0.0 (https://github.com/llvm/llvm-project.git 4a5ac14ee968ff0ad5d2cc1ffa0299048db4c88a)
reproduce (this is a W=1 build): (https://download.01.org/0day-ci/archive/20231206/202312062158.60c1e6yt-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/202312062158.60c1e6yt-lkp@intel.com/
All errors (new ones prefixed by >>):
>> lib/test_bitops.c:74:2: error: call to '__compiletime_assert_178' declared with 'error' attribute: BUILD_BUG_ON failed: !__builtin_constant_p(__test_expr)
74 | test_const_eval(__ffs(BIT(n)) == n);
| ^
lib/test_bitops.c:59:2: note: expanded from macro 'test_const_eval'
59 | BUILD_BUG_ON(!__builtin_constant_p(__test_expr)); \
| ^
include/linux/build_bug.h:50:2: note: expanded from macro 'BUILD_BUG_ON'
50 | BUILD_BUG_ON_MSG(condition, "BUILD_BUG_ON failed: " #condition)
| ^
include/linux/build_bug.h:39:37: note: expanded from macro 'BUILD_BUG_ON_MSG'
39 | #define BUILD_BUG_ON_MSG(cond, msg) compiletime_assert(!(cond), msg)
| ^
note: (skipping 1 expansions in backtrace; use -fmacro-backtrace-limit=0 to see all)
include/linux/compiler_types.h:423:2: note: expanded from macro '_compiletime_assert'
423 | __compiletime_assert(condition, msg, prefix, suffix)
| ^
include/linux/compiler_types.h:416:4: note: expanded from macro '__compiletime_assert'
416 | prefix ## suffix(); \
| ^
<scratch space>:18:1: note: expanded from here
18 | __compiletime_assert_178
| ^
1 error generated.
vim +74 lib/test_bitops.c
62
63 static void test_bitops_const_eval(void)
64 {
65 /*
66 * On any supported optimization level (-O2, -Os) and if
67 * invoked with a compile-time constant argument, the compiler
68 * must be able to fold into a constant expression all the bit
69 * find functions. Namely: __ffs(), ffs(), ffz(), __fls(),
70 * fls() and fls64(). Otherwise, trigger a build bug.
71 */
72 const int n = 10;
73
> 74 test_const_eval(__ffs(BIT(n)) == n);
75 test_const_eval(ffs(BIT(n)) == n + 1);
76 test_const_eval(ffz(~BIT(n)) == n);
77 test_const_eval(__fls(BIT(n)) == n);
78 test_const_eval(fls(BIT(n)) == n + 1);
79 test_const_eval(fls64(BIT_ULL(n)) == n + 1);
80 }
81
--
0-DAY CI Kernel Test Service
https://github.com/intel/lkp-tests/wiki
^ permalink raw reply [flat|nested] 2+ messages in thread
end of thread, other threads:[~2023-12-06 13:28 UTC | newest]
Thread overview: 2+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
[not found] <20231130102717.1297492-1-mailhol.vincent@wanadoo.fr>
2023-11-30 16:25 ` [PATCH v2] lib: test_bitops: add compile-time optimization/evaluations assertions kernel test robot
2023-12-06 13:27 ` 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