WebKit Bugzilla
Attachment 347631 Details for
Bug 188787
: Do not try to update the compositing policy when not in accelerated compositing mode
Home
|
New
|
Browse
|
Search
|
[?]
|
Reports
|
Requests
|
Help
|
New Account
|
Log In
Remember
[x]
|
Forgot Password
Login:
[x]
[patch]
Patch
wcore-compositing-policy.diff (text/plain), 2.18 KB, created by
Carlos Garcia Campos
on 2018-08-21 05:25:35 PDT
(
hide
)
Description:
Patch
Filename:
MIME Type:
Creator:
Carlos Garcia Campos
Created:
2018-08-21 05:25:35 PDT
Size:
2.18 KB
patch
obsolete
>diff --git a/Source/WebCore/ChangeLog b/Source/WebCore/ChangeLog >index 79c1915fbf3..984951e1f39 100644 >--- a/Source/WebCore/ChangeLog >+++ b/Source/WebCore/ChangeLog >@@ -1,3 +1,23 @@ >+2018-08-21 Carlos Garcia Campos <cgarcia@igalia.com> >+ >+ Do not try to update the compositing policy when not in accelerated compositing mode >+ https://bugs.webkit.org/show_bug.cgi?id=188787 >+ >+ Reviewed by NOBODY (OOPS!). >+ >+ RenderLayerCompositor::updateCompositingPolicy() is called very often (called from >+ RenderLayerCompositor::cacheAcceleratedCompositingFlags()) and it uses WTF::memoryFootprint() to decide the >+ current compositing policy. Getting the memory footprint is an expensive operation in Linux (and I suspect other >+ non-cocoa ports too), causing an excessive CPU usage. This caused the WPE and GTK+ unit test >+ /webkit/WebKitWebContext/uri-scheme to start timing out in the bots, because the test expects things to happen >+ fast and that's no longer the case. We could reduce the CPU usage a lot by not trying to update the policy when >+ not in accelerated compositing mode. We will need a solution for the accelerated compositing mode, though. >+ >+ Fixes WPE/GTK+ unit test /webkit/WebKitWebContext/uri-scheme. >+ >+ * rendering/RenderLayerCompositor.cpp: >+ (WebCore::RenderLayerCompositor::updateCompositingPolicy): Return early when not in accelerated compositing mode. >+ > 2018-08-20 Ms2ger <Ms2ger@igalia.com> > > [SOUP] Check length before calling soup_message_body_append_buffer. >diff --git a/Source/WebCore/rendering/RenderLayerCompositor.cpp b/Source/WebCore/rendering/RenderLayerCompositor.cpp >index 7e40c82db59..5b3ab98f0f0 100644 >--- a/Source/WebCore/rendering/RenderLayerCompositor.cpp >+++ b/Source/WebCore/rendering/RenderLayerCompositor.cpp >@@ -368,6 +368,9 @@ void RenderLayerCompositor::cacheAcceleratedCompositingFlagsAfterLayout() > > bool RenderLayerCompositor::updateCompositingPolicy() > { >+ if (!inCompositingMode()) >+ return false; >+ > auto currentPolicy = m_compositingPolicy; > if (page().compositingPolicyOverride()) { > m_compositingPolicy = page().compositingPolicyOverride().value();
You cannot view the attachment while viewing its details because your browser does not support IFRAMEs.
View the attachment on a separate page
.
View Attachment As Diff
View Attachment As Raw
Flags:
simon.fraser
:
review+
ews-watchlist
:
commit-queue-
Actions:
View
|
Formatted Diff
|
Diff
Attachments on
bug 188787
: 347631 |
347750