| Summary: | A disabled screen disconnecting and reconnecting itself causes display layout updates | ||
|---|---|---|---|
| Product: | [Plasma] kwin | Reporter: | qlum <qlumreg> |
| Component: | platform-drm | Assignee: | KWin default assignee <kwin-bugs-null> |
| Status: | REPORTED --- | ||
| Severity: | normal | CC: | dennis, nate, vlad.zahorodnii, xaver.hugl |
| Priority: | NOR | Keywords: | multiscreen |
| Version First Reported In: | 5.27.10 | ||
| Target Milestone: | --- | ||
| Platform: | Arch Linux | ||
| OS: | Linux | ||
| Latest Commit: | Version Fixed/Implemented In: | ||
| Sentry Crash Report: | |||
| Attachments: |
output of drm_info
KWin log My normal layout Layout I cannot save Layout where I disable the left G27Q to cause the update loop Layout which causes the update loop |
||
|
Description
qlum
2023-12-25 14:10:40 UTC
I can't reproduce. What I did was: 1. have an external monitor (Dell U2718Q) connected through docking Dell TB16 on a XPS13 laptop. External is configured as main. 2. have both displays connected 3. Go to settings, display config, unselect "Enabled" on the external monitor. 4. The screen focusses on the built-in screen as expected. No flickering on unexpected behaviour. The monitor tries to find a signal and finding none, it goes into sleep mode. 5. Wait until the display config times out as it does not get a confirmation (takes 15secs). 6. the system defaults to original settings, which has the external display as main and the monitor comes out of sleep mode. Let me know if I tested correctly or what I should do. I don't fully comprehend what the G27Q is doing. Operating System: KDE neon Unstable Edition KDE Plasma Version: 5.91.90 KDE Frameworks Version: 5.248.0 Qt Version: 6.6.1 Kernel Version: 6.2.0-39-generic (64-bit) Graphics Platform: Wayland Processors: 8 × Intel® Core™ i7-8565U CPU @ 1.80GHz Memory: 15,3 GiB of RAM Graphics Processor: Mesa Intel® UHD Graphics 620 Manufacturer: Dell Inc. Product Name: XPS 13 9380 Please note the issue on KDE's side is not the monitor's behavior which is odd and probably rare. The update of the layout will not cause huge issues, but panels do get redrawn which is visible, and it can make re-enabling more difficult as you only have until the next cycle to click on enable and apply. It may cause other issues at times as well, in some unknown edge-cases. Furthermore, I don't know if there is any technical reason why the layout needs to be updated at all when an already disabled display gets disconnected or reconnected, after all it is not being used either way. > Some monitors, such as in my case the Gigabyte G27Q will attempt to disconnect and reconnect
> every 10 seconds or so when disabled
Who on earth approved this feature!?! >:C
It's almost like we need a quirks database of known stupid monitors so we can work around their bad behavior...
Please attach the output of drm_info and your KWin log (journalctl --user-unit plasma-kwin_wayland --boot 0) Created attachment 164822 [details]
output of drm_info
Created attachment 164823 [details]
KWin log
KWin now atomically applies the correct output configuration when a display is removed or added, so this should no longer cause problems. (In reply to Zamundaaa from comment #7) > KWin now atomically applies the correct output configuration when a display > is removed or added, so this should no longer cause problems. Not quite, I am full aware it's a weird edge case / quirk of how this monitor works, but the monitor layout still updates and causes flickering of things. Disable monitor in display settings: saves it as layout with monitor disconnected Monitor disconnects itself due to no signal Layout without the monitor connected loads Monitor reconnects itself Layout with the monitor disabled loads. repeats until you either turn of the monitor or 1 minute or so of reconnecting / disconnecting passes. Only way to really solve this is to either log the quirk somehow or don't update the display layout when a disabled monitor gets disconnected / reconnected. There isn't really anything we can do about that. We can't skip updating the display config, as we have no idea if the display is truly gone, or if it's just temporary. As long as your display arrangement isn't different between the output being connected and not, it shouldn't cause any user visible problems though. Is there something else happening? You mention some flickering? Okay I did some more debugging figuring it out. Also moved to the latest beta Since my setup has changed quick refresh for the layout I use: Left and right the G27Q screens that have this toggling behavior. In the middle 2 other displays (above each other with no problems) Seems disabling the right screen does work as intended, I can disable it without any issues. So yay for improvements there. When I disable the left most screen I get the following error on screen: "Couldn’t apply display configuration: Position of output %s is negative, that is not supported(I18N_EXCESS_ARGUMENTS_SUPPLIED)" and cant's save the layout, this is new. If I change the layout so the g27q is somewhere in the middle I can disable it, however at that point I would have to readjust the layout before saving, so there is no gap between screens. If I do this the old behavior of an update loop occurs again, I am guessing because of the position changes the two layouts are not the same. Not sure if this qualifies as the same bug though, may just be broken in different ways. I'll add some screenshots to show what I mean Created attachment 188563 [details]
My normal layout
Created attachment 188564 [details]
Layout I cannot save
Created attachment 188565 [details]
Layout where I disable the left G27Q to cause the update loop
Created attachment 188566 [details]
Layout which causes the update loop
🐛🧹 ⚠️ 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! (In reply to qlum from comment #10) > Seems disabling the right screen does work as intended, I can disable it > without any issues. So yay for improvements there. > When I disable the left most screen I get the following error on screen: > "Couldn’t apply display configuration: Position of output %s is negative, > that is not supported(I18N_EXCESS_ARGUMENTS_SUPPLIED)" and cant's save the > layout, this is new. That was a regression in 6.5.5, which I told distros to backport the fix for last week. |