Closed Technologicat closed 8 months ago
Using ArchLinux, CoreFreq is building/running fine with both mainstream 6.5 and next 6.6
Looking at the compilation issue, you will notice your distribution must have CONFIG_CPU_FREQ
Can you check if it is present in /proc/config
?
But also if any patch has modified your kernel source tree ?
Also observed that up to the latest Linux rc
cpufreq_unregister_driver
is declared
https://www.tuxedocomputers.com/en/TUXEDO-OS_1.tuxedo#
Modified Linux kernel Optimized for TUXEDO-Hardware
TUXEDO 6.2
TUXEDO 6.5
It looks the same as the mainstream kernel.
6.2.0-10027-tuxedo
Do you have rebooted PC since the 6.5
upgrade ?
Yes, I rebooted the PC. Always useful to do that ASAP after a kernel/driver upgrade. :)
No /proc/config
, but there was a /boot/config
matching the kernel version, which had the following three matches for CPUFREQ
:
CONFIG_X86_PCC_CPUFREQ=y
CONFIG_X86_ACPI_CPUFREQ=y
CONFIG_X86_ACPI_CPUFREQ_CPB=y
TUXEDO-branded kernel, good point. The machine is actually a CLEVO, and the OS is Linux Mint 21.1. It's the same one as last spring, when you upgraded the memory detection in CoreFreq to support Alder Lake.
For background: TUXEDO is a CLEVO-based Linux laptop vendor. My previous system was a TUXEDO and I had an excellent experience with them, but this time I ended up with a base CLEVO model, because TUXEDO didn't offer the specs I wanted at the time when I needed a new laptop. They did refresh their offerings after a few months, so bad timing on my part, but sometimes waiting is not an option. :)
Anyway, essentially the hardware is the same as what TUXEDO uses, although the exact combination may differ, since CLEVO makes a lot of models. I've mainly used the TUXEDO apt repository to get two things:
tuxedo-keyboard-ite
.)But when the repo is enabled, Mint's Update Manager does pull in their kernels, too.
6.2.0-10007-tuxedo
did work for me (note different build number; didn't try 10027). That's why I thought something had changed.
Indeed, looking at your screenshots, in 6.2.0 the return type of cpufreq_unregister_driver
is int
, whereas in 6.5.0-10005-tuxedo
it's void
, and this is what is breaking the build.
I'll try with a different kernel and report back. Thanks for the help!
Indeed, looking at your screenshots, in 6.2.0 the return type of
cpufreq_unregister_driver
isint
, whereas in6.5.0-10005-tuxedo
it'svoid
, and this is what is breaking the build.
Yes but there's a conditional build based on the following:
#if (LINUX_VERSION_CODE < KERNEL_VERSION(6, 3, 0)) && (!defined(CONFIG_CACHY))
But your 6.5.0-10005-tuxedo
is wrongly going through the case lower than 6.3
It's worth to check if you have CONFIG_CACHY
set or not in the current /boot/config
?
Also it happens that the kernel version written in filename is not the same as the computed version integer within LINUX_VERSION_CODE
No match for CONFIG_CACHY
, so I'd assume it's not set.
Ok, sounds like something wrong with the kernel metadata, then. I'll try with another 6.5 kernel as soon as I get the chance.
Update - I haven't had the time to install and test with an alternative kernel, sorry.
But the latest CoreFreq (pulled just now) compiles fine and works on kernel 6.5.0-10008-tuxedo
. Did you change something? :)
Anyway, it's working again, so I think we can close this.
Update - I haven't had the time to install and test with an alternative kernel, sorry.
But the latest CoreFreq (pulled just now) compiles fine and works on kernel
6.5.0-10008-tuxedo
. Did you change something? :)Anyway, it's working again, so I think we can close this.
Great news but nothing has changed to solve your issue.
Going back to my comment:
But your 6.5.0-10005-tuxedo is wrongly going through the case lower than 6.3
I presume one of your distribution updates has fixed that kernel source code inconsistency.
Regards
That's curious. Well, if the distributors fixed the kernel source package, that's the proper solution anyway - no need to make changes to CoreFreq for this.
Thanks for the support!
Hi,
I recently upgraded to kernel 6.5.0, and now CoreFreq will not compile:
Out of curiosity, I tried disabling
-Wfatal-errors
in theMakefile
, but it did not help.It seems something has changed in the kernel, somewhere after 6.2.0 (where CoreFreq worked correctly). And yes, I rebooted after upgrading the new kernel packages, so I'm sure it's seeing the correct kernel headers. :)
So, I'd like to ask, are there plans for Linux 6.5 support in CoreFreq?