WebKit Bugzilla
Attachment 342092 Details for
Bug 186367
: Display links are sometimes not notifying WebCore when fired.
Home
|
New
|
Browse
|
Search
|
[?]
|
Reports
|
Requests
|
Help
|
New Account
|
Log In
Remember
[x]
|
Forgot Password
Login:
[x]
[patch]
Patch
bug-186367-20180606162738.patch (text/plain), 2.30 KB, created by
Per Arne Vollan
on 2018-06-06 16:27:39 PDT
(
hide
)
Description:
Patch
Filename:
MIME Type:
Creator:
Per Arne Vollan
Created:
2018-06-06 16:27:39 PDT
Size:
2.30 KB
patch
obsolete
>Index: Source/WebCore/ChangeLog >=================================================================== >--- Source/WebCore/ChangeLog (revision 232543) >+++ Source/WebCore/ChangeLog (working copy) >@@ -1,3 +1,25 @@ >+2018-06-06 Per Arne Vollan <pvollan@apple.com> >+ >+ Display links are sometimes not notifying WebCore when fired. >+ https://bugs.webkit.org/show_bug.cgi?id=186367 >+ <rdar://problem/40439109> >+ >+ Reviewed by NOBODY (OOPS!). >+ >+ When the WebContent process is receiving an IPC message notifying about a screen update, all display refresh monitors >+ are notified by the manager in DisplayRefreshMonitorManager::displayWasUpdated(). The manager checks that the monitor >+ is scheduled before notifying. This is a problem, since the scheduled flag is always set to false in the >+ DisplayRefreshMonitor::displayDidRefresh() method, when the monitor is first notified about a screen update. This can >+ lead to display links running without notifying the monitors, causing extra CPU usage. It can also prevent them from >+ being deleted, since the monitors are not notified. Instead, we can check that the display refresh monitor is active >+ before notifying it. This matches the original display link implementation used when the WebContent process has >+ WindowServer access, where the monitors are always notified. >+ >+ No new tests, since I have not been able to reproduce this in a test case yet. >+ >+ * platform/graphics/DisplayRefreshMonitorManager.cpp: >+ (WebCore::DisplayRefreshMonitorManager::displayWasUpdated): >+ > 2018-06-06 Jer Noble <jer.noble@apple.com> > > Regions outside of the fullscreen window are exposed during zoom operations >Index: Source/WebCore/platform/graphics/DisplayRefreshMonitorManager.cpp >=================================================================== >--- Source/WebCore/platform/graphics/DisplayRefreshMonitorManager.cpp (revision 232543) >+++ Source/WebCore/platform/graphics/DisplayRefreshMonitorManager.cpp (working copy) >@@ -128,7 +128,7 @@ void DisplayRefreshMonitorManager::windo > void DisplayRefreshMonitorManager::displayWasUpdated() > { > for (auto monitor : m_monitors) { >- if (monitor->isScheduled()) >+ if (monitor->isActive()) > monitor->displayLinkFired(); > } > }
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
Actions:
View
|
Formatted Diff
|
Diff
Attachments on
bug 186367
: 342092