All of lore.kernel.org
 help / color / mirror / Atom feed
* kernel/sched/ext/arena.c:29: undefined reference to `gen_pool_create'
@ 2026-08-15  8:22 kernel test robot
  0 siblings, 0 replies; only message in thread
From: kernel test robot @ 2026-08-15  8:22 UTC (permalink / raw)
  To: Tejun Heo; +Cc: oe-kbuild-all, linux-kernel, Andrea Righi

Hi Tejun,

First bad commit (maybe != root cause):

tree:   https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git master
head:   2f1baf1fc8929e6c48370be543ad028ac7ad4131
commit: bba2c3615bd6cfee7456d1130f2e6b01b3f4e9ba sched_ext: Move sources under kernel/sched/ext/
date:   8 weeks ago
config: parisc-randconfig-001-20260815 (https://download.01.org/0day-ci/archive/20260815/202608151632.3p91bTQj-lkp@intel.com/config)
compiler: hppa-linux-gcc (GCC) 8.5.0
reproduce (this is a W=1 build): (https://download.01.org/0day-ci/archive/20260815/202608151632.3p91bTQj-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
| Fixes: bba2c3615bd6 ("sched_ext: Move sources under kernel/sched/ext/")
| Reported-by: kernel test robot <lkp@intel.com>
| Closes: https://lore.kernel.org/oe-kbuild-all/202608151632.3p91bTQj-lkp@intel.com/

All errors (new ones prefixed by >>):

   hppa-linux-ld: kernel/sched/build_policy.o: in function `gen_pool_free':
   include/linux/genalloc.h:173: undefined reference to `gen_pool_free_owner'
   hppa-linux-ld: kernel/sched/build_policy.o: in function `scx_arena_pool_init':
>> kernel/sched/ext/arena.c:29: undefined reference to `gen_pool_create'
   hppa-linux-ld: kernel/sched/build_policy.o: in function `scx_arena_pool_destroy':
>> kernel/sched/ext/arena.c:57: undefined reference to `gen_pool_for_each_chunk'
>> hppa-linux-ld: kernel/sched/ext/arena.c:58: undefined reference to `gen_pool_destroy'
   hppa-linux-ld: kernel/sched/build_policy.o: in function `gen_pool_free':
   include/linux/genalloc.h:173: undefined reference to `gen_pool_free_owner'
   hppa-linux-ld: kernel/sched/build_policy.o: in function `gen_pool_alloc_algo':
   include/linux/genalloc.h:139: undefined reference to `gen_pool_alloc_algo_owner'
   hppa-linux-ld: kernel/sched/build_policy.o: in function `gen_pool_free':
   include/linux/genalloc.h:173: undefined reference to `gen_pool_free_owner'
   hppa-linux-ld: kernel/sched/build_policy.o: in function `scx_arena_pool_init':
>> kernel/sched/ext/arena.c:29: undefined reference to `gen_pool_create'


vim +29 kernel/sched/ext/arena.c

9eca087deb0b35 kernel/sched/ext_arena.c Tejun Heo 2026-05-22  23  
9eca087deb0b35 kernel/sched/ext_arena.c Tejun Heo 2026-05-22  24  s32 scx_arena_pool_init(struct scx_sched *sch)
9eca087deb0b35 kernel/sched/ext_arena.c Tejun Heo 2026-05-22  25  {
9eca087deb0b35 kernel/sched/ext_arena.c Tejun Heo 2026-05-22  26  	if (!sch->arena_map)
9eca087deb0b35 kernel/sched/ext_arena.c Tejun Heo 2026-05-22  27  		return 0;
9eca087deb0b35 kernel/sched/ext_arena.c Tejun Heo 2026-05-22  28  
9eca087deb0b35 kernel/sched/ext_arena.c Tejun Heo 2026-05-22 @29  	sch->arena_pool = gen_pool_create(SCX_ARENA_MIN_ORDER, NUMA_NO_NODE);
9eca087deb0b35 kernel/sched/ext_arena.c Tejun Heo 2026-05-22  30  	if (!sch->arena_pool)
9eca087deb0b35 kernel/sched/ext_arena.c Tejun Heo 2026-05-22  31  		return -ENOMEM;
9eca087deb0b35 kernel/sched/ext_arena.c Tejun Heo 2026-05-22  32  	return 0;
9eca087deb0b35 kernel/sched/ext_arena.c Tejun Heo 2026-05-22  33  }
9eca087deb0b35 kernel/sched/ext_arena.c Tejun Heo 2026-05-22  34  
9eca087deb0b35 kernel/sched/ext_arena.c Tejun Heo 2026-05-22  35  static void scx_arena_clear_chunk(struct gen_pool *pool, struct gen_pool_chunk *chunk,
9eca087deb0b35 kernel/sched/ext_arena.c Tejun Heo 2026-05-22  36  				  void *data)
9eca087deb0b35 kernel/sched/ext_arena.c Tejun Heo 2026-05-22  37  {
9eca087deb0b35 kernel/sched/ext_arena.c Tejun Heo 2026-05-22  38  	int order = pool->min_alloc_order;
9eca087deb0b35 kernel/sched/ext_arena.c Tejun Heo 2026-05-22  39  	size_t chunk_sz = chunk->end_addr - chunk->start_addr + 1;
9eca087deb0b35 kernel/sched/ext_arena.c Tejun Heo 2026-05-22  40  	unsigned long end_bit = chunk_sz >> order;
9eca087deb0b35 kernel/sched/ext_arena.c Tejun Heo 2026-05-22  41  	unsigned long b, e;
9eca087deb0b35 kernel/sched/ext_arena.c Tejun Heo 2026-05-22  42  
9eca087deb0b35 kernel/sched/ext_arena.c Tejun Heo 2026-05-22  43  	for_each_set_bitrange(b, e, chunk->bits, end_bit)
9eca087deb0b35 kernel/sched/ext_arena.c Tejun Heo 2026-05-22  44  		gen_pool_free(pool, chunk->start_addr + (b << order),
9eca087deb0b35 kernel/sched/ext_arena.c Tejun Heo 2026-05-22  45  			      (e - b) << order);
9eca087deb0b35 kernel/sched/ext_arena.c Tejun Heo 2026-05-22  46  }
9eca087deb0b35 kernel/sched/ext_arena.c Tejun Heo 2026-05-22  47  
9eca087deb0b35 kernel/sched/ext_arena.c Tejun Heo 2026-05-22  48  /*
9eca087deb0b35 kernel/sched/ext_arena.c Tejun Heo 2026-05-22  49   * Tear down the pool. Outstanding gen_pool allocations are freed via
9eca087deb0b35 kernel/sched/ext_arena.c Tejun Heo 2026-05-22  50   * scx_arena_clear_chunk() so gen_pool_destroy() doesn't BUG. The underlying
9eca087deb0b35 kernel/sched/ext_arena.c Tejun Heo 2026-05-22  51   * arena pages are released when the arena map itself is torn down.
9eca087deb0b35 kernel/sched/ext_arena.c Tejun Heo 2026-05-22  52   */
9eca087deb0b35 kernel/sched/ext_arena.c Tejun Heo 2026-05-22  53  void scx_arena_pool_destroy(struct scx_sched *sch)
9eca087deb0b35 kernel/sched/ext_arena.c Tejun Heo 2026-05-22  54  {
9eca087deb0b35 kernel/sched/ext_arena.c Tejun Heo 2026-05-22  55  	if (!sch->arena_pool)
9eca087deb0b35 kernel/sched/ext_arena.c Tejun Heo 2026-05-22  56  		return;
9eca087deb0b35 kernel/sched/ext_arena.c Tejun Heo 2026-05-22 @57  	gen_pool_for_each_chunk(sch->arena_pool, scx_arena_clear_chunk, NULL);
9eca087deb0b35 kernel/sched/ext_arena.c Tejun Heo 2026-05-22 @58  	gen_pool_destroy(sch->arena_pool);
9eca087deb0b35 kernel/sched/ext_arena.c Tejun Heo 2026-05-22  59  	sch->arena_pool = NULL;
9eca087deb0b35 kernel/sched/ext_arena.c Tejun Heo 2026-05-22  60  }
9eca087deb0b35 kernel/sched/ext_arena.c Tejun Heo 2026-05-22  61  

:::::: The code at line 29 was first introduced by commit
:::::: 9eca087deb0b35f3170109a9630a6c5c06c2e222 sched_ext: Sub-allocator over kernel-claimed BPF arena pages

:::::: TO: Tejun Heo <tj@kernel.org>
:::::: CC: Tejun Heo <tj@kernel.org>

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

^ permalink raw reply	[flat|nested] only message in thread

only message in thread, other threads:[~2026-08-15  8:23 UTC | newest]

Thread overview: (only message) (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2026-08-15  8:22 kernel/sched/ext/arena.c:29: undefined reference to `gen_pool_create' kernel test robot

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.