From 41bf2e8ee2d5004c8834daa3a1225fcf9db7460c Mon Sep 17 00:00:00 2001 From: sotaro Date: Thu, 27 Oct 2022 10:12:05 +0000 Subject: [PATCH] Bug 1796527 - Let reuse decoder device to release on non-intel GPUs on Windows r=jrmuizel,gfx-reviewers Reuse decoder device is already enabled on Intel and AMD GPUs on release. Differential Revision: https://phabricator.services.mozilla.com/D160010 --- gfx/thebes/gfxPlatform.cpp | 2 +- widget/GfxInfoBase.cpp | 3 +-- widget/windows/GfxInfo.cpp | 22 ---------------------- 3 files changed, 2 insertions(+), 25 deletions(-) diff --git a/gfx/thebes/gfxPlatform.cpp b/gfx/thebes/gfxPlatform.cpp index d05174a90d78..5d98e1f0bdb6 100644 --- a/gfx/thebes/gfxPlatform.cpp +++ b/gfx/thebes/gfxPlatform.cpp @@ -2793,7 +2793,7 @@ void gfxPlatform::InitWebRenderConfig() { "FEATURE_FAILURE_WR_NO_GFX_INFO"_ns); reuseDecoderDevice = false; } else { - if (status != nsIGfxInfo::FEATURE_ALLOW_ALWAYS) { + if (status != nsIGfxInfo::FEATURE_STATUS_OK) { FeatureState& feature = gfxConfig::GetFeature(Feature::REUSE_DECODER_DEVICE); feature.DisableByDefault(FeatureStatus::Blocked, diff --git a/widget/GfxInfoBase.cpp b/widget/GfxInfoBase.cpp index 9c627d9efb58..8e8e7f32ddda 100644 --- a/widget/GfxInfoBase.cpp +++ b/widget/GfxInfoBase.cpp @@ -1271,8 +1271,7 @@ bool GfxInfoBase::DoesDriverVendorMatch(const nsAString& aBlocklistVendor, bool GfxInfoBase::IsFeatureAllowlisted(int32_t aFeature) const { return aFeature == nsIGfxInfo::FEATURE_WEBRENDER || aFeature == nsIGfxInfo::FEATURE_VIDEO_OVERLAY || - aFeature == nsIGfxInfo::FEATURE_HW_DECODED_VIDEO_ZERO_COPY || - aFeature == nsIGfxInfo::FEATURE_REUSE_DECODER_DEVICE; + aFeature == nsIGfxInfo::FEATURE_HW_DECODED_VIDEO_ZERO_COPY; } nsresult GfxInfoBase::GetFeatureStatusImpl( diff --git a/widget/windows/GfxInfo.cpp b/widget/windows/GfxInfo.cpp index 1541ff523a16..441624dff13b 100644 --- a/widget/windows/GfxInfo.cpp +++ b/widget/windows/GfxInfo.cpp @@ -1808,28 +1808,6 @@ const nsTArray& GfxInfo::GetGfxDriverInfo() { V(0, 0, 0, 0), "FEATURE_ROLLOUT_ALL"); #endif - //////////////////////////////////// - // FEATURE_REUSE_DECODER_DEVICE - ALLOWLIST -#ifdef EARLY_BETA_OR_EARLIER - APPEND_TO_DRIVER_BLOCKLIST2(OperatingSystem::Windows, DeviceFamily::All, - nsIGfxInfo::FEATURE_REUSE_DECODER_DEVICE, - nsIGfxInfo::FEATURE_ALLOW_ALWAYS, - DRIVER_COMPARISON_IGNORED, V(0, 0, 0, 0), - "FEATURE_ROLLOUT_ALL"); -#else - APPEND_TO_DRIVER_BLOCKLIST2( - OperatingSystem::Windows, DeviceFamily::IntelAll, - nsIGfxInfo::FEATURE_REUSE_DECODER_DEVICE, - nsIGfxInfo::FEATURE_ALLOW_ALWAYS, DRIVER_COMPARISON_IGNORED, - V(0, 0, 0, 0), "FEATURE_ROLLOUT_INTEL"); - // ATI/AMD always requires reuse decoder device. - APPEND_TO_DRIVER_BLOCKLIST2(OperatingSystem::Windows, DeviceFamily::AtiAll, - nsIGfxInfo::FEATURE_REUSE_DECODER_DEVICE, - nsIGfxInfo::FEATURE_ALLOW_ALWAYS, - DRIVER_COMPARISON_IGNORED, V(0, 0, 0, 0), - "FEATURE_ROLLOUT_INTEL"); -#endif - //////////////////////////////////// // FEATURE_WEBRENDER // Block 8.56.1.15/16