Re: [PATCH] mm/damon/core: remove declaration of kdamond_fn()
From: kernel test robot
Date: Fri Aug 28 2026 - 01:35:06 EST
Hi Zenghui,
kernel test robot noticed the following build errors:
[auto build test ERROR on akpm-mm/mm-everything]
url: https://github.com/intel-lab-lkp/linux/commits/Zenghui-Yu/mm-damon-core-remove-declaration-of-kdamond_fn/20260828-003953
base: https://git.kernel.org/pub/scm/linux/kernel/git/akpm/mm.git mm-everything
patch link: https://lore.kernel.org/r/20260827163953.83520-1-zenghui.yu%40linux.dev
patch subject: [PATCH] mm/damon/core: remove declaration of kdamond_fn()
config: xtensa-randconfig-r073-20260828 (https://download.01.org/0day-ci/archive/20260828/202608281351.Hv386MvO-lkp@xxxxxxxxx/config)
compiler: xtensa-linux-gcc (GCC) 16.1.0
smatch: v0.5.0-9187-g5189e3fb
reproduce (this is a W=1 build): (https://download.01.org/0day-ci/archive/20260828/202608281351.Hv386MvO-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/202608281351.Hv386MvO-lkp@xxxxxxxxx/
All error/warnings (new ones prefixed by >>):
In file included from include/linux/psi_types.h:5,
from include/linux/cgroup-defs.h:24,
from include/linux/cgroup.h:29,
from include/linux/memcontrol.h:13,
from include/linux/damon.h:10,
from mm/damon/core.c:8:
mm/damon/core.c: In function '__damon_start':
>> mm/damon/core.c:1941:44: error: 'kdamond_fn' undeclared (first use in this function)
1941 | ctx->kdamond = kthread_run(kdamond_fn, ctx, "kdamond.%d",
| ^~~~~~~~~~
include/linux/kthread.h:46:32: note: in definition of macro 'kthread_create'
46 | kthread_create_on_node(threadfn, data, NUMA_NO_NODE, namefmt, ##arg)
| ^~~~~~~~
mm/damon/core.c:1941:32: note: in expansion of macro 'kthread_run'
1941 | ctx->kdamond = kthread_run(kdamond_fn, ctx, "kdamond.%d",
| ^~~~~~~~~~~
mm/damon/core.c:1941:44: note: each undeclared identifier is reported only once for each function it appears in
include/linux/kthread.h:46:32: note: in definition of macro 'kthread_create'
46 | kthread_create_on_node(threadfn, data, NUMA_NO_NODE, namefmt, ##arg)
| ^~~~~~~~
mm/damon/core.c:1941:32: note: in expansion of macro 'kthread_run'
1941 | ctx->kdamond = kthread_run(kdamond_fn, ctx, "kdamond.%d",
| ^~~~~~~~~~~
mm/damon/core.c: At top level:
>> mm/damon/core.c:3750:12: warning: 'kdamond_fn' defined but not used [-Wunused-function]
3750 | static int kdamond_fn(void *data)
| ^~~~~~~~~~
vim +/kdamond_fn +1941 mm/damon/core.c
b1029f29eb1d5fb SJ Park 2026-02-28 1924
2224d8485492e49 SeongJae Park 2021-09-07 1925 /*
2224d8485492e49 SeongJae Park 2021-09-07 1926 * __damon_start() - Starts monitoring with given context.
2224d8485492e49 SeongJae Park 2021-09-07 1927 * @ctx: monitoring context
2224d8485492e49 SeongJae Park 2021-09-07 1928 *
2224d8485492e49 SeongJae Park 2021-09-07 1929 * This function should be called while damon_lock is hold.
2224d8485492e49 SeongJae Park 2021-09-07 1930 *
2224d8485492e49 SeongJae Park 2021-09-07 1931 * Return: 0 on success, negative error code otherwise.
2224d8485492e49 SeongJae Park 2021-09-07 1932 */
2224d8485492e49 SeongJae Park 2021-09-07 1933 static int __damon_start(struct damon_ctx *ctx)
2224d8485492e49 SeongJae Park 2021-09-07 1934 {
2224d8485492e49 SeongJae Park 2021-09-07 1935 int err = -EBUSY;
2224d8485492e49 SeongJae Park 2021-09-07 1936
2224d8485492e49 SeongJae Park 2021-09-07 1937 mutex_lock(&ctx->kdamond_lock);
2224d8485492e49 SeongJae Park 2021-09-07 1938 if (!ctx->kdamond) {
2224d8485492e49 SeongJae Park 2021-09-07 1939 err = 0;
6376a824595607e SJ Park 2023-12-08 1940 reinit_completion(&ctx->kdamond_started);
2224d8485492e49 SeongJae Park 2021-09-07 @1941 ctx->kdamond = kthread_run(kdamond_fn, ctx, "kdamond.%d",
2224d8485492e49 SeongJae Park 2021-09-07 1942 nr_running_ctxs);
2224d8485492e49 SeongJae Park 2021-09-07 1943 if (IS_ERR(ctx->kdamond)) {
2224d8485492e49 SeongJae Park 2021-09-07 1944 err = PTR_ERR(ctx->kdamond);
7ec1992b891e59d Colin Ian King 2021-11-05 1945 ctx->kdamond = NULL;
6376a824595607e SJ Park 2023-12-08 1946 } else {
6376a824595607e SJ Park 2023-12-08 1947 wait_for_completion(&ctx->kdamond_started);
2224d8485492e49 SeongJae Park 2021-09-07 1948 }
2224d8485492e49 SeongJae Park 2021-09-07 1949 }
2224d8485492e49 SeongJae Park 2021-09-07 1950 mutex_unlock(&ctx->kdamond_lock);
2224d8485492e49 SeongJae Park 2021-09-07 1951
2224d8485492e49 SeongJae Park 2021-09-07 1952 return err;
2224d8485492e49 SeongJae Park 2021-09-07 1953 }
2224d8485492e49 SeongJae Park 2021-09-07 1954
--
0-DAY CI Kernel Test Service
https://github.com/intel/lkp-tests/wiki