Bug 508982

Summary: Screen brightness sometimes updates automatically (without user input), possibly when powerdevil crashes
Product: [Plasma] plasmashell Reporter: Alessandro Botta <alexduemila04>
Component: Power management & brightnessAssignee: Plasma Bugs List <plasma-bugs-null>
Status: RESOLVED WORKSFORME    
Severity: minor CC: kdedev, nate
Priority: NOR    
Version First Reported In: 6.4.4   
Target Milestone: 1.0   
Platform: Arch Linux   
OS: Linux   
See Also: https://bugs.kde.org/show_bug.cgi?id=508434
Latest Commit: Version Fixed/Implemented In:
Sentry Crash Report:

Description Alessandro Botta 2025-08-31 19:02:34 UTC
SUMMARY
Screen brightness sometimes updates automatically (without user input). When this happens, the system seems to think the brightness is still at 100%, even though the actual brightness is lower. As a result, pressing the "increase brightness" key has no effect.

STEPS TO REPRODUCE
1. Set brightness to 100% (using keyboard shortcut or brightness slider).
2. Wait until the system automatically lowers brightness (not triggered by user).
3. Try to increase brightness again using the keyboard shortcut.

OBSERVED RESULT
Brightness does not increase because the system still thinks it is at 100%.
The only workaround is to first lower brightness (e.g., to 95%) and then raise it again to 100%.

EXPECTED RESULT
The brightness should increase to the actual maximum brightness when requested, even after automatic adjustments.

SOFTWARE/OS VERSIONS
- KDE Plasma: 6.4.4
- KDE Frameworks: 6.4.4
- Qt Version: 6.9.1
- Kernel: 6.16.1-arch1-1
- Distribution: Arch Linux (x86_64)

HARDWARE
- Laptop model: LG Gram 16Z90P (Intel i7-1165G7)
- GPU: Intel TigerLake-LP GT2 [Iris Xe Graphics] (i915 driver)

ADDITIONAL INFORMATION
It seems that the automatic brightness process does not update the internal brightness state variable correctly, causing the UI to believe it is still at 100%. This results in the system refusing to increase brightness above the incorrectly assumed maximum.
Comment 1 TraceyC 2025-10-01 17:29:23 UTC
Thanks for the bug report. Could you check entries for org.kde.powerdevil in your system logs for just before and just after the brightness changes by itself?

Also, what version of ddcutil is installed on your system?
Comment 2 TraceyC 2025-10-06 17:09:41 UTC
This may be a duplicate of bug 508434
Comment 3 Alessandro Botta 2025-10-13 14:55:38 UTC
(In reply to TraceyC from comment #1)
> Thanks for the bug report. Could you check entries for org.kde.powerdevil in
> your system logs for just before and just after the brightness changes by
> itself?

This is my first report, so I don't know if I'm doing something incorrect or not, I noticed some minutes ago that the brightness changed, but I don't remember when (It could be 1/2 hours ago or even more), I paste here the powerdevil logs happened today, hope that helps: 

┬─[ale@ale:~]─[04:46:55 PM]─[B:53%, 02:48:03 remaining]
╰─>$ journalctl --since "today" | grep powerdevil                                                              (base) 
Oct 13 00:15:42 ale systemd[1]: Started dbus-:1.2-org.kde.powerdevil.backlighthelper@26.service.
Oct 13 00:15:52 ale systemd[1]: dbus-:1.2-org.kde.powerdevil.backlighthelper@26.service: Deactivated successfully.
Oct 13 00:25:24 ale systemd[1]: Started dbus-:1.2-org.kde.powerdevil.backlighthelper@27.service.
Oct 13 00:25:34 ale systemd[1]: dbus-:1.2-org.kde.powerdevil.backlighthelper@27.service: Deactivated successfully.
Oct 13 00:25:36 ale systemd[1]: Started dbus-:1.2-org.kde.powerdevil.backlighthelper@28.service.
Oct 13 00:25:46 ale systemd[1]: dbus-:1.2-org.kde.powerdevil.backlighthelper@28.service: Deactivated successfully.
Oct 13 00:26:07 ale systemd[1081]: plasma-powerdevil.service: Consumed 32.025s CPU time, 11.8M memory peak, 3M memory swap peak.
Oct 13 00:26:07 ale systemd[1]: Removed slice Slice /system/dbus-:1.2-org.kde.powerdevil.backlighthelper.
Oct 13 00:26:07 ale systemd[1]: Removed slice Slice /system/dbus-:1.2-org.kde.powerdevil.chargethresholdhelper.
Oct 13 00:26:07 ale systemd[1]: Removed slice Slice /system/dbus-:1.2-org.kde.powerdevil.discretegpuhelper.
Oct 13 14:27:00 ale org_kde_powerdevil[2334]: Starting libddcutil. library built Not set at Not set. stdout_stderr_redirected=true
Oct 13 14:27:00 ale org_kde_powerdevil[2334]: Initializing libddcutil.  ddcutil version: 2.2.1, shared library: /usr/lib/libddcutil.so.5.3.0
Oct 13 14:27:00 ale org_kde_powerdevil[2334]: [  2334] Options passed from client:
Oct 13 14:27:00 ale org_kde_powerdevil[2334]: [  2334] Applying combined libddcutil options:
Oct 13 14:27:02 ale org_kde_powerdevil[2334]: [  2334] (check_supported_feature) busno=1, sleep-multiplier =  2.00. Testing for supported feature 0x10 returned Error_Info[DDCRC_RETRIES in ddc_write_read_with_retry, causes: DDCRC_DDC_DATA(10)]
Oct 13 14:27:02 ale org_kde_powerdevil[2334]: Library initialization complete.
Oct 13 14:27:02 ale org_kde_powerdevil[2334]: Watching for DPMS state changes unimplemented
Oct 13 14:27:02 ale org_kde_powerdevil[2334]: [  2334] Watching for DPMS state changes unimplemented
Oct 13 14:27:02 ale org_kde_powerdevil[2334]: [  2334] Watching for display connection changes, resolved watch mode = Watch_Mode_Xevent, poll loop interval = 100 millisec
Oct 13 14:27:02 ale org_kde_powerdevil[2334]: [  2334]                                          extra_stabilization_millisec: 0,  stabilization_poll_millisec: 100
Oct 13 14:27:02 ale org_kde_powerdevil[2334]: [  2334] libddcutil recheck thread 0x5652def2ca60 started
Oct 13 14:27:02 ale org_kde_powerdevil[2334]: [  2334] libddcutil watch thread 0x5652def2cda0 started
Oct 13 14:27:02 ale org_kde_powerdevil[2334]: [  2557] (dw_recheck_displays_func) Recheck interval: Sleeping for 200 milliseconds
Oct 13 14:27:02 ale systemd[1]: Created slice Slice /system/dbus-:1.2-org.kde.powerdevil.discretegpuhelper.
Oct 13 14:27:02 ale systemd[1]: Started dbus-:1.2-org.kde.powerdevil.discretegpuhelper@0.service.
Oct 13 14:27:02 ale systemd[1]: Created slice Slice /system/dbus-:1.2-org.kde.powerdevil.chargethresholdhelper.
Oct 13 14:27:02 ale systemd[1]: Started dbus-:1.2-org.kde.powerdevil.chargethresholdhelper@0.service.
Oct 13 14:27:02 ale systemd[1]: Created slice Slice /system/dbus-:1.2-org.kde.powerdevil.backlighthelper.
Oct 13 14:27:02 ale systemd[1]: Started dbus-:1.2-org.kde.powerdevil.backlighthelper@0.service.
Oct 13 14:27:02 ale org_kde_powerdevil[2334]: org.kde.powerdevil: Handle button events action could not check for screen configuration
Oct 13 14:27:12 ale systemd[1]: dbus-:1.2-org.kde.powerdevil.chargethresholdhelper@0.service: Deactivated successfully.
Oct 13 14:27:12 ale systemd[1]: dbus-:1.2-org.kde.powerdevil.discretegpuhelper@0.service: Deactivated successfully.
Oct 13 14:27:12 ale systemd[1]: dbus-:1.2-org.kde.powerdevil.backlighthelper@0.service: Deactivated successfully.
Oct 13 14:28:00 ale drkonqi-coredump-processor[2329]: "/usr/lib/org_kde_powerdevil" 18419 "/var/lib/systemd/coredump/core.org_kde_powerde.1000.9e9baeec904b4028931f8d34096ccf1d.18419.1751807423000000.zst"
Oct 13 14:28:00 ale drkonqi-coredump-processor[2329]: "/usr/lib/org_kde_powerdevil" 1656 "/var/lib/systemd/coredump/core.org_kde_powerde.1000.b0696e100f6f4ea4bf23abb2d32f5c36.1656.1758120138000000.zst"
Oct 13 15:23:19 ale systemd[1]: Started dbus-:1.2-org.kde.powerdevil.backlighthelper@1.service.
Oct 13 15:23:29 ale systemd[1]: dbus-:1.2-org.kde.powerdevil.backlighthelper@1.service: Deactivated successfully.
Oct 13 15:24:36 ale systemd[1]: Started dbus-:1.2-org.kde.powerdevil.backlighthelper@2.service.
Oct 13 15:24:46 ale systemd[1]: dbus-:1.2-org.kde.powerdevil.backlighthelper@2.service: Deactivated successfully.
Oct 13 16:06:19 ale systemd[1]: Started dbus-:1.2-org.kde.powerdevil.backlighthelper@3.service.
Oct 13 16:06:29 ale systemd[1]: dbus-:1.2-org.kde.powerdevil.backlighthelper@3.service: Deactivated successfully.
Oct 13 16:10:30 ale org_kde_powerdevil[2334]: [  2558] Required 3 extra 100 millisecond calls to i2c_buses_w_edid_as_bitset()
Oct 13 16:47:28 ale systemd[1]: Started dbus-:1.2-org.kde.powerdevil.backlighthelper@4.service.

 
> Also, what version of ddcutil is installed on your system?

ddcutil 2.2.1
Comment 4 TraceyC 2025-10-14 18:08:31 UTC
Thanks for the logs and the ddcutil version, that is indeed helpful. It looks like powerdevil crashed a couple of times. I see, from the logs:

Oct 13 14:28:00 ale drkonqi-coredump-processor[2329]: "/usr/lib/org_kde_powerdevil" 18419 "/var/lib/systemd/coredump/core.org_kde_powerde.1000.9e9baeec904b4028931f8d34096ccf1d.18419.1751807423000000.zst"

My guess is that the brightness changed without your input when powerdevil crashed. At this point we'll need a backtrace to investigate further.

If you go to your apps menu and search, you should have Crashed Process Viewer. Open that up and look for the latest entry for powerdevil or kde_powerdevil. If you have one of those, click on Run Interactive Debugger, which will open a terminal.

If you see 
--Type <RET> for more, q to quit, c to continue without paging--

Type "c"
Then when you get the gdb prompt type in "bt"

That should produce a backtrace, which you can copy and paste into this report.

If that doesn't work, there are a couple of other ways to get a backtrace. The first to try would be the coredumpctl command-line program, as detailed in https://community.kde.org/Guidelines_and_HOWTOs/Debugging/How_to_create_useful_crash_reports#Retrieving_a_backtrace_using_coredumpctl
Comment 5 Bug Janitor Service 2025-10-29 03:47:48 UTC
🐛🧹 ⚠️ This bug has been in NEEDSINFO status with no change for at least 15 days. Please provide the requested information, then set the bug status to REPORTED. If there is no change for at least 30 days, it will be automatically closed as RESOLVED WORKSFORME.

For more information about our bug triaging procedures, please read https://community.kde.org/Guidelines_and_HOWTOs/Bug_triaging.

Thank you for helping us make KDE software even better for everyone!
Comment 6 Bug Janitor Service 2025-11-13 03:47:44 UTC
🐛🧹 This bug has been in NEEDSINFO status with no change for at least 30 days. Closing as RESOLVED WORKSFORME.