Bug 1820066 [3/3] - Default to DXGI_SWAP_EFFECT_FLIP_SEQUENTIAL on Win10+ r=sotaro

This silences a warning emitted by the D3D11 debug layer.

Conveniently, it also suppresses bug 1763981.

Differential Revision: https://phabricator.services.mozilla.com/D171522
This commit is contained in:
Ray Kraesig 2023-03-22 15:09:24 +00:00
parent cfe1fff87e
commit 640df4416e
2 changed files with 10 additions and 2 deletions

View File

@ -2807,11 +2807,19 @@ void gfxPlatform::InitWebRenderConfig() {
gfxVars::SetReuseDecoderDevice(true);
}
if (Preferences::GetBool("gfx.webrender.flip-sequential", false)) {
// SWAP_EFFECT_FLIP_SEQUENTIAL is strongly recommended on Win10+ machines --
// DXGI warnings are emitted by the Direct3D11 debug layer if it's not used.
//
// This avoids bug 1763981, which is only exhibited on Windows 11. (This may
// be due to some sort of raciness between the parent and GPU processes when
// no separate compositor-HWND is created. Alternatively, it may be a bug in
// Win11 DWM's handling of SWAP_EFFECT_SEQUENTIAL.)
if (Preferences::GetBool("gfx.webrender.flip-sequential", IsWin10OrLater())) {
if (gfxVars::UseWebRenderANGLE()) {
gfxVars::SetUseWebRenderFlipSequentialWin(true);
}
}
if (Preferences::GetBool("gfx.webrender.triple-buffering.enabled", false)) {
if (gfxVars::UseWebRenderDCompWin() ||
gfxVars::UseWebRenderFlipSequentialWin()) {

View File

@ -460,7 +460,7 @@ pref("gfx.downloadable_fonts.disable_cache", false);
pref("gfx.content.azure.backends", "skia");
#ifdef XP_WIN
pref("gfx.webrender.flip-sequential", false);
// pref("gfx.webrender.flip-sequential", false); // no default
pref("gfx.webrender.dcomp-win.enabled", true);
pref("gfx.webrender.triple-buffering.enabled", true);
#endif