Platform_profile changes back to balanced automatically

Hi,

I’m using Fedora 35 on my Thinkpad T490. It’s a few days old clean install.

When I try to change the performance mode to performance or power saver from balanced, after a while it automatically switches back to balanced.

$ cat ./sys/firmware/acpi/platform_profile
balanced
$ powerprofilesctl
performance:
Driver: platform_profile
Degraded: no

  • balanced:
    Driver: platform_profile

    power-saver:
    Driver: platform_profile

The time passing between I change it to performance, and when it changes back to balanced seems to be fully random. It varies from 2 sec to a couple of minutes.

I already reported it to power-profiles-daemon’s Gitlab, but after some investigation, seems like the issue is with the firmware.

Kernel version: 5.15.12-200.fc35.x86_64

kernel: thinkpad_acpi: ThinkPad ACPI Extras v0.26
kernel: thinkpad_acpi: http://ibm-acpi.sf.net/
kernel: thinkpad_acpi: ThinkPad BIOS N2IET97W (1.75 ), EC N2IHT40W
kernel: thinkpad_acpi: Lenovo ThinkPad T490, model 20N20009HV

No dnf updates available, and according to fwupdmgr I’m using the latest firmware for every device.

Which logs should I check to identify why it is always changing back?

Thanks.

If it is a firmware issue, it may not be in the logs.

Searching through jounalctl -b would probably be the first place to check.

1 Like

I no longer have a Thinkpad in order to check, but I seem to recall from long ago that there is a BIOS setting around power management where I had to allow the computer operating system to control those settings. Next time you’re rebooting you might want to look at the BIOS power management settings. My recollections are from more than 10 years ago so this could be a false memory on my part. Good luck

Thanks for both of your replies.

I can’t find anything like you mentioned in the BIOS settings.

Neither in journal, I watched it with the -f flag while changing to performance mode, and nothing got logged that can be connected to my issue.

Lenovo’s documentation for this laptop model focuses on the Windows operating system and provides only the briefest of mention of Linux, unfortunately. My recollection was that for some Thinkpad models, in the settings on this page, you could choose to let the operating system set the modes, or set them in the BIOS, disallowing the operating system’s attempts to set them through its own user interfaces. So if there is a menu choice for the modes and schemes that implies OS control, you want that. If there is no such setting, then I’m completely wrong.
I did notice that there have been some issues with some of the BIOS updates for the T490 that caused fans to stay on at 100%, other issues around performance. You may want to review those in the Lenovo user forums.
Good luck

You did not say whether you were having this issue on battery or on AC or both, but the image you posted clearly shows performance to be set to balanced when on the battery and maximum on AC. Thermal management is ‘balanced’ and speedstep is ‘battery optimized’.

This would indicate that bios may be overriding the OS settings.

I’m on AC at all times, including all the cases I described above.

:thinking: how about disable it all. Maybe with disabling, it will leave the power management to OS. My bios don’t have those kind of things (of course with different manufacture).

If your disabling it, please take attention to fan speed.

kernel.org - Intel(R) Speed Select Technology User Guide

A year later, and using a Lenovo ThinkPad X1 Carbon Gen 9, and I’m having this same issue. I find it annoying that I can’t control the power profile of my laptop. Trying to choose “Performance” never works, and trying to choose “Balanced” only works for a few seconds before reverting to the “Power Save” profile. This is a new laptop, and it feels slower than its 5-year old replacement. I suspect the laptop is crippling itself to save the batter. I primarily run my laptop in my office connected to a Thunderbolt 3 dock (it charges my laptop, and lets my drive two monitors while my laptop lid stays closed.)

I tried to turn off all of my BIOS/UEFI power management options, but it didn’t help. Here are my logs and screenshots from the UEFI.

[jcall@jcall-laptop ~]$ journalctl -b0 --no-pager -lu power-profiles-daemon
Feb 07 19:09:47 jcall-laptop systemd[1]: Starting power-profiles-daemon.service - Power Profiles daemon...
Feb 07 19:09:48 jcall-laptop systemd[1]: Started power-profiles-daemon.service - Power Profiles daemon.
Feb 07 19:13:32 jcall-laptop systemd[1]: Stopping power-profiles-daemon.service - Power Profiles daemon...
Feb 07 19:13:32 jcall-laptop systemd[1]: power-profiles-daemon.service: Deactivated successfully.
Feb 07 19:13:32 jcall-laptop systemd[1]: Stopped power-profiles-daemon.service - Power Profiles daemon.
Feb 07 19:13:32 jcall-laptop systemd[1]: Starting power-profiles-daemon.service - Power Profiles daemon...
Feb 07 19:13:32 jcall-laptop power-profiles-[7341]: Starting power-profiles-daemon version 0.12
Feb 07 19:13:32 jcall-laptop power-profiles-[7341]: Using cross-namespace EXTERNAL authentication (this will deadlock if server is GDBus < 2.73.3)
Feb 07 19:13:32 jcall-laptop power-profiles-[7341]: Handling driver 'fake'
Feb 07 19:13:32 jcall-laptop power-profiles-[7341]: probe() failed for driver fake, skipping
Feb 07 19:13:32 jcall-laptop power-profiles-[7341]: Handling driver 'platform_profile'
Feb 07 19:13:32 jcall-laptop systemd[1]: Started power-profiles-daemon.service - Power Profiles daemon.
Feb 07 19:13:32 jcall-laptop power-profiles-[7341]: _g_io_module_get_default: Found default implementation local (GLocalVfs) for ‘gio-vfs’
Feb 07 19:13:32 jcall-laptop power-profiles-[7341]: ACPI performance_profile is now b, so profile is detected as balanced
Feb 07 19:13:32 jcall-laptop power-profiles-[7341]: Found a dytc_lapmode sysfs attribute to thinkpad_acpi
Feb 07 19:13:32 jcall-laptop power-profiles-[7341]: Handling driver 'intel_pstate'
Feb 07 19:13:32 jcall-laptop power-profiles-[7341]: Driver 'platform_profile' already probed, skipping driver 'intel_pstate'
Feb 07 19:13:32 jcall-laptop power-profiles-[7341]: Handling driver 'placeholder'
Feb 07 19:13:32 jcall-laptop power-profiles-[7341]: Driver 'platform_profile' already probed, skipping driver 'placeholder'
Feb 07 19:13:32 jcall-laptop power-profiles-[7341]: Handling action 'trickle_charge'
Feb 07 19:13:32 jcall-laptop power-profiles-[7341]: Applying profile 'balanced' from configuration file
Feb 07 19:13:32 jcall-laptop power-profiles-[7341]: Setting active profile 'balanced' for reason 'reset' (current: 'balanced')
Feb 07 19:13:32 jcall-laptop power-profiles-[7341]: Can't switch to balanced mode, already there
Feb 07 19:15:56 jcall-laptop power-profiles-[7341]: Transitioning active profile from 'balanced' to 'performance' by user request
Feb 07 19:15:56 jcall-laptop power-profiles-[7341]: Setting active profile 'performance' for reason 'user' (current: 'balanced')
Feb 07 19:15:56 jcall-laptop power-profiles-[7341]: Writing 'performance' to '/sys/firmware/acpi/platform_profile'
Feb 07 19:15:56 jcall-laptop power-profiles-[7341]: Successfully switched to profile performance
Feb 07 19:15:56 jcall-laptop power-profiles-[7341]: /sys/firmware/acpi/platform_profile changed
Feb 07 19:15:56 jcall-laptop power-profiles-[7341]: ACPI performance_profile is now l, so profile is detected as power-saver
Feb 07 19:15:56 jcall-laptop power-profiles-[7341]: Driver 'platform_profile' switched internally to profile 'power-saver' (current: 'performance')
Feb 07 19:15:56 jcall-laptop power-profiles-[7341]: Setting active profile 'power-saver' for reason 'internal' (current: 'performance')
Feb 07 19:15:56 jcall-laptop power-profiles-[7341]: Can't switch to power-saver mode, already there
Feb 07 19:15:56 jcall-laptop power-profiles-[7341]: /sys/firmware/acpi/platform_profile changed
Feb 07 19:15:56 jcall-laptop power-profiles-[7341]: ACPI performance_profile is now l, so profile is detected as power-saver
Feb 07 19:15:56 jcall-laptop power-profiles-[7341]: /sys/firmware/acpi/platform_profile changed
Feb 07 19:15:56 jcall-laptop power-profiles-[7341]: ACPI performance_profile is now l, so profile is detected as power-saver
Feb 07 19:15:56 jcall-laptop power-profiles-[7341]: /sys/firmware/acpi/platform_profile changed
Feb 07 19:15:56 jcall-laptop power-profiles-[7341]: ACPI performance_profile is now l, so profile is detected as power-saver
Feb 07 19:15:58 jcall-laptop power-profiles-[7341]: /sys/firmware/acpi/platform_profile changed
Feb 07 19:15:58 jcall-laptop power-profiles-[7341]: ACPI performance_profile is now l, so profile is detected as power-saver

The way that screen shows the power config which is indented below the speed step item seems to imply that the power settings are subordinate to the speed step. I don’t have a lenovo to compare but the image really seems to imply that.

Also, you display “balanced” for when on the battery and ‘maximized’ for when on AC. Does it actually act that way or not? It seems reasonable that balanced would be selected for running on the battery as that is midway between slow and fast with corresponding battery drain.

Your issue could be unrelated to this year old thread, but instead there is a recent kernel issue preventing power profiles to work as expected

https://discussion.fedoraproject.org/t/gnome-power-manager-keep-reporting-performance-mode-temporary-disabled/77587

https://discussion.fedoraproject.org/t/power-mode-options-balanced-and-performance-limited-or-not-avilable-in-kernel-versions-6-1-7-and-6-1-8/59866

1 Like

Thank you @computersavvy and @alciregi

A kernel issue was causing this. I’ve updated to a testing kernel (kernel-6.1.10-200.fc37.x86_64) and everything works as expected now.

Based on the fan noise, I would say that Gnome / power-profiles-daemon was wrong when it showed that my laptop was in “Power Saver” mode. Instead I believe my laptop was honoring the UEFI setting to run at Maximum Performance when connected to A/C power.

P.S. I’ve also reset my UEFI settings to Defaults which invalidates my previous photos.