All of lore.kernel.org
 help / color / mirror / Atom feed
From: kernel test robot <lkp@intel.com>
To: Tejun Heo <tj@kernel.org>
Cc: oe-kbuild-all@lists.linux.dev, linux-kernel@vger.kernel.org,
	Andrea Righi <arighi@nvidia.com>
Subject: kernel/sched/ext/arena.c:29: undefined reference to `gen_pool_create'
Date: Sat, 15 Aug 2026 16:22:24 +0800	[thread overview]
Message-ID: <202608151632.3p91bTQj-lkp@intel.com> (raw)

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

                 reply	other threads:[~2026-08-15  8:23 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=202608151632.3p91bTQj-lkp@intel.com \
    --to=lkp@intel.com \
    --cc=arighi@nvidia.com \
    --cc=linux-kernel@vger.kernel.org \
    --cc=oe-kbuild-all@lists.linux.dev \
    --cc=tj@kernel.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.