From: kernel test robot <lkp@intel.com>
To: "Jim Cromie" <jim.cromie@gmail.com>,
" Łukasz Bartosik" <ukaszb@chromium.org>
Cc: oe-kbuild-all@lists.linux.dev
Subject: [jimc:dd-shrink-cached 62/64] lib/dynamic_debug.c:409:13: warning: assignment to 'void *' from 'int' makes pointer from integer without a cast
Date: Wed, 19 Aug 2026 13:34:14 +0800 [thread overview]
Message-ID: <202608191348.LmT5jL98-lkp@intel.com> (raw)
tree: https://github.com/jimc/linux.git dd-shrink-cached
head: 917ff2e5a74ae1c252ad3a2c9017bd464f9258f9
commit: 9ddeda37ca2aba5800b9bbc30e16a1db1ce44e5c [62/64] lib/arena_maple_tree: Specialized arena-backed maple tree
config: arc-randconfig-r071-20260819 (https://download.01.org/0day-ci/archive/20260819/202608191348.LmT5jL98-lkp@intel.com/config)
compiler: arc-linux-gcc (GCC) 13.4.0
smatch: v0.5.0-9187-g5189e3fb
reproduce (this is a W=1 build): (https://download.01.org/0day-ci/archive/20260819/202608191348.LmT5jL98-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/202608191348.LmT5jL98-lkp@intel.com/
All warnings (new ones prefixed by >>):
lib/dynamic_debug.c:112:20: warning: no previous prototype for 'ddebug_arena_alloc' [-Wmissing-prototypes]
112 | struct maple_node *ddebug_arena_alloc(void *arena, gfp_t gfp)
| ^~~~~~~~~~~~~~~~~~
lib/dynamic_debug.c: In function 'ddebug_resolve_site':
lib/dynamic_debug.c:408:9: error: implicit declaration of function 'arena_mas_init' [-Werror=implicit-function-declaration]
408 | arena_mas_init(&mas, mt, (unsigned long)dp);
| ^~~~~~~~~~~~~~
lib/dynamic_debug.c:409:15: error: implicit declaration of function 'arena_mas_walk' [-Werror=implicit-function-declaration]
409 | val = arena_mas_walk(&mas);
| ^~~~~~~~~~~~~~
>> lib/dynamic_debug.c:409:13: warning: assignment to 'void *' from 'int' makes pointer from integer without a cast [-Wint-conversion]
409 | val = arena_mas_walk(&mas);
| ^
lib/dynamic_debug.c:415:39: error: implicit declaration of function 'arena_mas_prev' [-Werror=implicit-function-declaration]
415 | while ((val = arena_mas_prev(&mas, 0))) {
| ^~~~~~~~~~~~~~
lib/dynamic_debug.c:415:37: warning: assignment to 'void *' from 'int' makes pointer from integer without a cast [-Wint-conversion]
415 | while ((val = arena_mas_prev(&mas, 0))) {
| ^
lib/dynamic_debug.c: In function 'ddebug_store_tagged_range':
lib/dynamic_debug.c:474:22: error: implicit declaration of function 'arena_mtree_store_range'; did you mean 'mtree_store_range'? [-Werror=implicit-function-declaration]
474 | rc = arena_mtree_store_range(mt, first, last, (void *)name, GFP_KERNEL);
| ^~~~~~~~~~~~~~~~~~~~~~~
| mtree_store_range
lib/dynamic_debug.c: In function 'ddebug_resolve_range':
lib/dynamic_debug.c:2310:21: warning: assignment to 'void *' from 'int' makes pointer from integer without a cast [-Wint-conversion]
2310 | val = arena_mas_walk(&mas);
| ^
lib/dynamic_debug.c:2321:21: warning: assignment to 'void *' from 'int' makes pointer from integer without a cast [-Wint-conversion]
2321 | while ((val = arena_mas_prev(&mas, 0))) {
| ^
lib/dynamic_debug.c:2336:23: error: implicit declaration of function 'arena_mas_next' [-Werror=implicit-function-declaration]
2336 | while ((val = arena_mas_next(&mas, ULONG_MAX))) {
| ^~~~~~~~~~~~~~
lib/dynamic_debug.c:2336:21: warning: assignment to 'void *' from 'int' makes pointer from integer without a cast [-Wint-conversion]
2336 | while ((val = arena_mas_next(&mas, ULONG_MAX))) {
| ^
lib/dynamic_debug.c: In function 'ddebug_shrinker_scan':
lib/dynamic_debug.c:2429:17: error: implicit declaration of function 'arena___mt_destroy' [-Werror=implicit-function-declaration]
2429 | arena___mt_destroy(&dd_modules_site_map.mt);
| ^~~~~~~~~~~~~~~~~~
lib/dynamic_debug.c: At top level:
lib/dynamic_debug.c:2249:13: warning: 'ddebug_drop_all_cached_prefixes' defined but not used [-Wunused-function]
2249 | static void ddebug_drop_all_cached_prefixes(const struct _ddebug_info *di)
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
cc1: some warnings being treated as errors
--
include/linux/printk.h:584:9: note: in expansion of macro 'printk'
584 | printk(KERN_INFO pr_fmt(fmt), ##__VA_ARGS__)
| ^~~~~~
include/linux/maple_tree.h:714:17: note: in expansion of macro 'pr_info'
714 | pr_info("Pass: %u Run:%u\n", \
| ^~~~~~~
lib/maple_tree.c:4937:9: note: in expansion of macro 'MAS_WR_BUG_ON'
4937 | MAS_WR_BUG_ON(&wr_mas, mas_is_err(mas));
| ^~~~~~~~~~~~~
lib/maple_tree.c: At top level:
lib/arena_maple_tree.c:36:33: warning: conflicting types for 'arena_mas_destroy'; have 'void(struct ma_state *)'
36 | #define mas_destroy arena_mas_destroy
| ^~~~~~~~~~~~~~~~~
lib/maple_tree.c:4985:6: note: in expansion of macro 'mas_destroy'
4985 | void mas_destroy(struct ma_state *mas)
| ^~~~~~~~~~~
lib/arena_maple_tree.c:36:33: note: previous implicit declaration of 'arena_mas_destroy' with type 'void(struct ma_state *)'
36 | #define mas_destroy arena_mas_destroy
| ^~~~~~~~~~~~~~~~~
lib/maple_tree.c:3825:9: note: in expansion of macro 'mas_destroy'
3825 | mas_destroy(mas);
| ^~~~~~~~~~~
lib/maple_tree.c: In function 'arena_mt_find':
lib/arena_maple_tree.c:64:33: error: 'arena_maple_tree_tests_run' undeclared (first use in this function); did you mean 'maple_tree_tests_run'?
64 | #define maple_tree_tests_run arena_maple_tree_tests_run
| ^~~~~~~~~~~~~~~~~~~~~~~~~~
include/linux/maple_tree.h:725:21: note: in expansion of macro 'maple_tree_tests_run'
725 | atomic_inc(&maple_tree_tests_run); \
| ^~~~~~~~~~~~~~~~~~~~
lib/maple_tree.c:6297:21: note: in expansion of macro 'MT_WARN_ON'
6297 | if (MT_WARN_ON(mt, (*index) && ((*index) <= copy)))
| ^~~~~~~~~~
lib/arena_maple_tree.c:65:33: error: 'arena_maple_tree_tests_passed' undeclared (first use in this function); did you mean 'maple_tree_tests_passed'?
65 | #define maple_tree_tests_passed arena_maple_tree_tests_passed
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
include/linux/printk.h:483:33: note: in expansion of macro 'maple_tree_tests_passed'
483 | _p_func(_fmt, ##__VA_ARGS__); \
| ^~~~~~~~~~~
include/linux/printk.h:511:26: note: in expansion of macro 'printk_index_wrap'
511 | #define printk(fmt, ...) printk_index_wrap(_printk, fmt, ##__VA_ARGS__)
| ^~~~~~~~~~~~~~~~~
include/linux/printk.h:584:9: note: in expansion of macro 'printk'
584 | printk(KERN_INFO pr_fmt(fmt), ##__VA_ARGS__)
| ^~~~~~
include/linux/maple_tree.h:730:17: note: in expansion of macro 'pr_info'
730 | pr_info("Pass: %u Run:%u\n", \
| ^~~~~~~
lib/maple_tree.c:6297:21: note: in expansion of macro 'MT_WARN_ON'
6297 | if (MT_WARN_ON(mt, (*index) && ((*index) <= copy)))
| ^~~~~~~~~~
lib/maple_tree.c: At top level:
lib/arena_maple_tree.c:67:33: warning: conflicting types for 'arena_mt_dump'; have 'void(const struct maple_tree *, enum mt_dump_format)'
67 | #define mt_dump arena_mt_dump
| ^~~~~~~~~~~~~
lib/maple_tree.c:6628:6: note: in expansion of macro 'mt_dump'
6628 | void mt_dump(const struct maple_tree *mt, enum mt_dump_format format)
| ^~~~~~~
lib/arena_maple_tree.c:67:33: note: previous implicit declaration of 'arena_mt_dump' with type 'void(const struct maple_tree *, enum mt_dump_format)'
67 | #define mt_dump arena_mt_dump
| ^~~~~~~~~~~~~
include/linux/maple_tree.h:680:17: note: in expansion of macro 'mt_dump'
680 | mt_dump(__tree, mt_dump_hex); \
| ^~~~~~~
lib/maple_tree.c:181:9: note: in expansion of macro 'MT_BUG_ON'
181 | MT_BUG_ON(mt, height > MAPLE_HEIGHT_MAX);
| ^~~~~~~~~
lib/arena_maple_tree.c:69:33: warning: conflicting types for 'arena_mas_dump'; have 'void(const struct ma_state *)'
69 | #define mas_dump arena_mas_dump
| ^~~~~~~~~~~~~~
lib/maple_tree.c:6960:6: note: in expansion of macro 'mas_dump'
6960 | void mas_dump(const struct ma_state *mas)
| ^~~~~~~~
lib/arena_maple_tree.c:69:33: note: previous implicit declaration of 'arena_mas_dump' with type 'void(const struct ma_state *)'
69 | #define mas_dump arena_mas_dump
| ^~~~~~~~~~~~~~
include/linux/maple_tree.h:695:17: note: in expansion of macro 'mas_dump'
695 | mas_dump(__mas); \
| ^~~~~~~~
lib/maple_tree.c:477:9: note: in expansion of macro 'MAS_BUG_ON'
477 | MAS_BUG_ON(mas, p_type == maple_dense);
| ^~~~~~~~~~
lib/arena_maple_tree.c:70:33: warning: conflicting types for 'arena_mas_wr_dump'; have 'void(const struct ma_wr_state *)'
70 | #define mas_wr_dump arena_mas_wr_dump
| ^~~~~~~~~~~~~~~~~
lib/maple_tree.c:7035:6: note: in expansion of macro 'mas_wr_dump'
7035 | void mas_wr_dump(const struct ma_wr_state *wr_mas)
| ^~~~~~~~~~~
lib/arena_maple_tree.c:70:33: note: previous implicit declaration of 'arena_mas_wr_dump' with type 'void(const struct ma_wr_state *)'
70 | #define mas_wr_dump arena_mas_wr_dump
| ^~~~~~~~~~~~~~~~~
include/linux/maple_tree.h:711:17: note: in expansion of macro 'mas_wr_dump'
711 | mas_wr_dump(__wrmas); \
| ^~~~~~~~~~~
lib/maple_tree.c:4857:17: note: in expansion of macro 'MAS_WR_BUG_ON'
4857 | MAS_WR_BUG_ON(&wr_mas, mas_is_err(mas));
| ^~~~~~~~~~~~~
lib/arena_maple_tree.c: In function 'kmem_cache_alloc_specialized':
lib/arena_maple_tree.c:151:24: error: implicit declaration of function 'ddebug_arena_alloc' [-Werror=implicit-function-declaration]
151 | return ddebug_arena_alloc(amt->arena, gfp);
| ^~~~~~~~~~~~~~~~~~
>> lib/arena_maple_tree.c:151:24: warning: returning 'int' from a function with return type 'void *' makes pointer from integer without a cast [-Wint-conversion]
151 | return ddebug_arena_alloc(amt->arena, gfp);
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
lib/arena_maple_tree.c: In function 'kmem_cache_alloc_from_sheaf_specialized':
lib/arena_maple_tree.c:183:32: warning: returning 'int' from a function with return type 'void *' makes pointer from integer without a cast [-Wint-conversion]
183 | return ddebug_arena_alloc(amt->arena, gfp);
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
cc1: some warnings being treated as errors
vim +409 lib/dynamic_debug.c
396
397 static void ddebug_resolve_site(struct maple_tree *mt, const struct _ddebug *dp,
398 const char **mod, const char **file, const char **func)
399 {
400 struct ma_state mas;
401 void *val;
402
403 if (mod) *mod = NULL;
404 if (file) *file = NULL;
405 if (func) *func = NULL;
406
407 rcu_read_lock();
408 arena_mas_init(&mas, mt, (unsigned long)dp);
> 409 val = arena_mas_walk(&mas);
410 if (val) {
411 if (func && (mas.index & DD_KEY_ALIGN_MASK) == DD_KEY_FUNC_ALIGN)
412 *func = (const char *)val;
413
414 if (mod || file) {
415 while ((val = arena_mas_prev(&mas, 0))) {
416 unsigned long rem = mas.index & DD_KEY_ALIGN_MASK;
417
418 if (file && !*file && rem == DD_KEY_FILE_ALIGN) {
419 *file = (const char *)val;
420 if (!mod)
421 break;
422 } else if (mod && rem == DD_KEY_MOD_ALIGN) {
423 *mod = (const char *)val;
424 break;
425 }
426 }
427 }
428 }
429 rcu_read_unlock();
430
431 if (mod && !*mod) *mod = "unknown";
432 if (file && !*file) *file = "unknown";
433 if (func && !*func) *func = "unknown";
434 }
435
--
0-DAY CI Kernel Test Service
https://github.com/intel/lkp-tests/wiki
reply other threads:[~2026-08-19 5:34 UTC|newest]
Thread overview: [no followups] expand[flat|nested] mbox.gz Atom feed
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=202608191348.LmT5jL98-lkp@intel.com \
--to=lkp@intel.com \
--cc=jim.cromie@gmail.com \
--cc=oe-kbuild-all@lists.linux.dev \
--cc=ukaszb@chromium.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
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.