diff --git a/toolkit/mozapps/extensions/test/xpcshell/rs-blocklist/test_gfxBlacklist_Version.js b/toolkit/mozapps/extensions/test/xpcshell/rs-blocklist/test_gfxBlacklist_Version.js index 6e5b6c0c99fa..fb2f2a4656d6 100644 --- a/toolkit/mozapps/extensions/test/xpcshell/rs-blocklist/test_gfxBlacklist_Version.js +++ b/toolkit/mozapps/extensions/test/xpcshell/rs-blocklist/test_gfxBlacklist_Version.js @@ -160,7 +160,15 @@ async function run_test() { Ci.nsIGfxInfo.FEATURE_HARDWARE_VIDEO_DECODING, failureId ); - Assert.equal(status, Ci.nsIGfxInfo.FEATURE_STATUS_OK); + if (OS == "Linux" && status != Ci.nsIGfxInfo.FEATURE_STATUS_OK) { + Assert.equal(status, Ci.nsIGfxInfo.FEATURE_BLOCKED_DEVICE); + Assert.equal( + failureId.value, + "FEATURE_FAILURE_VIDEO_DECODING_TEST_FAILED" + ); + } else { + Assert.equal(status, Ci.nsIGfxInfo.FEATURE_STATUS_OK); + } status = gfxInfo.getFeatureStatus( Ci.nsIGfxInfo.FEATURE_DIRECT3D_11_ANGLE, diff --git a/widget/gtk/GfxInfo.cpp b/widget/gtk/GfxInfo.cpp index 197053212eab..ae4ca5a5de03 100644 --- a/widget/gtk/GfxInfo.cpp +++ b/widget/gtk/GfxInfo.cpp @@ -849,7 +849,8 @@ const nsTArray& GfxInfo::GetGfxDriverInfo() { DesktopEnvironment::All, WindowProtocol::All, DriverVendor::MesaAll, DeviceFamily::All, nsIGfxInfo::FEATURE_HARDWARE_VIDEO_DECODING, nsIGfxInfo::FEATURE_BLOCKED_DRIVER_VERSION, DRIVER_LESS_THAN, - V(21, 0, 0, 0), "FEATURE_HARDWARE_VIDEO_DECODING_MESA", "Mesa 21.0.0.0"); + V(21, 0, 0, 0), "FEATURE_HARDWARE_VIDEO_DECODING_MESA", + "Mesa 21.0.0.0"); // Disable on all NVIDIA hardware APPEND_TO_DRIVER_BLOCKLIST_EXT( @@ -867,6 +868,15 @@ const nsTArray& GfxInfo::GetGfxDriverInfo() { nsIGfxInfo::FEATURE_BLOCKED_DEVICE, DRIVER_COMPARISON_IGNORED, V(0, 0, 0, 0), "FEATURE_HARDWARE_VIDEO_DECODING_NO_LINUX_AMD", ""); + // Disable on Release/late Beta +#if !defined(EARLY_BETA_OR_EARLIER) + APPEND_TO_DRIVER_BLOCKLIST(OperatingSystem::Linux, DeviceFamily::All, + nsIGfxInfo::FEATURE_HARDWARE_VIDEO_DECODING, + nsIGfxInfo::FEATURE_BLOCKED_DEVICE, + DRIVER_COMPARISON_IGNORED, V(0, 0, 0, 0), + "FEATURE_HARDWARE_VIDEO_DECODING_DISABLE", ""); +#endif + //////////////////////////////////// // FEATURE_WEBRENDER_PARTIAL_PRESENT APPEND_TO_DRIVER_BLOCKLIST_EXT( @@ -996,9 +1006,10 @@ nsresult GfxInfo::GetFeatureStatusImpl( } } - if (aFeature == nsIGfxInfo::FEATURE_VAAPI && !mIsVAAPISupported) { + if (aFeature == nsIGfxInfo::FEATURE_HARDWARE_VIDEO_DECODING && + !mIsVAAPISupported) { *aStatus = nsIGfxInfo::FEATURE_BLOCKED_DEVICE; - aFailureId = "FEATURE_FAILURE_VAAPI_TEST_FAILED"; + aFailureId = "FEATURE_FAILURE_VIDEO_DECODING_TEST_FAILED"; return NS_OK; }