All of lore.kernel.org
 help / color / mirror / Atom feed
* [akpm-mm:mm-unstable 225/293] include/linux/compiler_types.h:397:45: error: call to '__compiletime_assert_311' declared with attribute error: BUILD_BUG_ON failed: ((16 + (16 - 3))-16) > -1
@ 2023-03-23 21:48 kernel test robot
  2023-03-24  1:07 ` Philip Li
  0 siblings, 1 reply; 2+ messages in thread
From: kernel test robot @ 2023-03-23 21:48 UTC (permalink / raw)
  To: Mike Rapoport (IBM)
  Cc: oe-kbuild-all, Andrew Morton, Linux Memory Management List,
	David Hildenbrand

Hi Mike,

FYI, the error/warning was bisected to this commit, please ignore it if it's irrelevant.

tree:   https://git.kernel.org/pub/scm/linux/kernel/git/akpm/mm.git mm-unstable
head:   51551d71edbc998fd8c8afa7312db3d270f5998e
commit: 03d7e648fa25961bb92e920e7962710aa72fb409 [225/293] loongarch: drop ranges for definition of ARCH_FORCE_MAX_ORDER
config: loongarch-buildonly-randconfig-r002-20230322 (https://download.01.org/0day-ci/archive/20230324/202303240542.vEBPNs2Q-lkp@intel.com/config)
compiler: loongarch64-linux-gcc (GCC) 12.1.0
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/akpm/mm.git/commit/?id=03d7e648fa25961bb92e920e7962710aa72fb409
        git remote add akpm-mm https://git.kernel.org/pub/scm/linux/kernel/git/akpm/mm.git
        git fetch --no-tags akpm-mm mm-unstable
        git checkout 03d7e648fa25961bb92e920e7962710aa72fb409
        # save the config file
        mkdir build_dir && cp config build_dir/.config
        COMPILER_INSTALL_PATH=$HOME/0day COMPILER=gcc-12.1.0 make.cross W=1 O=build_dir ARCH=loongarch olddefconfig
        COMPILER_INSTALL_PATH=$HOME/0day COMPILER=gcc-12.1.0 make.cross W=1 O=build_dir ARCH=loongarch SHELL=/bin/bash

If you fix the issue, kindly add following tag where applicable
| Reported-by: kernel test robot <lkp@intel.com>
| Link: https://lore.kernel.org/oe-kbuild-all/202303240542.vEBPNs2Q-lkp@intel.com/

All error/warnings (new ones prefixed by >>):

     886 |                 if (!valid_page && pageblock_aligned(low_pfn)) {
         |                                    ^~~~~~~~~~~~~~~~~
   mm/compaction.c: In function 'isolate_migratepages_range':
   include/linux/pageblock-flags.h:55:38: warning: left shift count is negative [-Wshift-count-negative]
      55 | #define pageblock_nr_pages      (1UL << pageblock_order)
         |                                      ^~
   include/uapi/linux/const.h:32:44: note: in definition of macro '__ALIGN_KERNEL_MASK'
      32 | #define __ALIGN_KERNEL_MASK(x, mask)    (((x) + (mask)) & ~(mask))
         |                                            ^
   include/linux/align.h:9:33: note: in expansion of macro '__ALIGN_KERNEL'
       9 | #define ALIGN_DOWN(x, a)        __ALIGN_KERNEL((x) - ((a) - 1), (a))
         |                                 ^~~~~~~~~~~~~~
   include/linux/pageblock-flags.h:58:41: note: in expansion of macro 'ALIGN_DOWN'
      58 | #define pageblock_start_pfn(pfn)        ALIGN_DOWN((pfn), pageblock_nr_pages)
         |                                         ^~~~~~~~~~
   include/linux/pageblock-flags.h:58:59: note: in expansion of macro 'pageblock_nr_pages'
      58 | #define pageblock_start_pfn(pfn)        ALIGN_DOWN((pfn), pageblock_nr_pages)
         |                                                           ^~~~~~~~~~~~~~~~~~
   mm/compaction.c:1218:27: note: in expansion of macro 'pageblock_start_pfn'
    1218 |         block_start_pfn = pageblock_start_pfn(pfn);
         |                           ^~~~~~~~~~~~~~~~~~~
   include/linux/pageblock-flags.h:55:38: warning: left shift count is negative [-Wshift-count-negative]
      55 | #define pageblock_nr_pages      (1UL << pageblock_order)
         |                                      ^~
   include/uapi/linux/const.h:32:50: note: in definition of macro '__ALIGN_KERNEL_MASK'
      32 | #define __ALIGN_KERNEL_MASK(x, mask)    (((x) + (mask)) & ~(mask))
         |                                                  ^~~~
   include/linux/align.h:9:33: note: in expansion of macro '__ALIGN_KERNEL'
       9 | #define ALIGN_DOWN(x, a)        __ALIGN_KERNEL((x) - ((a) - 1), (a))
         |                                 ^~~~~~~~~~~~~~
   include/linux/pageblock-flags.h:58:41: note: in expansion of macro 'ALIGN_DOWN'
      58 | #define pageblock_start_pfn(pfn)        ALIGN_DOWN((pfn), pageblock_nr_pages)
         |                                         ^~~~~~~~~~
   include/linux/pageblock-flags.h:58:59: note: in expansion of macro 'pageblock_nr_pages'
      58 | #define pageblock_start_pfn(pfn)        ALIGN_DOWN((pfn), pageblock_nr_pages)
         |                                                           ^~~~~~~~~~~~~~~~~~
   mm/compaction.c:1218:27: note: in expansion of macro 'pageblock_start_pfn'
    1218 |         block_start_pfn = pageblock_start_pfn(pfn);
         |                           ^~~~~~~~~~~~~~~~~~~
   include/linux/pageblock-flags.h:55:38: warning: left shift count is negative [-Wshift-count-negative]
      55 | #define pageblock_nr_pages      (1UL << pageblock_order)
         |                                      ^~
   include/uapi/linux/const.h:32:61: note: in definition of macro '__ALIGN_KERNEL_MASK'
      32 | #define __ALIGN_KERNEL_MASK(x, mask)    (((x) + (mask)) & ~(mask))
         |                                                             ^~~~
   include/linux/align.h:9:33: note: in expansion of macro '__ALIGN_KERNEL'
       9 | #define ALIGN_DOWN(x, a)        __ALIGN_KERNEL((x) - ((a) - 1), (a))
         |                                 ^~~~~~~~~~~~~~
   include/linux/pageblock-flags.h:58:41: note: in expansion of macro 'ALIGN_DOWN'
      58 | #define pageblock_start_pfn(pfn)        ALIGN_DOWN((pfn), pageblock_nr_pages)
         |                                         ^~~~~~~~~~
   include/linux/pageblock-flags.h:58:59: note: in expansion of macro 'pageblock_nr_pages'
      58 | #define pageblock_start_pfn(pfn)        ALIGN_DOWN((pfn), pageblock_nr_pages)
         |                                                           ^~~~~~~~~~~~~~~~~~
   mm/compaction.c:1218:27: note: in expansion of macro 'pageblock_start_pfn'
    1218 |         block_start_pfn = pageblock_start_pfn(pfn);
         |                           ^~~~~~~~~~~~~~~~~~~
   include/linux/pageblock-flags.h:55:38: warning: left shift count is negative [-Wshift-count-negative]
      55 | #define pageblock_nr_pages      (1UL << pageblock_order)
         |                                      ^~
   include/uapi/linux/const.h:32:50: note: in definition of macro '__ALIGN_KERNEL_MASK'
      32 | #define __ALIGN_KERNEL_MASK(x, mask)    (((x) + (mask)) & ~(mask))
         |                                                  ^~~~
   include/linux/align.h:8:33: note: in expansion of macro '__ALIGN_KERNEL'
       8 | #define ALIGN(x, a)             __ALIGN_KERNEL((x), (a))
         |                                 ^~~~~~~~~~~~~~
   include/linux/pageblock-flags.h:59:41: note: in expansion of macro 'ALIGN'
      59 | #define pageblock_end_pfn(pfn)          ALIGN((pfn) + 1, pageblock_nr_pages)
         |                                         ^~~~~
   include/linux/pageblock-flags.h:59:58: note: in expansion of macro 'pageblock_nr_pages'
      59 | #define pageblock_end_pfn(pfn)          ALIGN((pfn) + 1, pageblock_nr_pages)
         |                                                          ^~~~~~~~~~~~~~~~~~
   mm/compaction.c:1221:25: note: in expansion of macro 'pageblock_end_pfn'
    1221 |         block_end_pfn = pageblock_end_pfn(pfn);
         |                         ^~~~~~~~~~~~~~~~~
   include/linux/pageblock-flags.h:55:38: warning: left shift count is negative [-Wshift-count-negative]
      55 | #define pageblock_nr_pages      (1UL << pageblock_order)
         |                                      ^~
   include/uapi/linux/const.h:32:61: note: in definition of macro '__ALIGN_KERNEL_MASK'
      32 | #define __ALIGN_KERNEL_MASK(x, mask)    (((x) + (mask)) & ~(mask))
         |                                                             ^~~~
   include/linux/align.h:8:33: note: in expansion of macro '__ALIGN_KERNEL'
       8 | #define ALIGN(x, a)             __ALIGN_KERNEL((x), (a))
         |                                 ^~~~~~~~~~~~~~
   include/linux/pageblock-flags.h:59:41: note: in expansion of macro 'ALIGN'
      59 | #define pageblock_end_pfn(pfn)          ALIGN((pfn) + 1, pageblock_nr_pages)
         |                                         ^~~~~
   include/linux/pageblock-flags.h:59:58: note: in expansion of macro 'pageblock_nr_pages'
      59 | #define pageblock_end_pfn(pfn)          ALIGN((pfn) + 1, pageblock_nr_pages)
         |                                                          ^~~~~~~~~~~~~~~~~~
   mm/compaction.c:1221:25: note: in expansion of macro 'pageblock_end_pfn'
    1221 |         block_end_pfn = pageblock_end_pfn(pfn);
         |                         ^~~~~~~~~~~~~~~~~
   include/linux/pageblock-flags.h:55:38: warning: left shift count is negative [-Wshift-count-negative]
      55 | #define pageblock_nr_pages      (1UL << pageblock_order)
         |                                      ^~
   mm/compaction.c:1225:50: note: in expansion of macro 'pageblock_nr_pages'
    1225 |                                 block_end_pfn += pageblock_nr_pages) {
         |                                                  ^~~~~~~~~~~~~~~~~~
   mm/compaction.c: In function 'compact_scanners_met':
>> mm/compaction.c:1308:30: warning: right shift count is negative [-Wshift-count-negative]
    1308 |         return (cc->free_pfn >> pageblock_order)
         |                              ^~
   mm/compaction.c:1309:37: warning: right shift count is negative [-Wshift-count-negative]
    1309 |                 <= (cc->migrate_pfn >> pageblock_order);
         |                                     ^~
   In file included from include/linux/kernel.h:26:
   mm/compaction.c: In function 'fast_isolate_around':
   include/linux/pageblock-flags.h:55:38: warning: left shift count is negative [-Wshift-count-negative]
      55 | #define pageblock_nr_pages      (1UL << pageblock_order)
         |                                      ^~
   include/linux/minmax.h:28:27: note: in definition of macro '__cmp'
      28 | #define __cmp(x, y, op) ((x) op (y) ? (x) : (y))
         |                           ^
   include/linux/minmax.h:74:25: note: in expansion of macro '__careful_cmp'
      74 | #define max(x, y)       __careful_cmp(x, y, >)
         |                         ^~~~~~~~~~~~~
   mm/compaction.c:1360:21: note: in expansion of macro 'max'
    1360 |         start_pfn = max(pageblock_start_pfn(pfn), cc->zone->zone_start_pfn);
         |                     ^~~
   include/uapi/linux/const.h:31:41: note: in expansion of macro '__ALIGN_KERNEL_MASK'
      31 | #define __ALIGN_KERNEL(x, a)            __ALIGN_KERNEL_MASK(x, (typeof(x))(a) - 1)
         |                                         ^~~~~~~~~~~~~~~~~~~
   include/linux/align.h:9:33: note: in expansion of macro '__ALIGN_KERNEL'
       9 | #define ALIGN_DOWN(x, a)        __ALIGN_KERNEL((x) - ((a) - 1), (a))
         |                                 ^~~~~~~~~~~~~~
   include/linux/pageblock-flags.h:58:41: note: in expansion of macro 'ALIGN_DOWN'
      58 | #define pageblock_start_pfn(pfn)        ALIGN_DOWN((pfn), pageblock_nr_pages)
         |                                         ^~~~~~~~~~
   include/linux/pageblock-flags.h:58:59: note: in expansion of macro 'pageblock_nr_pages'
      58 | #define pageblock_start_pfn(pfn)        ALIGN_DOWN((pfn), pageblock_nr_pages)
         |                                                           ^~~~~~~~~~~~~~~~~~
   mm/compaction.c:1360:25: note: in expansion of macro 'pageblock_start_pfn'
    1360 |         start_pfn = max(pageblock_start_pfn(pfn), cc->zone->zone_start_pfn);
         |                         ^~~~~~~~~~~~~~~~~~~
   include/linux/pageblock-flags.h:55:38: warning: left shift count is negative [-Wshift-count-negative]
      55 | #define pageblock_nr_pages      (1UL << pageblock_order)
         |                                      ^~
   include/linux/minmax.h:28:27: note: in definition of macro '__cmp'
      28 | #define __cmp(x, y, op) ((x) op (y) ? (x) : (y))
         |                           ^
   include/linux/minmax.h:74:25: note: in expansion of macro '__careful_cmp'
      74 | #define max(x, y)       __careful_cmp(x, y, >)
         |                         ^~~~~~~~~~~~~
   mm/compaction.c:1360:21: note: in expansion of macro 'max'
    1360 |         start_pfn = max(pageblock_start_pfn(pfn), cc->zone->zone_start_pfn);
         |                     ^~~
   include/uapi/linux/const.h:31:41: note: in expansion of macro '__ALIGN_KERNEL_MASK'
      31 | #define __ALIGN_KERNEL(x, a)            __ALIGN_KERNEL_MASK(x, (typeof(x))(a) - 1)
         |                                         ^~~~~~~~~~~~~~~~~~~
   include/linux/align.h:9:33: note: in expansion of macro '__ALIGN_KERNEL'
       9 | #define ALIGN_DOWN(x, a)        __ALIGN_KERNEL((x) - ((a) - 1), (a))
         |                                 ^~~~~~~~~~~~~~
   include/linux/pageblock-flags.h:58:41: note: in expansion of macro 'ALIGN_DOWN'
      58 | #define pageblock_start_pfn(pfn)        ALIGN_DOWN((pfn), pageblock_nr_pages)
         |                                         ^~~~~~~~~~
   include/linux/pageblock-flags.h:58:59: note: in expansion of macro 'pageblock_nr_pages'
      58 | #define pageblock_start_pfn(pfn)        ALIGN_DOWN((pfn), pageblock_nr_pages)
         |                                                           ^~~~~~~~~~~~~~~~~~
   mm/compaction.c:1360:25: note: in expansion of macro 'pageblock_start_pfn'
    1360 |         start_pfn = max(pageblock_start_pfn(pfn), cc->zone->zone_start_pfn);
         |                         ^~~~~~~~~~~~~~~~~~~
   include/linux/pageblock-flags.h:55:38: warning: left shift count is negative [-Wshift-count-negative]
      55 | #define pageblock_nr_pages      (1UL << pageblock_order)
         |                                      ^~
   include/linux/minmax.h:28:27: note: in definition of macro '__cmp'
      28 | #define __cmp(x, y, op) ((x) op (y) ? (x) : (y))
         |                           ^
   include/linux/minmax.h:74:25: note: in expansion of macro '__careful_cmp'
      74 | #define max(x, y)       __careful_cmp(x, y, >)
         |                         ^~~~~~~~~~~~~
   mm/compaction.c:1360:21: note: in expansion of macro 'max'
    1360 |         start_pfn = max(pageblock_start_pfn(pfn), cc->zone->zone_start_pfn);
         |                     ^~~
   include/uapi/linux/const.h:31:41: note: in expansion of macro '__ALIGN_KERNEL_MASK'
      31 | #define __ALIGN_KERNEL(x, a)            __ALIGN_KERNEL_MASK(x, (typeof(x))(a) - 1)
         |                                         ^~~~~~~~~~~~~~~~~~~
   include/linux/align.h:9:33: note: in expansion of macro '__ALIGN_KERNEL'
       9 | #define ALIGN_DOWN(x, a)        __ALIGN_KERNEL((x) - ((a) - 1), (a))
         |                                 ^~~~~~~~~~~~~~
   include/linux/pageblock-flags.h:58:41: note: in expansion of macro 'ALIGN_DOWN'
      58 | #define pageblock_start_pfn(pfn)        ALIGN_DOWN((pfn), pageblock_nr_pages)
         |                                         ^~~~~~~~~~
   include/linux/pageblock-flags.h:58:59: note: in expansion of macro 'pageblock_nr_pages'
      58 | #define pageblock_start_pfn(pfn)        ALIGN_DOWN((pfn), pageblock_nr_pages)
         |                                                           ^~~~~~~~~~~~~~~~~~
   mm/compaction.c:1360:25: note: in expansion of macro 'pageblock_start_pfn'
    1360 |         start_pfn = max(pageblock_start_pfn(pfn), cc->zone->zone_start_pfn);
         |                         ^~~~~~~~~~~~~~~~~~~
   include/linux/pageblock-flags.h:55:38: warning: left shift count is negative [-Wshift-count-negative]
      55 | #define pageblock_nr_pages      (1UL << pageblock_order)
         |                                      ^~
   include/linux/minmax.h:28:40: note: in definition of macro '__cmp'
      28 | #define __cmp(x, y, op) ((x) op (y) ? (x) : (y))
         |                                        ^
   include/linux/minmax.h:74:25: note: in expansion of macro '__careful_cmp'
      74 | #define max(x, y)       __careful_cmp(x, y, >)
         |                         ^~~~~~~~~~~~~
   mm/compaction.c:1360:21: note: in expansion of macro 'max'
    1360 |         start_pfn = max(pageblock_start_pfn(pfn), cc->zone->zone_start_pfn);
         |                     ^~~
--
   In file included from include/linux/pgtable.h:6,
                    from include/linux/mm.h:29,
                    from mm/huge_memory.c:8:
   include/linux/swapops.h: In function 'swp_entry_to_pmd':
   arch/loongarch/include/asm/pgtable.h:277:34: warning: missing braces around initializer [-Wmissing-braces]
     277 | #define __swp_entry_to_pmd(x)   ((pmd_t) { (x).val | _PAGE_HUGE })
         |                                  ^
   include/linux/swapops.h:519:16: note: in expansion of macro '__swp_entry_to_pmd'
     519 |         return __swp_entry_to_pmd(arch_entry);
         |                ^~~~~~~~~~~~~~~~~~
   In file included from <command-line>:
   mm/huge_memory.c: In function 'hugepage_init':
>> include/linux/compiler_types.h:397:45: error: call to '__compiletime_assert_311' declared with attribute error: BUILD_BUG_ON failed: ((16 + (16 - 3))-16) > -1
     397 |         _compiletime_assert(condition, msg, __compiletime_assert_, __COUNTER__)
         |                                             ^
   include/linux/compiler_types.h:378:25: note: in definition of macro '__compiletime_assert'
     378 |                         prefix ## suffix();                             \
         |                         ^~~~~~
   include/linux/compiler_types.h:397:9: note: in expansion of macro '_compiletime_assert'
     397 |         _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)
         |         ^~~~~~~~~~~~~~~~
   include/linux/bug.h:24:25: note: in expansion of macro 'BUILD_BUG_ON'
      24 |                         BUILD_BUG_ON(cond);             \
         |                         ^~~~~~~~~~~~
   mm/huge_memory.c:470:9: note: in expansion of macro 'MAYBE_BUILD_BUG_ON'
     470 |         MAYBE_BUILD_BUG_ON(HPAGE_PMD_ORDER > MAX_ORDER);
         |         ^~~~~~~~~~~~~~~~~~


vim +/__compiletime_assert_311 +397 include/linux/compiler_types.h

eb5c2d4b45e3d2 Will Deacon 2020-07-21  383  
eb5c2d4b45e3d2 Will Deacon 2020-07-21  384  #define _compiletime_assert(condition, msg, prefix, suffix) \
eb5c2d4b45e3d2 Will Deacon 2020-07-21  385  	__compiletime_assert(condition, msg, prefix, suffix)
eb5c2d4b45e3d2 Will Deacon 2020-07-21  386  
eb5c2d4b45e3d2 Will Deacon 2020-07-21  387  /**
eb5c2d4b45e3d2 Will Deacon 2020-07-21  388   * compiletime_assert - break build and emit msg if condition is false
eb5c2d4b45e3d2 Will Deacon 2020-07-21  389   * @condition: a compile-time constant condition to check
eb5c2d4b45e3d2 Will Deacon 2020-07-21  390   * @msg:       a message to emit if condition is false
eb5c2d4b45e3d2 Will Deacon 2020-07-21  391   *
eb5c2d4b45e3d2 Will Deacon 2020-07-21  392   * In tradition of POSIX assert, this macro will break the build if the
eb5c2d4b45e3d2 Will Deacon 2020-07-21  393   * supplied condition is *false*, emitting the supplied error message if the
eb5c2d4b45e3d2 Will Deacon 2020-07-21  394   * compiler has support to do so.
eb5c2d4b45e3d2 Will Deacon 2020-07-21  395   */
eb5c2d4b45e3d2 Will Deacon 2020-07-21  396  #define compiletime_assert(condition, msg) \
eb5c2d4b45e3d2 Will Deacon 2020-07-21 @397  	_compiletime_assert(condition, msg, __compiletime_assert_, __COUNTER__)
eb5c2d4b45e3d2 Will Deacon 2020-07-21  398  

:::::: The code at line 397 was first introduced by commit
:::::: eb5c2d4b45e3d2d5d052ea6b8f1463976b1020d5 compiler.h: Move compiletime_assert() macros into compiler_types.h

:::::: TO: Will Deacon <will@kernel.org>
:::::: CC: Will Deacon <will@kernel.org>

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

^ permalink raw reply	[flat|nested] 2+ messages in thread

* Re: [akpm-mm:mm-unstable 225/293] include/linux/compiler_types.h:397:45: error: call to '__compiletime_assert_311' declared with attribute error: BUILD_BUG_ON failed: ((16 + (16 - 3))-16) > -1
  2023-03-23 21:48 [akpm-mm:mm-unstable 225/293] include/linux/compiler_types.h:397:45: error: call to '__compiletime_assert_311' declared with attribute error: BUILD_BUG_ON failed: ((16 + (16 - 3))-16) > -1 kernel test robot
@ 2023-03-24  1:07 ` Philip Li
  0 siblings, 0 replies; 2+ messages in thread
From: Philip Li @ 2023-03-24  1:07 UTC (permalink / raw)
  To: kernel test robot
  Cc: Mike Rapoport (IBM),
	oe-kbuild-all, Andrew Morton, Linux Memory Management List,
	David Hildenbrand

On Fri, Mar 24, 2023 at 05:48:59AM +0800, kernel test robot wrote:
> Hi Mike,
> 
> FYI, the error/warning was bisected to this commit, please ignore it if it's irrelevant.

Kindly ignore this false positive, it should be related to the bug in bot, we will
resolve it asap.

> 
> tree:   https://git.kernel.org/pub/scm/linux/kernel/git/akpm/mm.git mm-unstable
> head:   51551d71edbc998fd8c8afa7312db3d270f5998e
> commit: 03d7e648fa25961bb92e920e7962710aa72fb409 [225/293] loongarch: drop ranges for definition of ARCH_FORCE_MAX_ORDER
> config: loongarch-buildonly-randconfig-r002-20230322 (https://download.01.org/0day-ci/archive/20230324/202303240542.vEBPNs2Q-lkp@intel.com/config)
> compiler: loongarch64-linux-gcc (GCC) 12.1.0
> 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/akpm/mm.git/commit/?id=03d7e648fa25961bb92e920e7962710aa72fb409
>         git remote add akpm-mm https://git.kernel.org/pub/scm/linux/kernel/git/akpm/mm.git
>         git fetch --no-tags akpm-mm mm-unstable
>         git checkout 03d7e648fa25961bb92e920e7962710aa72fb409
>         # save the config file
>         mkdir build_dir && cp config build_dir/.config
>         COMPILER_INSTALL_PATH=$HOME/0day COMPILER=gcc-12.1.0 make.cross W=1 O=build_dir ARCH=loongarch olddefconfig
>         COMPILER_INSTALL_PATH=$HOME/0day COMPILER=gcc-12.1.0 make.cross W=1 O=build_dir ARCH=loongarch SHELL=/bin/bash
> 
> If you fix the issue, kindly add following tag where applicable
> | Reported-by: kernel test robot <lkp@intel.com>
> | Link: https://lore.kernel.org/oe-kbuild-all/202303240542.vEBPNs2Q-lkp@intel.com/
> 
> All error/warnings (new ones prefixed by >>):
> 
>      886 |                 if (!valid_page && pageblock_aligned(low_pfn)) {
>          |                                    ^~~~~~~~~~~~~~~~~
>    mm/compaction.c: In function 'isolate_migratepages_range':
>    include/linux/pageblock-flags.h:55:38: warning: left shift count is negative [-Wshift-count-negative]
>       55 | #define pageblock_nr_pages      (1UL << pageblock_order)
>          |                                      ^~
>    include/uapi/linux/const.h:32:44: note: in definition of macro '__ALIGN_KERNEL_MASK'
>       32 | #define __ALIGN_KERNEL_MASK(x, mask)    (((x) + (mask)) & ~(mask))
>          |                                            ^
>    include/linux/align.h:9:33: note: in expansion of macro '__ALIGN_KERNEL'
>        9 | #define ALIGN_DOWN(x, a)        __ALIGN_KERNEL((x) - ((a) - 1), (a))
>          |                                 ^~~~~~~~~~~~~~
>    include/linux/pageblock-flags.h:58:41: note: in expansion of macro 'ALIGN_DOWN'
>       58 | #define pageblock_start_pfn(pfn)        ALIGN_DOWN((pfn), pageblock_nr_pages)
>          |                                         ^~~~~~~~~~
>    include/linux/pageblock-flags.h:58:59: note: in expansion of macro 'pageblock_nr_pages'
>       58 | #define pageblock_start_pfn(pfn)        ALIGN_DOWN((pfn), pageblock_nr_pages)
>          |                                                           ^~~~~~~~~~~~~~~~~~
>    mm/compaction.c:1218:27: note: in expansion of macro 'pageblock_start_pfn'
>     1218 |         block_start_pfn = pageblock_start_pfn(pfn);
>          |                           ^~~~~~~~~~~~~~~~~~~
>    include/linux/pageblock-flags.h:55:38: warning: left shift count is negative [-Wshift-count-negative]
>       55 | #define pageblock_nr_pages      (1UL << pageblock_order)
>          |                                      ^~
>    include/uapi/linux/const.h:32:50: note: in definition of macro '__ALIGN_KERNEL_MASK'
>       32 | #define __ALIGN_KERNEL_MASK(x, mask)    (((x) + (mask)) & ~(mask))
>          |                                                  ^~~~
>    include/linux/align.h:9:33: note: in expansion of macro '__ALIGN_KERNEL'
>        9 | #define ALIGN_DOWN(x, a)        __ALIGN_KERNEL((x) - ((a) - 1), (a))
>          |                                 ^~~~~~~~~~~~~~
>    include/linux/pageblock-flags.h:58:41: note: in expansion of macro 'ALIGN_DOWN'
>       58 | #define pageblock_start_pfn(pfn)        ALIGN_DOWN((pfn), pageblock_nr_pages)
>          |                                         ^~~~~~~~~~
>    include/linux/pageblock-flags.h:58:59: note: in expansion of macro 'pageblock_nr_pages'
>       58 | #define pageblock_start_pfn(pfn)        ALIGN_DOWN((pfn), pageblock_nr_pages)
>          |                                                           ^~~~~~~~~~~~~~~~~~
>    mm/compaction.c:1218:27: note: in expansion of macro 'pageblock_start_pfn'
>     1218 |         block_start_pfn = pageblock_start_pfn(pfn);
>          |                           ^~~~~~~~~~~~~~~~~~~
>    include/linux/pageblock-flags.h:55:38: warning: left shift count is negative [-Wshift-count-negative]
>       55 | #define pageblock_nr_pages      (1UL << pageblock_order)
>          |                                      ^~
>    include/uapi/linux/const.h:32:61: note: in definition of macro '__ALIGN_KERNEL_MASK'
>       32 | #define __ALIGN_KERNEL_MASK(x, mask)    (((x) + (mask)) & ~(mask))
>          |                                                             ^~~~
>    include/linux/align.h:9:33: note: in expansion of macro '__ALIGN_KERNEL'
>        9 | #define ALIGN_DOWN(x, a)        __ALIGN_KERNEL((x) - ((a) - 1), (a))
>          |                                 ^~~~~~~~~~~~~~
>    include/linux/pageblock-flags.h:58:41: note: in expansion of macro 'ALIGN_DOWN'
>       58 | #define pageblock_start_pfn(pfn)        ALIGN_DOWN((pfn), pageblock_nr_pages)
>          |                                         ^~~~~~~~~~
>    include/linux/pageblock-flags.h:58:59: note: in expansion of macro 'pageblock_nr_pages'
>       58 | #define pageblock_start_pfn(pfn)        ALIGN_DOWN((pfn), pageblock_nr_pages)
>          |                                                           ^~~~~~~~~~~~~~~~~~
>    mm/compaction.c:1218:27: note: in expansion of macro 'pageblock_start_pfn'
>     1218 |         block_start_pfn = pageblock_start_pfn(pfn);
>          |                           ^~~~~~~~~~~~~~~~~~~
>    include/linux/pageblock-flags.h:55:38: warning: left shift count is negative [-Wshift-count-negative]
>       55 | #define pageblock_nr_pages      (1UL << pageblock_order)
>          |                                      ^~
>    include/uapi/linux/const.h:32:50: note: in definition of macro '__ALIGN_KERNEL_MASK'
>       32 | #define __ALIGN_KERNEL_MASK(x, mask)    (((x) + (mask)) & ~(mask))
>          |                                                  ^~~~
>    include/linux/align.h:8:33: note: in expansion of macro '__ALIGN_KERNEL'
>        8 | #define ALIGN(x, a)             __ALIGN_KERNEL((x), (a))
>          |                                 ^~~~~~~~~~~~~~
>    include/linux/pageblock-flags.h:59:41: note: in expansion of macro 'ALIGN'
>       59 | #define pageblock_end_pfn(pfn)          ALIGN((pfn) + 1, pageblock_nr_pages)
>          |                                         ^~~~~
>    include/linux/pageblock-flags.h:59:58: note: in expansion of macro 'pageblock_nr_pages'
>       59 | #define pageblock_end_pfn(pfn)          ALIGN((pfn) + 1, pageblock_nr_pages)
>          |                                                          ^~~~~~~~~~~~~~~~~~
>    mm/compaction.c:1221:25: note: in expansion of macro 'pageblock_end_pfn'
>     1221 |         block_end_pfn = pageblock_end_pfn(pfn);
>          |                         ^~~~~~~~~~~~~~~~~
>    include/linux/pageblock-flags.h:55:38: warning: left shift count is negative [-Wshift-count-negative]
>       55 | #define pageblock_nr_pages      (1UL << pageblock_order)
>          |                                      ^~
>    include/uapi/linux/const.h:32:61: note: in definition of macro '__ALIGN_KERNEL_MASK'
>       32 | #define __ALIGN_KERNEL_MASK(x, mask)    (((x) + (mask)) & ~(mask))
>          |                                                             ^~~~
>    include/linux/align.h:8:33: note: in expansion of macro '__ALIGN_KERNEL'
>        8 | #define ALIGN(x, a)             __ALIGN_KERNEL((x), (a))
>          |                                 ^~~~~~~~~~~~~~
>    include/linux/pageblock-flags.h:59:41: note: in expansion of macro 'ALIGN'
>       59 | #define pageblock_end_pfn(pfn)          ALIGN((pfn) + 1, pageblock_nr_pages)
>          |                                         ^~~~~
>    include/linux/pageblock-flags.h:59:58: note: in expansion of macro 'pageblock_nr_pages'
>       59 | #define pageblock_end_pfn(pfn)          ALIGN((pfn) + 1, pageblock_nr_pages)
>          |                                                          ^~~~~~~~~~~~~~~~~~
>    mm/compaction.c:1221:25: note: in expansion of macro 'pageblock_end_pfn'
>     1221 |         block_end_pfn = pageblock_end_pfn(pfn);
>          |                         ^~~~~~~~~~~~~~~~~
>    include/linux/pageblock-flags.h:55:38: warning: left shift count is negative [-Wshift-count-negative]
>       55 | #define pageblock_nr_pages      (1UL << pageblock_order)
>          |                                      ^~
>    mm/compaction.c:1225:50: note: in expansion of macro 'pageblock_nr_pages'
>     1225 |                                 block_end_pfn += pageblock_nr_pages) {
>          |                                                  ^~~~~~~~~~~~~~~~~~
>    mm/compaction.c: In function 'compact_scanners_met':
> >> mm/compaction.c:1308:30: warning: right shift count is negative [-Wshift-count-negative]
>     1308 |         return (cc->free_pfn >> pageblock_order)
>          |                              ^~
>    mm/compaction.c:1309:37: warning: right shift count is negative [-Wshift-count-negative]
>     1309 |                 <= (cc->migrate_pfn >> pageblock_order);
>          |                                     ^~
>    In file included from include/linux/kernel.h:26:
>    mm/compaction.c: In function 'fast_isolate_around':
>    include/linux/pageblock-flags.h:55:38: warning: left shift count is negative [-Wshift-count-negative]
>       55 | #define pageblock_nr_pages      (1UL << pageblock_order)
>          |                                      ^~
>    include/linux/minmax.h:28:27: note: in definition of macro '__cmp'
>       28 | #define __cmp(x, y, op) ((x) op (y) ? (x) : (y))
>          |                           ^
>    include/linux/minmax.h:74:25: note: in expansion of macro '__careful_cmp'
>       74 | #define max(x, y)       __careful_cmp(x, y, >)
>          |                         ^~~~~~~~~~~~~
>    mm/compaction.c:1360:21: note: in expansion of macro 'max'
>     1360 |         start_pfn = max(pageblock_start_pfn(pfn), cc->zone->zone_start_pfn);
>          |                     ^~~
>    include/uapi/linux/const.h:31:41: note: in expansion of macro '__ALIGN_KERNEL_MASK'
>       31 | #define __ALIGN_KERNEL(x, a)            __ALIGN_KERNEL_MASK(x, (typeof(x))(a) - 1)
>          |                                         ^~~~~~~~~~~~~~~~~~~
>    include/linux/align.h:9:33: note: in expansion of macro '__ALIGN_KERNEL'
>        9 | #define ALIGN_DOWN(x, a)        __ALIGN_KERNEL((x) - ((a) - 1), (a))
>          |                                 ^~~~~~~~~~~~~~
>    include/linux/pageblock-flags.h:58:41: note: in expansion of macro 'ALIGN_DOWN'
>       58 | #define pageblock_start_pfn(pfn)        ALIGN_DOWN((pfn), pageblock_nr_pages)
>          |                                         ^~~~~~~~~~
>    include/linux/pageblock-flags.h:58:59: note: in expansion of macro 'pageblock_nr_pages'
>       58 | #define pageblock_start_pfn(pfn)        ALIGN_DOWN((pfn), pageblock_nr_pages)
>          |                                                           ^~~~~~~~~~~~~~~~~~
>    mm/compaction.c:1360:25: note: in expansion of macro 'pageblock_start_pfn'
>     1360 |         start_pfn = max(pageblock_start_pfn(pfn), cc->zone->zone_start_pfn);
>          |                         ^~~~~~~~~~~~~~~~~~~
>    include/linux/pageblock-flags.h:55:38: warning: left shift count is negative [-Wshift-count-negative]
>       55 | #define pageblock_nr_pages      (1UL << pageblock_order)
>          |                                      ^~
>    include/linux/minmax.h:28:27: note: in definition of macro '__cmp'
>       28 | #define __cmp(x, y, op) ((x) op (y) ? (x) : (y))
>          |                           ^
>    include/linux/minmax.h:74:25: note: in expansion of macro '__careful_cmp'
>       74 | #define max(x, y)       __careful_cmp(x, y, >)
>          |                         ^~~~~~~~~~~~~
>    mm/compaction.c:1360:21: note: in expansion of macro 'max'
>     1360 |         start_pfn = max(pageblock_start_pfn(pfn), cc->zone->zone_start_pfn);
>          |                     ^~~
>    include/uapi/linux/const.h:31:41: note: in expansion of macro '__ALIGN_KERNEL_MASK'
>       31 | #define __ALIGN_KERNEL(x, a)            __ALIGN_KERNEL_MASK(x, (typeof(x))(a) - 1)
>          |                                         ^~~~~~~~~~~~~~~~~~~
>    include/linux/align.h:9:33: note: in expansion of macro '__ALIGN_KERNEL'
>        9 | #define ALIGN_DOWN(x, a)        __ALIGN_KERNEL((x) - ((a) - 1), (a))
>          |                                 ^~~~~~~~~~~~~~
>    include/linux/pageblock-flags.h:58:41: note: in expansion of macro 'ALIGN_DOWN'
>       58 | #define pageblock_start_pfn(pfn)        ALIGN_DOWN((pfn), pageblock_nr_pages)
>          |                                         ^~~~~~~~~~
>    include/linux/pageblock-flags.h:58:59: note: in expansion of macro 'pageblock_nr_pages'
>       58 | #define pageblock_start_pfn(pfn)        ALIGN_DOWN((pfn), pageblock_nr_pages)
>          |                                                           ^~~~~~~~~~~~~~~~~~
>    mm/compaction.c:1360:25: note: in expansion of macro 'pageblock_start_pfn'
>     1360 |         start_pfn = max(pageblock_start_pfn(pfn), cc->zone->zone_start_pfn);
>          |                         ^~~~~~~~~~~~~~~~~~~
>    include/linux/pageblock-flags.h:55:38: warning: left shift count is negative [-Wshift-count-negative]
>       55 | #define pageblock_nr_pages      (1UL << pageblock_order)
>          |                                      ^~
>    include/linux/minmax.h:28:27: note: in definition of macro '__cmp'
>       28 | #define __cmp(x, y, op) ((x) op (y) ? (x) : (y))
>          |                           ^
>    include/linux/minmax.h:74:25: note: in expansion of macro '__careful_cmp'
>       74 | #define max(x, y)       __careful_cmp(x, y, >)
>          |                         ^~~~~~~~~~~~~
>    mm/compaction.c:1360:21: note: in expansion of macro 'max'
>     1360 |         start_pfn = max(pageblock_start_pfn(pfn), cc->zone->zone_start_pfn);
>          |                     ^~~
>    include/uapi/linux/const.h:31:41: note: in expansion of macro '__ALIGN_KERNEL_MASK'
>       31 | #define __ALIGN_KERNEL(x, a)            __ALIGN_KERNEL_MASK(x, (typeof(x))(a) - 1)
>          |                                         ^~~~~~~~~~~~~~~~~~~
>    include/linux/align.h:9:33: note: in expansion of macro '__ALIGN_KERNEL'
>        9 | #define ALIGN_DOWN(x, a)        __ALIGN_KERNEL((x) - ((a) - 1), (a))
>          |                                 ^~~~~~~~~~~~~~
>    include/linux/pageblock-flags.h:58:41: note: in expansion of macro 'ALIGN_DOWN'
>       58 | #define pageblock_start_pfn(pfn)        ALIGN_DOWN((pfn), pageblock_nr_pages)
>          |                                         ^~~~~~~~~~
>    include/linux/pageblock-flags.h:58:59: note: in expansion of macro 'pageblock_nr_pages'
>       58 | #define pageblock_start_pfn(pfn)        ALIGN_DOWN((pfn), pageblock_nr_pages)
>          |                                                           ^~~~~~~~~~~~~~~~~~
>    mm/compaction.c:1360:25: note: in expansion of macro 'pageblock_start_pfn'
>     1360 |         start_pfn = max(pageblock_start_pfn(pfn), cc->zone->zone_start_pfn);
>          |                         ^~~~~~~~~~~~~~~~~~~
>    include/linux/pageblock-flags.h:55:38: warning: left shift count is negative [-Wshift-count-negative]
>       55 | #define pageblock_nr_pages      (1UL << pageblock_order)
>          |                                      ^~
>    include/linux/minmax.h:28:40: note: in definition of macro '__cmp'
>       28 | #define __cmp(x, y, op) ((x) op (y) ? (x) : (y))
>          |                                        ^
>    include/linux/minmax.h:74:25: note: in expansion of macro '__careful_cmp'
>       74 | #define max(x, y)       __careful_cmp(x, y, >)
>          |                         ^~~~~~~~~~~~~
>    mm/compaction.c:1360:21: note: in expansion of macro 'max'
>     1360 |         start_pfn = max(pageblock_start_pfn(pfn), cc->zone->zone_start_pfn);
>          |                     ^~~
> --
>    In file included from include/linux/pgtable.h:6,
>                     from include/linux/mm.h:29,
>                     from mm/huge_memory.c:8:
>    include/linux/swapops.h: In function 'swp_entry_to_pmd':
>    arch/loongarch/include/asm/pgtable.h:277:34: warning: missing braces around initializer [-Wmissing-braces]
>      277 | #define __swp_entry_to_pmd(x)   ((pmd_t) { (x).val | _PAGE_HUGE })
>          |                                  ^
>    include/linux/swapops.h:519:16: note: in expansion of macro '__swp_entry_to_pmd'
>      519 |         return __swp_entry_to_pmd(arch_entry);
>          |                ^~~~~~~~~~~~~~~~~~
>    In file included from <command-line>:
>    mm/huge_memory.c: In function 'hugepage_init':
> >> include/linux/compiler_types.h:397:45: error: call to '__compiletime_assert_311' declared with attribute error: BUILD_BUG_ON failed: ((16 + (16 - 3))-16) > -1
>      397 |         _compiletime_assert(condition, msg, __compiletime_assert_, __COUNTER__)
>          |                                             ^
>    include/linux/compiler_types.h:378:25: note: in definition of macro '__compiletime_assert'
>      378 |                         prefix ## suffix();                             \
>          |                         ^~~~~~
>    include/linux/compiler_types.h:397:9: note: in expansion of macro '_compiletime_assert'
>      397 |         _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)
>          |         ^~~~~~~~~~~~~~~~
>    include/linux/bug.h:24:25: note: in expansion of macro 'BUILD_BUG_ON'
>       24 |                         BUILD_BUG_ON(cond);             \
>          |                         ^~~~~~~~~~~~
>    mm/huge_memory.c:470:9: note: in expansion of macro 'MAYBE_BUILD_BUG_ON'
>      470 |         MAYBE_BUILD_BUG_ON(HPAGE_PMD_ORDER > MAX_ORDER);
>          |         ^~~~~~~~~~~~~~~~~~
> 
> 
> vim +/__compiletime_assert_311 +397 include/linux/compiler_types.h
> 
> eb5c2d4b45e3d2 Will Deacon 2020-07-21  383  
> eb5c2d4b45e3d2 Will Deacon 2020-07-21  384  #define _compiletime_assert(condition, msg, prefix, suffix) \
> eb5c2d4b45e3d2 Will Deacon 2020-07-21  385  	__compiletime_assert(condition, msg, prefix, suffix)
> eb5c2d4b45e3d2 Will Deacon 2020-07-21  386  
> eb5c2d4b45e3d2 Will Deacon 2020-07-21  387  /**
> eb5c2d4b45e3d2 Will Deacon 2020-07-21  388   * compiletime_assert - break build and emit msg if condition is false
> eb5c2d4b45e3d2 Will Deacon 2020-07-21  389   * @condition: a compile-time constant condition to check
> eb5c2d4b45e3d2 Will Deacon 2020-07-21  390   * @msg:       a message to emit if condition is false
> eb5c2d4b45e3d2 Will Deacon 2020-07-21  391   *
> eb5c2d4b45e3d2 Will Deacon 2020-07-21  392   * In tradition of POSIX assert, this macro will break the build if the
> eb5c2d4b45e3d2 Will Deacon 2020-07-21  393   * supplied condition is *false*, emitting the supplied error message if the
> eb5c2d4b45e3d2 Will Deacon 2020-07-21  394   * compiler has support to do so.
> eb5c2d4b45e3d2 Will Deacon 2020-07-21  395   */
> eb5c2d4b45e3d2 Will Deacon 2020-07-21  396  #define compiletime_assert(condition, msg) \
> eb5c2d4b45e3d2 Will Deacon 2020-07-21 @397  	_compiletime_assert(condition, msg, __compiletime_assert_, __COUNTER__)
> eb5c2d4b45e3d2 Will Deacon 2020-07-21  398  
> 
> :::::: The code at line 397 was first introduced by commit
> :::::: eb5c2d4b45e3d2d5d052ea6b8f1463976b1020d5 compiler.h: Move compiletime_assert() macros into compiler_types.h
> 
> :::::: TO: Will Deacon <will@kernel.org>
> :::::: CC: Will Deacon <will@kernel.org>
> 
> -- 
> 0-DAY CI Kernel Test Service
> https://github.com/intel/lkp-tests
> 

^ permalink raw reply	[flat|nested] 2+ messages in thread

end of thread, other threads:[~2023-03-24  1:10 UTC | newest]

Thread overview: 2+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2023-03-23 21:48 [akpm-mm:mm-unstable 225/293] include/linux/compiler_types.h:397:45: error: call to '__compiletime_assert_311' declared with attribute error: BUILD_BUG_ON failed: ((16 + (16 - 3))-16) > -1 kernel test robot
2023-03-24  1:07 ` Philip Li

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.