Comments (18)
The output is shorter now but still errors out.
from corefreq.
Alright ill give that a go thanks
from corefreq.
I built the kernel myself, from the git repo branch 6.9. I use the 0001-sched-ext.patch from here and this is the config file I use to build it.
from corefreq.
Okay I've done bisecting the config file and found the culprit. I had CONFIG_TRIM_UNUSED_KSYMS=y
and you shouldn't be using that if you want to build out-of-tree modules. I had it included in my latest config file in an effort to harden the kernel using kernel-hardening-checker. Ultimately it's an oversight on my part but you'll probably want to add this info into the README.
from corefreq.
Results are:
- when module previously built for
6.9
withoutTRIM_UNUSED_KSYMS
insmod corefreqk.ko
insmod: ERROR: could not insert module corefreqk.ko: Unknown symbol in module
- After rebuilding CoreFreq
make -j
make[1]: Entering directory '/usr/lib/modules/6.9.0-arch1-1-latest/build'
MODPOST CoreFreq/build/Module.symvers
ERROR: modpost: "cppc_get_perf_ctrs" [CoreFreq/build/corefreqk.ko] undefined!
ERROR: modpost: "x86_spec_ctrl_base" [CoreFreq/build/corefreqk.ko] undefined!
ERROR: modpost: "__clocksource_register_scale" [CoreFreq/build/corefreqk.ko] undefined!
ERROR: modpost: "cpufreq_unregister_governor" [CoreFreq/build/corefreqk.ko] undefined!
ERROR: modpost: "clocksource_unregister" [CoreFreq/build/corefreqk.ko] undefined!
ERROR: modpost: "cppc_get_epp_perf" [CoreFreq/build/corefreqk.ko] undefined!
ERROR: modpost: "cppc_get_desired_perf" [CoreFreq/build/corefreqk.ko] undefined!
ERROR: modpost: "cpuidle_get_driver" [CoreFreq/build/corefreqk.ko] undefined!
ERROR: modpost: "cppc_set_enable" [CoreFreq/build/corefreqk.ko] undefined!
ERROR: modpost: "cppc_set_perf" [CoreFreq/build/corefreqk.ko] undefined!
WARNING: modpost: suppressed 3 unresolved symbol warnings because there were too many)
make[3]: *** [scripts/Makefile.modpost:145: CoreFreq/build/Module.symvers] Error 1
make[2]: *** [/usr/lib/modules/6.9.0-arch1-1-latest/build/Makefile:1871: modpost] Error 2
make[1]: *** [Makefile:240: __sub-make] Error 2
make[1]: Leaving directory '/usr/lib/modules/6.9.0-arch1-1-latest/build'
make: *** [Makefile:102: all] Error 2
zgrep TRIM_UNUSED_KSYMS /proc/config.gz
CONFIG_TRIM_UNUSED_KSYMS=y
It is now documented in README.md
since commit 6caa79d
from corefreq.
Hello,
Thanks for the issue.
Commit a4dbfc9 in branch develop
should fix compilation.
Can you please give it a try ?
from corefreq.
make[1]: Entering directory '/usr/src/linux-headers-6.9.0-x64v3-bore-ext'
make[1]: Leaving directory '/usr/src/linux-headers-6.9.0-x64v3-bore-ext'
cc -Wall -Wfatal-errors -pthread -D CORE_COUNT=256 -D TASK_ORDER=5 -D MAX_FREQ_HZ=7125000000 -D UBENCH=0 -D DELAY_TSC=1 \
-c x86_64/corefreqd.c -o build/corefreqd.o
cc -Wall -Wfatal-errors -pthread -D CORE_COUNT=256 -D TASK_ORDER=5 -D MAX_FREQ_HZ=7125000000 -D UBENCH=0 -D DELAY_TSC=1 \
-c x86_64/corefreqm.c -o build/corefreqm.o
cc -o build/corefreqd \
build/corefreqd.o build/corefreqm.o -lpthread -lm -lrt -lc
cc -Wall -Wfatal-errors -D CORE_COUNT=256 -D TASK_ORDER=5 -D MAX_FREQ_HZ=7125000000 -D UBENCH=0 -D DELAY_TSC=1 \
-c x86_64/corefreq-cli.c -o build/corefreq-cli.o
cc -Wall -Wfatal-errors -D CORE_COUNT=256 -D TASK_ORDER=5 -D MAX_FREQ_HZ=7125000000 -D UBENCH=0 -D DELAY_TSC=1 \
-c x86_64/corefreq-ui.c -o build/corefreq-ui.o
cc -Wall -Wfatal-errors -D CORE_COUNT=256 -D TASK_ORDER=5 -D MAX_FREQ_HZ=7125000000 -D UBENCH=0 -D DELAY_TSC=1 \
-c x86_64/corefreq-cli-rsc.c -o build/corefreq-cli-rsc.o
cc -Wall -Wfatal-errors -D CORE_COUNT=256 -D TASK_ORDER=5 -D MAX_FREQ_HZ=7125000000 -D UBENCH=0 -D DELAY_TSC=1 \
-c x86_64/corefreq-cli-json.c -o build/corefreq-cli-json.o
cc -Wall -Wfatal-errors -D CORE_COUNT=256 -D TASK_ORDER=5 -D MAX_FREQ_HZ=7125000000 -D UBENCH=0 -D DELAY_TSC=1 \
-c x86_64/corefreq-cli-extra.c -o build/corefreq-cli-extra.o
cc -o build/corefreq-cli \
build/corefreq-cli.o build/corefreq-ui.o \
build/corefreq-cli-rsc.o build/corefreq-cli-json.o \
build/corefreq-cli-extra.o -lm -lrt -lc
make[1]: Entering directory '/usr/src/linux-headers-6.9.0-x64v3-bore-ext'
CC [M] /home/bunkbail/CoreFreq/build/module/corefreqk.o
LD [M] /home/bunkbail/CoreFreq/build/corefreqk.o
MODPOST /home/bunkbail/CoreFreq/build/Module.symvers
ERROR: modpost: "cppc_get_perf_ctrs" [/home/bunkbail/CoreFreq/build/corefreqk.ko] undefined!
ERROR: modpost: "processors" [/home/bunkbail/CoreFreq/build/corefreqk.ko] undefined!
ERROR: modpost: "x86_spec_ctrl_base" [/home/bunkbail/CoreFreq/build/corefreqk.ko] undefined!
ERROR: modpost: "__clocksource_register_scale" [/home/bunkbail/CoreFreq/build/corefreqk.ko] undefined!
ERROR: modpost: "cpufreq_unregister_governor" [/home/bunkbail/CoreFreq/build/corefreqk.ko] undefined!
ERROR: modpost: "clocksource_unregister" [/home/bunkbail/CoreFreq/build/corefreqk.ko] undefined!
ERROR: modpost: "cppc_get_epp_perf" [/home/bunkbail/CoreFreq/build/corefreqk.ko] undefined!
ERROR: modpost: "cppc_get_desired_perf" [/home/bunkbail/CoreFreq/build/corefreqk.ko] undefined!
ERROR: modpost: "cpuidle_get_driver" [/home/bunkbail/CoreFreq/build/corefreqk.ko] undefined!
ERROR: modpost: "cppc_set_enable" [/home/bunkbail/CoreFreq/build/corefreqk.ko] undefined!
WARNING: modpost: suppressed 4 unresolved symbol warnings because there were too many)
make[3]: *** [scripts/Makefile.modpost:145: /home/bunkbail/CoreFreq/build/Module.symvers] Error 1
make[2]: *** [/usr/src/linux-headers-6.9.0-x64v3-bore-ext/Makefile:2029: modpost] Error 2
make[1]: *** [Makefile:240: __sub-make] Error 2
make[1]: Leaving directory '/usr/src/linux-headers-6.9.0-x64v3-bore-ext'
make: *** [Makefile:102: all] Error 2
from corefreq.
All these API functions, since 6.9
!
Can't be the mainstream kernel ?
from corefreq.
It's linux-xanmod. So that means xanmod disables these API functions? Pretty weird since Corefreq used to be working fine on kernel 6.8 (till the last update of 6.8.9. I updated to the latest stable of 6.9 then this happens.
from corefreq.
Oh it's probably due to sched-ext since I use sched-ext patchset as well. They mentioned about implementing cpufreq related feature on kernel 6.9. I guess Corefreq is incompatible with sched-ext then. Should I close this issue?
from corefreq.
I don't use any daemon/dkms modules. I compile directly from the git repo. Does Corefreq require a specific config in the kernel to be enabled?
from corefreq.
I don't use any daemon/dkms modules. I compile directly from the git repo. Does Corefreq require a specific config in the kernel to be enabled?
I deleted my comment . Turns out while the client doesn't work until you do the steps I mentioned. It's overall still does not work on 6.9. it is a shame that he hasn't fixed the issue I found, however, the issue being that the client breaks when you install or uninstall a new kernel
from corefreq.
I don't think your issue has anything to do with Corefreq specifically. I think you should report that to who ever packages the dkms module you're using. Sounds like the pacman hook got misconfigured or something. My error is that the kernel module itself errored out during compilation.
from corefreq.
Which one of the xanmod package is used in the AUR and which procedure or .config
to build kernel with specific scheduler ?
from corefreq.
I built the kernel myself, from the git repo branch 6.9. I use the 0001-sched-ext.patch from here and this is the config file I use to build it.
Thanks. It will take sometimes to reproduce your environment and track the missing CoreFreq prerequisites
Meanwhile I will suggest you rename the title issue to inform that it is a patched 6.9 kernel
from corefreq.
Done. I'll also try to use other configurations and try to bisect if possible.
from corefreq.
Hello
Fyi, CoreFreq is running OK with freshly built 6.9
Arch Linux kernel
I still have to experiment CONFIG_TRIM_UNUSED_KSYMS
...
Thanks for this tip
from corefreq.
Now building for TRIM_UNUSED_KSYMS
Rebooting ...
from corefreq.
Related Issues (20)
- Cannot compile on Almalinux 9.3 HOT 8
- Hardware Prefetch for Atom E-Cores HOT 9
- Steam Deck HOT 39
- Clarification on Intel Prerequisites: What's Being Built by `make`? HOT 3
- Unknown symbol cpufreq_unregister_driver (err -22) HOT 1
- Unraid crash on installation - Intel(R) Celeron(R) CPU J3455 HOT 22
- 1C not changing. Xeon E5 1650 v3 HOT 8
- [SOLVED] No temp readings on Epyc 9274F HOT 48
- coreqfreqd not working on 6.8.6-1-cachyos-echo HOT 5
- When uninstalling any kernel. corefreq will stop working HOT 3
- Building on Almalinux 9 Redux HOT 8
- [Intel: Gen 12,13,14] Memory Controller data HOT 79
- Changing Idle Limit HOT 2
- Alpine Linux v3.20: implicit declaration of function 'basename' HOT 2
- [request] CPU package power usage and pkg c states HOT 1
- AMD Zen4 7950X HOT 69
- Unexpected low votage and power on E5-2660 HOT 7
- Complie fail kernel 6.10 HOT 21
- [BUILD] dkms.conf : cleanup actions failure HOT 3
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from corefreq.