Bug 1773282 [Linux] Disable nsIGfxInfo::FEATURE_HARDWARE_VIDEO_DECODING on release/late beta r=alwu

Differential Revision: https://phabricator.services.mozilla.com/D149766
This commit is contained in:
stransky 2022-06-29 12:09:03 +00:00
Родитель bea11a62d5
Коммит 9340f2d3bc
2 изменённых файлов: 23 добавлений и 4 удалений

Просмотреть файл

@ -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,

Просмотреть файл

@ -849,7 +849,8 @@ const nsTArray<GfxDriverInfo>& 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<GfxDriverInfo>& 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;
}