[stable:linux-4.19.y 2814/3442] include/linux/nodemask.h:380:20: error: comparison of unsigned expression in '>= 0' is always true

From: kernel test robot
Date: Thu Aug 11 2022 - 11:40:07 EST


tree: https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux-stable.git linux-4.19.y
head: 5c7ccbe1aade74e854fb7f9fa001dc1110a0030e
commit: 8d8681d07fc82557d09d9cdc177f9ed529d9a4d8 [2814/3442] nodemask.h: fix compilation error with GCC12
config: alpha-randconfig-r001-20220811 (https://download.01.org/0day-ci/archive/20220811/202208112328.09GkLSzy-lkp@xxxxxxxxx/config)
compiler: alpha-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/stable/linux-stable.git/commit/?id=8d8681d07fc82557d09d9cdc177f9ed529d9a4d8
git remote add stable https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux-stable.git
git fetch --no-tags stable linux-4.19.y
git checkout 8d8681d07fc82557d09d9cdc177f9ed529d9a4d8
# 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=alpha SHELL=/bin/bash

If you fix the issue, kindly add following tag where applicable
Reported-by: kernel test robot <lkp@xxxxxxxxx>

All errors (new ones prefixed by >>):

In file included from include/linux/mmzone.h:17,
from include/linux/gfp.h:6,
from include/linux/mm.h:10,
from arch/alpha/mm/numa.c:12:
arch/alpha/mm/numa.c: In function 'paging_init':
>> include/linux/nodemask.h:380:20: error: comparison of unsigned expression in '>= 0' is always true [-Werror=type-limits]
380 | (node >= 0) && (node) < MAX_NUMNODES; \
| ^~
include/linux/nodemask.h:433:9: note: in expansion of macro 'for_each_node_mask'
433 | for_each_node_mask((__node), node_states[__state])
| ^~~~~~~~~~~~~~~~~~
include/linux/nodemask.h:513:36: note: in expansion of macro 'for_each_node_state'
513 | #define for_each_online_node(node) for_each_node_state(node, N_ONLINE)
| ^~~~~~~~~~~~~~~~~~~
arch/alpha/mm/numa.c:305:9: note: in expansion of macro 'for_each_online_node'
305 | for_each_online_node(nid) {
| ^~~~~~~~~~~~~~~~~~~~
cc1: all warnings being treated as errors


vim +380 include/linux/nodemask.h

376
377 #if MAX_NUMNODES > 1
378 #define for_each_node_mask(node, mask) \
379 for ((node) = first_node(mask); \
> 380 (node >= 0) && (node) < MAX_NUMNODES; \
381 (node) = next_node((node), (mask)))
382 #else /* MAX_NUMNODES == 1 */
383 #define for_each_node_mask(node, mask) \
384 for ((node) = 0; (node) < 1 && !nodes_empty(mask); (node)++)
385 #endif /* MAX_NUMNODES */
386

--
0-DAY CI Kernel Test Service
https://01.org/lkp