backends/drm: drop explicit modifiers completely if no output config works
Removing modifiers one by one creates a huge amount of combinations that can make KWin hang for a long time in some cases. Instead of doing that, leave it up to Mesa to pick a modifier when a setup doesn't work, which will generally result in the least amount of bandwidth used and should be able to power all output combinations.
This commit is contained in:
parent
6bb4ebdf04
commit
f70caec4b3
1 changed files with 4 additions and 3 deletions
|
@ -504,11 +504,12 @@ bool DrmPipeline::pruneModifier()
|
||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
auto &modifiers = m_pending.formats[m_pending.layer->currentBuffer()->buffer()->format()];
|
auto &modifiers = m_pending.formats[m_pending.layer->currentBuffer()->buffer()->format()];
|
||||||
if (modifiers.count() <= 1) {
|
if (modifiers.empty()) {
|
||||||
return false;
|
return false;
|
||||||
}
|
} else {
|
||||||
modifiers.removeOne(m_pending.layer->currentBuffer()->buffer()->modifier());
|
modifiers.clear();
|
||||||
return true;
|
return true;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
bool DrmPipeline::needsModeset() const
|
bool DrmPipeline::needsModeset() const
|
||||||
|
|
Loading…
Reference in a new issue