firefox/D149238.diff

35 lines
1.5 KiB
Diff

diff -up firefox-102.0/gfx/config/gfxVars.h.D149238.diff firefox-102.0/gfx/config/gfxVars.h
--- firefox-102.0/gfx/config/gfxVars.h.D149238.diff 2022-06-23 09:08:47.000000000 +0200
+++ firefox-102.0/gfx/config/gfxVars.h 2022-06-28 16:40:54.130895063 +0200
@@ -91,7 +91,8 @@ class gfxVarReceiver;
_(AllowWebGPU, bool, false) \
_(UseVP8HwDecode, bool, false) \
_(UseVP9HwDecode, bool, false) \
- _(HwDecodedVideoZeroCopy, bool, false)
+ _(HwDecodedVideoZeroCopy, bool, false) \
+ _(UseDMABufSurfaceExport, bool, true)
/* Add new entries above this line. */
diff -up firefox-102.0/gfx/thebes/gfxPlatform.cpp.D149238.diff firefox-102.0/gfx/thebes/gfxPlatform.cpp
--- firefox-102.0/gfx/thebes/gfxPlatform.cpp.D149238.diff 2022-06-23 09:08:47.000000000 +0200
+++ firefox-102.0/gfx/thebes/gfxPlatform.cpp 2022-06-28 16:40:54.130895063 +0200
@@ -2861,6 +2861,17 @@ void gfxPlatform::InitWebGLConfig() {
gfxVars::SetAllowEglRbab(false);
}
}
+
+ if (kIsWayland || kIsX11) {
+ // Disable EGL_MESA_image_dma_buf_export on mesa/radeonsi due to
+ // https://gitlab.freedesktop.org/mesa/mesa/-/issues/6666
+ nsString adapterDriverVendor;
+ gfxInfo->GetAdapterDriverVendor(adapterDriverVendor);
+ if (adapterDriverVendor.Find("mesa") != -1 &&
+ adapterDriverVendor.Find("radeonsi") != -1) {
+ gfxVars::SetUseDMABufSurfaceExport(false);
+ }
+ }
}
void gfxPlatform::InitWebGPUConfig() {