index | ~dongdigua

Clear Kernel Build Error? Fix It

when I compile Clear kernel with LLVM enabled, I got this error:

arch/x86/kernel/cpu/intel_epb.c:172:2: error: call to undeclared function 'sched_set_itmt_power_ratio';
ISO C99 and later do not support implicit function declarations [-Werror,-Wimplicit-function-declaration]
        sched_set_itmt_power_ratio(256 - val * 2, cpu);
        ^
arch/x86/kernel/cpu/intel_epb.c:172:2: note: did you mean 'sched_set_itmt_core_prio'?
./arch/x86/include/asm/topology.h:189:20: note: 'sched_set_itmt_core_prio' declared here
static inline void sched_set_itmt_core_prio(int prio, int core_cpu)
                   ^
1 error generated.

it's obvious that the sched_set_itmt_power_ratio function is undeclared
so I added the following like the function on top of it
and it is able to compile :)

--- /home/gentoo/linux/topology.h
+++ arch/x86/include/asm/topology.h
@@ -189,6 +189,9 @@
 static inline void sched_set_itmt_core_prio(int prio, int core_cpu)
 {
 }
+static inline void sched_set_itmt_power_ratio(int prio, int core_cpu)
+{
+}
 static inline int sched_set_itmt_support(void)
 {
        return 0;

Notice: I'm ignorant about C programming, so if anything's wrong, please contact me

dongdigua CC BY-NC-SA 禁止转载到私域(公众号,非自己托管的博客等)

Date: 2022-11-04 Fri 00:00 Build: 2024-11-18 Mon 12:05

Proudly made with Emacs Org mode

Email me to add comment