kernel/Kconfig.preempt | 1 + 1 file changed, 1 insertion(+)
kernel/sched/ext/arena.c uses the gen_pool allocator, which is built only
when GENERIC_ALLOCATOR is set. SCHED_CLASS_EXT doesn't select it, so on
configs where nothing else does, the build fails to link:
build_policy.o: undefined reference to `gen_pool_create'
build_policy.o: undefined reference to `gen_pool_for_each_chunk'
build_policy.o: undefined reference to `gen_pool_destroy'
Fixes: 9eca087deb0b ("sched_ext: Sub-allocator over kernel-claimed BPF arena pages")
Reported-by: kernel test robot <lkp@intel.com>
Closes: https://lore.kernel.org/oe-kbuild-all/202608151315.tvN3X0Oq-lkp@intel.com/
Closes: https://lore.kernel.org/oe-kbuild-all/202608151632.3p91bTQj-lkp@intel.com/
Signed-off-by: Tejun Heo <tj@kernel.org>
---
kernel/Kconfig.preempt | 1 +
1 file changed, 1 insertion(+)
--- a/kernel/Kconfig.preempt
+++ b/kernel/Kconfig.preempt
@@ -169,6 +169,7 @@ config SCHED_CORE
config SCHED_CLASS_EXT
bool "Extensible Scheduling Class"
depends on BPF_SYSCALL && BPF_JIT && DEBUG_INFO_BTF
+ select GENERIC_ALLOCATOR
select STACKTRACE if STACKTRACE_SUPPORT
help
This option enables a new scheduler class sched_ext (SCX), which
Don't kick yourself in the face too hard because you applied it, but since this is in base kernel/, and I understand it, I'll review it! :) >build_policy.o: undefined >reference to `gen_pool_create' >build_policy.o: undefined >reference to >`gen_pool_for_each_chunk' >build_policy.o: undefined >reference to `gen_pool_destroy' gnarly! But, why adapt to "hppa"? Its literally been "fully" retired since 2021! Someone in the kernel, no idea who, said "Why need to adapt to these old architectures? Why can't they just fork it and fix it OOT?" But that's more an opinion thing, in my opinion it should just be OOT, but the people who work on hppa will be pissed. Heh. Just know that was a small rant, anyway, good patch Reviewed-by: Bradley Morgan <include@grrlz.net> Thanks!
© 2016 - 2026 Red Hat, Inc.