I've taken a stab at updating bug text for SRU template as well. To avoid stepping on toes if you have other stuff in the pipe I'd prefer you drive the rest of the SRU process though, thanks!
** Description changed: + [Impact] + At shutdown time systemd will record the most recently used brightness value and then attempt to restore it the next boot. In order to do this; it currently will read the 'actual_brightness' value and use that to save. This normally works fine; but GPU drivers don't always show the same value in 'brightness' and 'actual_brightness' meaning that the wrong value may be restored the next boot. This problem is very prominently found on AMD APUs starting with kernel 6.15 due to a new feature called "custom brightness curves". Custom brightness curves are brightness values programmed by an OEM in the firmware to make the panel behave optimally. The 'actual_brightness' of some 'brightness' values will be lower. + The same issue can occur on systems using "panel power savings" which + behaves similarly. + For example if the brightness a user requested was 150, the actual_brightness might be 130. So the next boot the brightness will be "set" to 130, but the actual brightness might be 115. If the user reboots again it will be set to 115 for the next boot but the actual brightness might be 100. That is this gets worse and worse each reboot cycle until the system eventually boots up at minimum brightness. + [Test Plan] + + Verify brightness save/restore works properly on Intel UMA, AMD UMA, and + either I+N or A+N systems. + + [Where problems could occur] + + If a driver relies upon actual_brightness rather than brightness (which + is against kernel API [1] then the brightness might no longer be saved + and restored properly. + + [1] https://origin.kernel.org/doc/html/next/admin-guide/abi- + stable.html#abi-sys-class-backlight-backlight-actual-brightness + + [Other Info] + This has been fixed in upstream systemd in this commit: https://github.com/systemd/systemd/commit/9a224c307b36610e3675390eb2620e74d0f4efb0 - - This should be backported to any Ubuntu release that adopts kernel 6.15 - or later. That means that this should be fixed in Questing, followed by - backported to Noble because Noble will get OEM and HWE kernels that are - newer. + It's been brought into stable systemd releases carried by other distros as well. + No regressions have been reported upstream that I'm aware of. -- You received this bug notification because you are a member of Ubuntu Bugs, which is subscribed to Ubuntu. https://bugs.launchpad.net/bugs/2110585 Title: Stop using 'actual_brightness' in systemd To manage notifications about this bug go to: https://bugs.launchpad.net/ubuntu/+source/systemd/+bug/2110585/+subscriptions -- ubuntu-bugs mailing list [email protected] https://lists.ubuntu.com/mailman/listinfo/ubuntu-bugs
