Bug 239799

Summary: Avoid sending a flush IPC to the GPU process when destroying a RemoteImageBuffer
Product: WebKit Reporter: Simon Fraser (smfr) <simon.fraser>
Component: Layout and RenderingAssignee: Simon Fraser (smfr) <simon.fraser>
Status: RESOLVED FIXED    
Severity: Normal CC: bfulgham, sabouhallawa, simon.fraser, webkit-bug-importer, zalan
Priority: P2 Keywords: InRadar
Version: WebKit Nightly Build   
Hardware: Unspecified   
OS: Unspecified   
See Also: https://bugs.webkit.org/show_bug.cgi?id=228673
Attachments:
Description Flags
Patch sabouhallawa: review+

Simon Fraser (smfr)
Reported 2022-04-26 20:33:23 PDT
Avoid sending a flush IPC to the GPU process when destroying a RemoteImageBuffer
Attachments
Patch (6.45 KB, patch)
2022-04-26 20:36 PDT, Simon Fraser (smfr)
sabouhallawa: review+
Simon Fraser (smfr)
Comment 1 2022-04-26 20:36:14 PDT
Said Abou-Hallawa
Comment 2 2022-04-26 22:39:46 PDT
Comment on attachment 458415 [details] Patch View in context: https://bugs.webkit.org/attachment.cgi?id=458415&action=review > Source/WebCore/ChangeLog:8 > + No new tests (OOPS!). This should be removed before landing. > Source/WebCore/platform/graphics/ImageBuffer.h:101 > + virtual bool flushDrawingContextAsync() { return false; } It is not clear from the name what this function returns. Should it be renamed flushDrawingContextAsyncIfNeeded()? > Source/WebKit/WebProcess/GPU/graphics/RemoteImageBufferProxy.h:313 > + return false; The order in this function is a little bit hard to read. Can't it be rearranged like this: // Nothing to flush, return true if we need the caller to wait. if (!m_remoteDisplayList.needsFlush()) return hasPendingFlush(); // Do the flushing and tell the caller to wait. ... m_remoteDisplayList.flushContext(m_sentFlushIdentifier); ... return true;
Simon Fraser (smfr)
Comment 3 2022-04-27 12:02:05 PDT
Radar WebKit Bug Importer
Comment 4 2022-04-27 12:03:14 PDT
Note You need to log in before you can comment on or make changes to this bug.