Created attachment 873558 [details] Update monitoring script. Reads /proc/interrupts and /proc/softirqs Hello Rory, I'm happy that 15.6 beta works for you, but since 15.5 is going to be supported until December 2024, I'd like to at least check if the interrupt hypothesis holds water. That is, if it's actually the high number of interrupts that keep the cpu active and prevent it from going idle, resulting in high average clock frequency. Of course that is contingent on you having time and opportunity to gather data. No obligation. If you agree to proceed, first we need to establish the kernel versions we're going to test. There are two Leap 15.5 kernels I'm interested in: - kernel-default-5.14.21-150500.53.2.x86_64.rpm This is the stock kernel that comes with a fresh Leap 15.5 installation, and is the one you used when you sent data at comment 6 and comment 7. It is found in the repository http://download.opensuse.org/distribution/leap/15.5/repo/oss - kernel-default-5.14.21-150500.55.52.1.x86_64.rpm This is the latest kernel update for Leap 15.5, released last March 6. It is found in the repository http://download.opensuse.org/update/leap/15.5/sle Then I'llask you to install kernel headers matching these versions (I suspect the errors at comment 13 and comment 23 are due to the headers version not matching the kernel version), and run the attached script on both. Here are the steps: 1. [Check the zypper repositories] Make sure you have the "Leap 15.5 OSS" and "SLE 15.5 Update" repositories enabled. It is generally the case, but best be sure. You'll check that with the command: $ zypper repos --uri Among all repositories in the list, you should see two with the urls I mentioned above. If you don't, add them like so: $ zypper addrepo http://download.opensuse.org/distribution/leap/15.5/repo/oss openSUSE-Leap-15.5-Oss $ zypper addrepo http://download.opensuse.org/update/leap/15.5/sle repo-sle-update $ zypper refresh 2. [Search kernels using the "--details" option] Search for the two kernels we need, ie the initial Leap 15.5 kernel and the latest update: $ zypper search --type package --details /^kernel-default$/ Since we're giving the "--details" option, we'll be seeing all versions, no only the latest one. The output should resemble the following: S | Name | Type | Version | Arch | Repository ---+----------------+---------+-------------------------+--------+----------------------- v | kernel-default | package | 5.14.21-150500.55.52.1 | x86_64 | repo-sle-update v | kernel-default | package | 5.14.21-150500.55.49.1 | x86_64 | repo-sle-update v | kernel-default | package | 5.14.21-150500.55.44.1 | x86_64 | repo-sle-update v | kernel-default | package | 5.14.21-150500.55.39.1 | x86_64 | repo-sle-update v | kernel-default | package | 5.14.21-150500.55.36.1 | x86_64 | repo-sle-update v | kernel-default | package | 5.14.21-150500.55.31.1 | x86_64 | repo-sle-update v | kernel-default | package | 5.14.21-150500.55.28.1 | x86_64 | repo-sle-update v | kernel-default | package | 5.14.21-150500.55.22.1 | x86_64 | repo-sle-update v | kernel-default | package | 5.14.21-150500.55.19.1 | x86_64 | repo-sle-update v | kernel-default | package | 5.14.21-150500.55.12.1 | x86_64 | repo-sle-update v | kernel-default | package | 5.14.21-150500.55.7.1 | x86_64 | repo-sle-update i | kernel-default | package | 5.14.21-150500.53.2 | x86_64 | openSUSE-Leap-15.5-Oss In the first column, "i" means "installed", "v" means "a different version is installed". Unlike other packages, there can be multiple versions of the kernel installed at the same time. 3. [Install kernels] Install (if they aren't already) the first and last of that list, meaning the initial 15.5 kernel and the latest update. This part is tricky! You'll need to specify both the package name (kernel-default, second column) and the version (fourth column). The way you do that is joining the name and the version with a "dash" sign (-), like so: $ zypper install kernel-default-5.14.21-150500.53.2 $ zypper install kernel-default-5.14.21-150500.55.52.1 4. [Search with "--details" and install kernel headers with matching versions] Search for, and install, the kernel-default-devel packages (which contains kernel headers, needed for that script to collect interrupt data) with version matching those of the kernels we just installed. Again, I think a version mismatch between kernel and headers is the reason of the errors at comment 13 and comment 23. Very similar process as before: $ zypper search --type package --details /^kernel-default-devel$/ $ zypper install kernel-default-devel-VERSION-GOES-HERE 5. [Collect data for kernel 5.14.21-150500.53.2] Reboot, and use the grub menu to select the 5.14.21-150500.53.2 kernel. Run the attached script, which should hopefully work. Attach the .tgz file it produces. 6. [Collect data for kernel 5.14.21-150500.55.52.1] Same story for the other kernel (latest update). Attach the result. 7. [Collect system information with "supportconfig"] There is a script that generates a summary of the machine hardware and configuration. It's from the "supportutils" package. The command is "supportconfig". Please run it and attach the result.