Commit 3e7223a9 authored by Xaver Hugl's avatar Xaver Hugl
Browse files

backends/drm: attempt a modeset on output disabling

When modesets are necessary, they are attempted when an output on the given
GPU gets presented. With multi-gpu setups however, the situation can arise
where there is only one disabled output on a GPU; in that case KWin eternally
waits and never properly turns off the display.
In order to work around this, explicitly call DrmGpu::maybeModeset when
an output gets disabled.

BUG: 449878
FIXED-IN: 5.24.4


(cherry picked from commit 658457df)
parent 6c1e34f4
Pipeline #156352 passed with stage
in 14 minutes and 20 seconds
......@@ -436,6 +436,9 @@ void DrmOutput::applyQueuedChanges(const WaylandOutputConfig &config)
auto props = config.constChangeSet(this);
setEnabled(props->enabled && m_pipeline->pending.crtc);
if (!isEnabled() && m_pipeline->needsModeset()) {
m_gpu->maybeModeset();
}
moveTo(props->pos);
setScale(props->scale);
setTransformInternal(props->transform);
......
Supports Markdown
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment