https://bugs.kde.org/show_bug.cgi?id=520940

--- Comment #2 from Erik Skean <[email protected]> ---
Thanks for the steer. I instrumented the sysfs sampler to log
/sys/class/drm/card0-HDMI-A-1/status alongside /dpms on every change and caught
another event with both values:

    07:26:16  dpms=On   status=connected     (baseline)
    07:42:34  dpms=Off  status=connected     <-- OFF fires while connector is
still connected
    08:51:22  dpms=On   status=disconnected  (wake; LG briefly drops HPD as it
exits its own sleep)
    08:51:25  dpms=On   status=connected     (reconnects 3s later)

The 07:42:34 transition is the key datum: the kernel still reads
status=connected at the instant DPMS goes Off. If the monitor had auto-powered
itself off (auto-standby, energy-save, no-signal timeout, etc.) the status
would have flipped to "disconnected" at that point. It did not.

The brief status=disconnected at 08:51:22 happens during WAKE, not during OFF.
That is the monitor entering/exiting its internal sleep in response to the GPU
re-asserting signal on a connector that was held DPMS=Off for ~69 minutes. It
is a consequence, not the initiator.

login1 emitted DelayInhibited="sleep" PropertiesChanged at 07:42:33, exactly
one second before the DPMS=Off transition. Monitors cannot emit dbus signals,
so this is unambiguously a session/system-side actor.

Kernel HPD / hot-plug events at runtime: still zero. dmesg -wT shows only
boot-time amdgpu connector init; no transitions during any DPMS-off window.

Monitor identification from EDID:
- Manufacturer: GSM (LG Electronics), product 0x7767
- Monitor name descriptor: "LG ULTRAWIDE"
- Serial: 309NTCZ7K435, manufactured week 9 of 2023
- Native 3440x1440 over HDMI, single output (no second display, no KVM, no
dock, no MST tree)

Monitor OSD walked and verified:
- General -> Automatic Standby: Off
- General -> Energy Saving: Off
- No "Sleep Mode" or "Power Off Schedule" option present on this model
- Auto Input Switch, DAS Mode, Adaptive-Sync, Smart Energy Saving: none active
or not present
- No remaining monitor-side auto-power feature is enabled

Conclusion: the OFF event is compositor-initiated. PowerDevil's DPMSControl
plugin is firing despite TurnOffDisplayWhenIdle=false and
TurnOffDisplayIdleTimeoutSec=2147483647 (INT_MAX). The login1 sleep
delay-inhibitor signal pattern reproduces 1:1 with every DPMS=Off transition.

Happy to capture a KMS atomic-commit trace, or run kwin_wayland with
KWIN_OUTPUT_DEBUG or similar, if a more direct trace of who is calling
setDpmsMode would help triage further.

-- 
You are receiving this mail because:
You are watching all bug changes.

Reply via email to