mirror of
https://github.com/mozilla/gecko-dev.git
synced 2024-10-08 10:44:56 +00:00
Bug 1715132 - Ignore the blocklist for Software WebRender on desktop. r=jrmuizel
We still need the blocklist to control rollout on Android, but on desktop, we should be shipping Software WebRender to all users, except those in safe mode or whom have explicitly disabled WebRender. Differential Revision: https://phabricator.services.mozilla.com/D117088
This commit is contained in:
parent
888618300d
commit
a58e7ef933
@ -1036,3 +1036,38 @@
|
||||
fun:_ZN5style10properties17declaration_block31parse_property_declaration_list*
|
||||
fun:_ZN124_$LT$style..stylesheets..rule_parser..NestedRuleParser$u20$as$u20$cssparser..rules_and_declarations..QualifiedRuleParser$GT$11parse_block*
|
||||
}
|
||||
|
||||
# Suppression for Software WebRender, June 2021. See bug 1715267.
|
||||
#
|
||||
# Conditional jump or move depends on uninitialised value(s)
|
||||
# at 0x162B199F: webrender::renderer::upload::upload_to_texture_cache+10639 (mod.rs:2045)
|
||||
# by 0x162A7567: webrender::renderer::Renderer::update_texture_cache+5191 (mod.rs:2241)
|
||||
# by 0x1629EF2F: webrender::renderer::Renderer::render_impl+3647 (mod.rs:1874)
|
||||
# Uninitialised value was created by a stack allocation
|
||||
# at 0x162AF01D: webrender::renderer::upload::upload_to_texture_cache+13 (upload.rs:50)
|
||||
{
|
||||
Bug 1715267: webrender::renderer::upload::upload_to_texture_cache
|
||||
Memcheck:Cond
|
||||
fun:_ZN9webrender8renderer6upload23upload_to_texture_cache17h*
|
||||
fun:_ZN9webrender8renderer8Renderer20update_texture_cache17h*
|
||||
fun:_ZN9webrender8renderer8Renderer11render_impl17h*
|
||||
}
|
||||
|
||||
# Suppression for Software WebRender, June 2021. See bug 1715290.
|
||||
#
|
||||
# 24 bytes in 1 blocks are definitely lost in loss record 3,311 of 10,861
|
||||
# at 0x4C28FC0: malloc+112 (vg_replace_malloc.c:307)
|
||||
# by 0x162F6CC9: wr_thread_pool_new+2729 (library/std/src/sys/unix/alloc.rs:14)
|
||||
# by 0x11EB0814: WebRenderThreadPool (checkouts/gecko/gfx/webrender_bindings/RenderThread.cpp:1037)
|
||||
# by 0x11EB0814: RenderThread (checkouts/gecko/gfx/webrender_bindings/RenderThread.cpp:64)
|
||||
# by 0x11EB0814: mozilla::wr::RenderThread::Start()+116 (checkouts/gecko/gfx/webrender_bindings/RenderThread.cpp:96)
|
||||
{
|
||||
Bug 1715290: wr_thread_pool_new / WebRenderThreadPool / RenderThread
|
||||
Memcheck:Leak
|
||||
match-leak-kinds: definite
|
||||
fun:malloc
|
||||
fun:wr_thread_pool_new
|
||||
fun:WebRenderThreadPool
|
||||
fun:RenderThread
|
||||
fun:_ZN7mozilla2wr12RenderThread5StartEv
|
||||
}
|
||||
|
@ -75,6 +75,10 @@ void gfxConfigManager::Init() {
|
||||
#endif
|
||||
mSafeMode = gfxPlatform::InSafeMode();
|
||||
|
||||
#ifdef ANDROID
|
||||
mHasWrSoftwareBlocklist = true;
|
||||
#endif
|
||||
|
||||
mGfxInfo = components::GfxInfo::Service();
|
||||
|
||||
mFeatureWr = &gfxConfig::GetFeature(Feature::WEBRENDER);
|
||||
@ -142,6 +146,10 @@ void gfxConfigManager::ConfigureWebRenderSoftware() {
|
||||
mFeatureWrSoftware->UserForceEnable("Force enabled by fission");
|
||||
}
|
||||
|
||||
if (!mHasWrSoftwareBlocklist) {
|
||||
return;
|
||||
}
|
||||
|
||||
nsCString failureId;
|
||||
int32_t status;
|
||||
if (NS_FAILED(mGfxInfo->GetFeatureStatus(
|
||||
|
@ -50,7 +50,8 @@ class gfxConfigManager {
|
||||
mIsNightly(false),
|
||||
mIsEarlyBetaOrEarlier(false),
|
||||
mSafeMode(false),
|
||||
mIsWin10OrLater(false) {}
|
||||
mIsWin10OrLater(false),
|
||||
mHasWrSoftwareBlocklist(false) {}
|
||||
|
||||
void Init();
|
||||
|
||||
@ -113,6 +114,7 @@ class gfxConfigManager {
|
||||
bool mIsEarlyBetaOrEarlier;
|
||||
bool mSafeMode;
|
||||
bool mIsWin10OrLater;
|
||||
bool mHasWrSoftwareBlocklist;
|
||||
};
|
||||
|
||||
} // namespace gfx
|
||||
|
@ -308,6 +308,7 @@ class GfxConfigManager : public ::testing::Test, public gfxConfigManager {
|
||||
mIsWin10OrLater = true;
|
||||
mIsNightly = true;
|
||||
mIsEarlyBetaOrEarlier = true;
|
||||
mHasWrSoftwareBlocklist = true;
|
||||
}
|
||||
|
||||
void TearDown() override {
|
||||
@ -1062,3 +1063,21 @@ TEST_F(GfxConfigManager, WebRenderShaderCacheBlocked) {
|
||||
EXPECT_TRUE(mFeatures.mD3D11HwAngle.IsEnabled());
|
||||
EXPECT_FALSE(mFeatures.mWrSoftware.IsEnabled());
|
||||
}
|
||||
|
||||
TEST_F(GfxConfigManager, WebRenderNoSoftwareBlocklist) {
|
||||
mHasWrSoftwareBlocklist = false;
|
||||
ConfigureWebRender();
|
||||
|
||||
EXPECT_TRUE(mFeatures.mWrQualified.IsEnabled());
|
||||
EXPECT_TRUE(mFeatures.mWr.IsEnabled());
|
||||
EXPECT_TRUE(mFeatures.mWrCompositor.IsEnabled());
|
||||
EXPECT_TRUE(mFeatures.mWrAngle.IsEnabled());
|
||||
EXPECT_TRUE(mFeatures.mWrDComp.IsEnabled());
|
||||
EXPECT_TRUE(mFeatures.mWrPartial.IsEnabled());
|
||||
EXPECT_TRUE(mFeatures.mWrShaderCache.IsEnabled());
|
||||
EXPECT_TRUE(mFeatures.mWrOptimizedShaders.IsEnabled());
|
||||
EXPECT_TRUE(mFeatures.mHwCompositing.IsEnabled());
|
||||
EXPECT_TRUE(mFeatures.mGPUProcess.IsEnabled());
|
||||
EXPECT_TRUE(mFeatures.mD3D11HwAngle.IsEnabled());
|
||||
EXPECT_TRUE(mFeatures.mWrSoftware.IsEnabled());
|
||||
}
|
||||
|
Loading…
Reference in New Issue
Block a user