Re: [PATCH 5/5] mm: Change gfp_t to unsigned long
From: kernel test robot
Date: Sun Mar 22 2026 - 09:26:04 EST
Hi Brendan,
kernel test robot noticed the following build errors:
[auto build test ERROR on 8a30aeb0d1b4e4aaf7f7bae72f20f2ae75385ccb]
url: https://github.com/intel-lab-lkp/linux/commits/Brendan-Jackman/drm-managed-Use-special-gfp_t-format-specifier/20260322-145930
base: 8a30aeb0d1b4e4aaf7f7bae72f20f2ae75385ccb
patch link: https://lore.kernel.org/r/20260319-gfp64-v1-5-2c73b8d42b7f%40google.com
patch subject: [PATCH 5/5] mm: Change gfp_t to unsigned long
config: x86_64-rhel-9.4-kunit (https://download.01.org/0day-ci/archive/20260322/202603221419.9kAfrwc5-lkp@xxxxxxxxx/config)
compiler: gcc-14 (Debian 14.2.0-19) 14.2.0
reproduce (this is a W=1 build): (https://download.01.org/0day-ci/archive/20260322/202603221419.9kAfrwc5-lkp@xxxxxxxxx/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@xxxxxxxxx>
| Closes: https://lore.kernel.org/oe-kbuild-all/202603221419.9kAfrwc5-lkp@xxxxxxxxx/
All errors (new ones prefixed by >>):
In file included from include/linux/module.h:23,
from lib/test_lockup.c:8:
>> lib/test_lockup.c:133:47: error: expected ';' before 'long'
133 | module_param_unsafe(alloc_pages_gfp, unsigned long, 0400);
| ^~~~
include/linux/moduleparam.h:175:23: note: in definition of macro 'module_param_named_unsafe'
175 | param_check_##type(name, &(value)); \
| ^~~~
lib/test_lockup.c:133:1: note: in expansion of macro 'module_param_unsafe'
133 | module_param_unsafe(alloc_pages_gfp, unsigned long, 0400);
| ^~~~~~~~~~~~~~~~~~~
>> include/linux/moduleparam.h:175:32: error: expected ')' before ',' token
175 | param_check_##type(name, &(value)); \
| ^
include/linux/moduleparam.h:149:9: note: in expansion of macro 'module_param_named_unsafe'
149 | module_param_named_unsafe(name, name, type, perm)
| ^~~~~~~~~~~~~~~~~~~~~~~~~
lib/test_lockup.c:133:1: note: in expansion of macro 'module_param_unsafe'
133 | module_param_unsafe(alloc_pages_gfp, unsigned long, 0400);
| ^~~~~~~~~~~~~~~~~~~
>> include/linux/moduleparam.h:176:39: error: 'param_ops_unsigned' undeclared here (not in a function); did you mean 'param_ops_uint'?
176 | module_param_cb_unsafe(name, ¶m_ops_##type, &value, perm); \
| ^~~~~~~~~~
include/linux/moduleparam.h:305:46: note: in definition of macro '__module_param_call'
305 | = { __param_str_##name, THIS_MODULE, ops, \
| ^~~
include/linux/moduleparam.h:176:9: note: in expansion of macro 'module_param_cb_unsafe'
176 | module_param_cb_unsafe(name, ¶m_ops_##type, &value, perm); \
| ^~~~~~~~~~~~~~~~~~~~~~
include/linux/moduleparam.h:149:9: note: in expansion of macro 'module_param_named_unsafe'
149 | module_param_named_unsafe(name, name, type, perm)
| ^~~~~~~~~~~~~~~~~~~~~~~~~
lib/test_lockup.c:133:1: note: in expansion of macro 'module_param_unsafe'
133 | module_param_unsafe(alloc_pages_gfp, unsigned long, 0400);
| ^~~~~~~~~~~~~~~~~~~
lib/test_lockup.c:133:47: error: expected '}' before 'long'
133 | module_param_unsafe(alloc_pages_gfp, unsigned long, 0400);
| ^~~~
include/linux/moduleparam.h:305:46: note: in definition of macro '__module_param_call'
305 | = { __param_str_##name, THIS_MODULE, ops, \
| ^~~
include/linux/moduleparam.h:176:9: note: in expansion of macro 'module_param_cb_unsafe'
176 | module_param_cb_unsafe(name, ¶m_ops_##type, &value, perm); \
| ^~~~~~~~~~~~~~~~~~~~~~
include/linux/moduleparam.h:149:9: note: in expansion of macro 'module_param_named_unsafe'
149 | module_param_named_unsafe(name, name, type, perm)
| ^~~~~~~~~~~~~~~~~~~~~~~~~
lib/test_lockup.c:133:1: note: in expansion of macro 'module_param_unsafe'
133 | module_param_unsafe(alloc_pages_gfp, unsigned long, 0400);
| ^~~~~~~~~~~~~~~~~~~
include/linux/moduleparam.h:305:11: note: to match this '{'
305 | = { __param_str_##name, THIS_MODULE, ops, \
| ^
include/linux/moduleparam.h:192:9: note: in expansion of macro '__module_param_call'
192 | __module_param_call(MODULE_PARAM_PREFIX, name, ops, arg, perm, -1, \
| ^~~~~~~~~~~~~~~~~~~
include/linux/moduleparam.h:176:9: note: in expansion of macro 'module_param_cb_unsafe'
176 | module_param_cb_unsafe(name, ¶m_ops_##type, &value, perm); \
| ^~~~~~~~~~~~~~~~~~~~~~
include/linux/moduleparam.h:149:9: note: in expansion of macro 'module_param_named_unsafe'
149 | module_param_named_unsafe(name, name, type, perm)
| ^~~~~~~~~~~~~~~~~~~~~~~~~
lib/test_lockup.c:133:1: note: in expansion of macro 'module_param_unsafe'
133 | module_param_unsafe(alloc_pages_gfp, unsigned long, 0400);
| ^~~~~~~~~~~~~~~~~~~
--
In file included from include/linux/module.h:23,
from test_lockup.c:8:
test_lockup.c:133:47: error: expected ';' before 'long'
133 | module_param_unsafe(alloc_pages_gfp, unsigned long, 0400);
| ^~~~
include/linux/moduleparam.h:175:23: note: in definition of macro 'module_param_named_unsafe'
175 | param_check_##type(name, &(value)); \
| ^~~~
test_lockup.c:133:1: note: in expansion of macro 'module_param_unsafe'
133 | module_param_unsafe(alloc_pages_gfp, unsigned long, 0400);
| ^~~~~~~~~~~~~~~~~~~
>> include/linux/moduleparam.h:175:32: error: expected ')' before ',' token
175 | param_check_##type(name, &(value)); \
| ^
include/linux/moduleparam.h:149:9: note: in expansion of macro 'module_param_named_unsafe'
149 | module_param_named_unsafe(name, name, type, perm)
| ^~~~~~~~~~~~~~~~~~~~~~~~~
test_lockup.c:133:1: note: in expansion of macro 'module_param_unsafe'
133 | module_param_unsafe(alloc_pages_gfp, unsigned long, 0400);
| ^~~~~~~~~~~~~~~~~~~
>> include/linux/moduleparam.h:176:39: error: 'param_ops_unsigned' undeclared here (not in a function); did you mean 'param_ops_uint'?
176 | module_param_cb_unsafe(name, ¶m_ops_##type, &value, perm); \
| ^~~~~~~~~~
include/linux/moduleparam.h:305:46: note: in definition of macro '__module_param_call'
305 | = { __param_str_##name, THIS_MODULE, ops, \
| ^~~
include/linux/moduleparam.h:176:9: note: in expansion of macro 'module_param_cb_unsafe'
176 | module_param_cb_unsafe(name, ¶m_ops_##type, &value, perm); \
| ^~~~~~~~~~~~~~~~~~~~~~
include/linux/moduleparam.h:149:9: note: in expansion of macro 'module_param_named_unsafe'
149 | module_param_named_unsafe(name, name, type, perm)
| ^~~~~~~~~~~~~~~~~~~~~~~~~
test_lockup.c:133:1: note: in expansion of macro 'module_param_unsafe'
133 | module_param_unsafe(alloc_pages_gfp, unsigned long, 0400);
| ^~~~~~~~~~~~~~~~~~~
test_lockup.c:133:47: error: expected '}' before 'long'
133 | module_param_unsafe(alloc_pages_gfp, unsigned long, 0400);
| ^~~~
include/linux/moduleparam.h:305:46: note: in definition of macro '__module_param_call'
305 | = { __param_str_##name, THIS_MODULE, ops, \
| ^~~
include/linux/moduleparam.h:176:9: note: in expansion of macro 'module_param_cb_unsafe'
176 | module_param_cb_unsafe(name, ¶m_ops_##type, &value, perm); \
| ^~~~~~~~~~~~~~~~~~~~~~
include/linux/moduleparam.h:149:9: note: in expansion of macro 'module_param_named_unsafe'
149 | module_param_named_unsafe(name, name, type, perm)
| ^~~~~~~~~~~~~~~~~~~~~~~~~
test_lockup.c:133:1: note: in expansion of macro 'module_param_unsafe'
133 | module_param_unsafe(alloc_pages_gfp, unsigned long, 0400);
| ^~~~~~~~~~~~~~~~~~~
include/linux/moduleparam.h:305:11: note: to match this '{'
305 | = { __param_str_##name, THIS_MODULE, ops, \
| ^
include/linux/moduleparam.h:192:9: note: in expansion of macro '__module_param_call'
192 | __module_param_call(MODULE_PARAM_PREFIX, name, ops, arg, perm, -1, \
| ^~~~~~~~~~~~~~~~~~~
include/linux/moduleparam.h:176:9: note: in expansion of macro 'module_param_cb_unsafe'
176 | module_param_cb_unsafe(name, ¶m_ops_##type, &value, perm); \
| ^~~~~~~~~~~~~~~~~~~~~~
include/linux/moduleparam.h:149:9: note: in expansion of macro 'module_param_named_unsafe'
149 | module_param_named_unsafe(name, name, type, perm)
| ^~~~~~~~~~~~~~~~~~~~~~~~~
test_lockup.c:133:1: note: in expansion of macro 'module_param_unsafe'
133 | module_param_unsafe(alloc_pages_gfp, unsigned long, 0400);
| ^~~~~~~~~~~~~~~~~~~
vim +133 lib/test_lockup.c
131
132 static gfp_t alloc_pages_gfp = GFP_KERNEL;
> 133 module_param_unsafe(alloc_pages_gfp, unsigned long, 0400);
134 MODULE_PARM_DESC(alloc_pages_gfp, "allocate pages with this gfp_mask, default GFP_KERNEL");
135
--
0-DAY CI Kernel Test Service
https://github.com/intel/lkp-tests/wiki