Branch: refs/heads/main
Home: https://github.com/WebKit/WebKit
Commit: 1a3eac178b9ff4fdaeec15ca3d3767a788990d33
https://github.com/WebKit/WebKit/commit/1a3eac178b9ff4fdaeec15ca3d3767a788990d33
Author: Kimmo Kinnunen <[email protected]>
Date: 2026-09-09 (Wed, 09 Sep 2026)
Changed paths:
M LayoutTests/ipc/feComponentTransfer-empty-tableValues-accelerated.html
M LayoutTests/ipc/insufficient-svgfilter-inputs-crash.html
M LayoutTests/ipc/invalid-svgfilter-expression-crash.html
M LayoutTests/ipc/restore-empty-stack-crash.html
M
LayoutTests/ipc/rgba16f-getpixelbuffer-colorspace-mismatch-heap-disclosure.html
M LayoutTests/ipc/send-gpu-GetShareableBitmap-RemoteRenderingBackend.html
M Source/WebCore/Headers.cmake
M Source/WebCore/WebCore.xcodeproj/project.pbxproj
M Source/WebCore/WebCoreDOMAndRenderingPrefix.h
M Source/WebCore/WebCoreJSBindingsPrefix.h
M Source/WebCore/html/canvas/CanvasRenderingContext2DBase.cpp
M Source/WebCore/html/canvas/GPUCanvasContextCocoa.mm
M Source/WebCore/html/canvas/WebGLRenderingContextBase.cpp
M Source/WebCore/platform/graphics/ImageBuffer.cpp
M Source/WebCore/platform/graphics/ImageBuffer.h
M Source/WebCore/platform/graphics/ImageBufferBackend.cpp
M Source/WebCore/platform/graphics/ImageBufferBackend.h
R Source/WebCore/platform/graphics/ImageBufferBackendParameters.h
M Source/WebCore/platform/graphics/ImageBufferDisplayListBackend.cpp
M Source/WebCore/platform/graphics/ImageBufferDisplayListBackend.h
A Source/WebCore/platform/graphics/ImageBufferParameters.h
M Source/WebCore/platform/graphics/NullImageBufferBackend.cpp
M Source/WebCore/platform/graphics/NullImageBufferBackend.h
M Source/WebCore/platform/graphics/cairo/ImageBufferCairoBackend.cpp
M
Source/WebCore/platform/graphics/cairo/ImageBufferCairoImageSurfaceBackend.cpp
M
Source/WebCore/platform/graphics/cairo/ImageBufferCairoImageSurfaceBackend.h
M Source/WebCore/platform/graphics/cairo/ImageBufferCairoSurfaceBackend.cpp
M Source/WebCore/platform/graphics/cairo/ImageBufferCairoSurfaceBackend.h
M Source/WebCore/platform/graphics/cg/ImageBufferCGBackend.cpp
M Source/WebCore/platform/graphics/cg/ImageBufferCGBackend.h
M Source/WebCore/platform/graphics/cg/ImageBufferCGBitmapBackend.cpp
M Source/WebCore/platform/graphics/cg/ImageBufferCGBitmapBackend.h
M Source/WebCore/platform/graphics/cg/ImageBufferCGPDFDocumentBackend.cpp
M Source/WebCore/platform/graphics/cg/ImageBufferCGPDFDocumentBackend.h
M Source/WebCore/platform/graphics/cg/ImageBufferIOSurfaceBackend.cpp
M Source/WebCore/platform/graphics/cg/ImageBufferIOSurfaceBackend.h
M Source/WebCore/platform/graphics/filters/FilterImage.cpp
M
Source/WebCore/platform/graphics/skia/ImageBufferSkiaAcceleratedBackend.cpp
M Source/WebCore/platform/graphics/skia/ImageBufferSkiaAcceleratedBackend.h
M Source/WebCore/platform/graphics/skia/ImageBufferSkiaSurfaceBackend.cpp
M Source/WebCore/platform/graphics/skia/ImageBufferSkiaSurfaceBackend.h
M
Source/WebCore/platform/graphics/skia/ImageBufferSkiaUnacceleratedBackend.cpp
M
Source/WebCore/platform/graphics/skia/ImageBufferSkiaUnacceleratedBackend.h
M Source/WebCore/testing/Internals.cpp
M Source/WebCore/testing/ServiceWorkerInternals.cpp
M Source/WebKit/GPUProcess/graphics/RemoteImageBuffer.cpp
M Source/WebKit/GPUProcess/graphics/RemoteImageBuffer.h
M Source/WebKit/GPUProcess/graphics/RemoteImageBuffer.messages.in
M Source/WebKit/GPUProcess/graphics/RemoteRenderingBackend.cpp
M Source/WebKit/GPUProcess/graphics/RemoteRenderingBackend.h
M Source/WebKit/GPUProcess/graphics/RemoteRenderingBackend.messages.in
M Source/WebKit/Scripts/webkit/opaque_ipc_types.tracking.in
M
Source/WebKit/Shared/RemoteLayerTree/DynamicContentScalingBifurcatedImageBuffer.h
M
Source/WebKit/Shared/RemoteLayerTree/DynamicContentScalingBifurcatedImageBuffer.mm
M
Source/WebKit/Shared/RemoteLayerTree/DynamicContentScalingImageBufferBackend.h
M
Source/WebKit/Shared/RemoteLayerTree/DynamicContentScalingImageBufferBackend.mm
M Source/WebKit/Shared/WebCoreArgumentCoders.serialization.in
M Source/WebKit/Shared/WebImage.cpp
M Source/WebKit/WebProcess/GPU/graphics/ImageBufferBackendHandleSharing.h
M
Source/WebKit/WebProcess/GPU/graphics/ImageBufferRemoteDisplayListBackend.cpp
M
Source/WebKit/WebProcess/GPU/graphics/ImageBufferRemoteDisplayListBackend.h
M
Source/WebKit/WebProcess/GPU/graphics/ImageBufferRemotePDFDocumentBackend.cpp
M
Source/WebKit/WebProcess/GPU/graphics/ImageBufferRemotePDFDocumentBackend.h
M
Source/WebKit/WebProcess/GPU/graphics/ImageBufferShareableBitmapBackend.cpp
M Source/WebKit/WebProcess/GPU/graphics/ImageBufferShareableBitmapBackend.h
M Source/WebKit/WebProcess/GPU/graphics/RemoteImageBufferProxy.cpp
M Source/WebKit/WebProcess/GPU/graphics/RemoteImageBufferProxy.h
M Source/WebKit/WebProcess/GPU/graphics/RemoteImageBufferProxy.messages.in
M Source/WebKit/WebProcess/GPU/graphics/RemoteImageBufferSetProxy.cpp
M Source/WebKit/WebProcess/GPU/graphics/RemoteRenderingBackendProxy.cpp
M Source/WebKit/WebProcess/GPU/graphics/RemoteRenderingBackendProxy.h
M
Source/WebKit/WebProcess/GPU/graphics/cocoa/ImageBufferRemoteIOSurfaceBackend.cpp
M
Source/WebKit/WebProcess/GPU/graphics/cocoa/ImageBufferRemoteIOSurfaceBackend.h
M
Source/WebKit/WebProcess/GPU/graphics/cocoa/ImageBufferShareableMappedIOSurfaceBackend.cpp
M
Source/WebKit/WebProcess/GPU/graphics/cocoa/ImageBufferShareableMappedIOSurfaceBackend.h
M
Source/WebKit/WebProcess/GPU/graphics/cocoa/ImageBufferShareableMappedIOSurfaceBitmapBackend.cpp
M
Source/WebKit/WebProcess/GPU/graphics/cocoa/ImageBufferShareableMappedIOSurfaceBitmapBackend.h
M Source/WebKit/WebProcess/WebPage/RemoteLayerTree/GraphicsLayerCARemote.mm
Log Message:
-----------
REGRESSION(320153@main) 2D context self drawImage performance regression
https://bugs.webkit.org/show_bug.cgi?id=323495
rdar://186731221
Reviewed by Matt Woodrow.
Upon creation, remote ImageBuffers would send their surface handle to
WCP. This would hold the underlying IOSurfaces in use, preventing
recycling through IOSurfacePool. For loops that do a lot of self draw,
this would cause IOSurface alloc/dealloc churn.
Fix by not sending the handles. This was a feature used when ImageBuffer
handles were attached to layers after compositing. Currently we use
ImageBufferSets for this. The only cases that the handle is currently
used is PlaceholderRenderingContext and view transitions. The feature
cannot be used effectively, as WCP->GPUP synchrous flush is needed
anyway before the handles can be attached to layers.
Due to this feature, the RemoteImageBufferProxy and ImageBufferBackend
were more complex than needed: the RemoteImageBufferProxy would need to
start without a backend. Upon operations that needed backend-specific
information, the access would block until the backend was available
through the handle transferring message.
Instead, instantiate the backend at the RemoteImageBufferProxy
instantiation site. For cases that can map the backend backing store,
shared memory and in-process IOSurface, create the backing store at that
moment and send it to GPUP. For cases that cannot map the backing store,
i.e. GPUP IOSurface, fetch the handle through explicit synchronous call
for PlaceholderRenderingContext and view transitions. These will be
removed in future, to be superseeded with corresponding NativeImage
infrastructure.
Remove ImageBufferBackendProperties, this was only needed due to the
complications above.
* LayoutTests/ipc/feComponentTransfer-empty-tableValues-accelerated.html:
* LayoutTests/ipc/insufficient-svgfilter-inputs-crash.html:
* LayoutTests/ipc/invalid-svgfilter-expression-crash.html:
* LayoutTests/ipc/restore-empty-stack-crash.html:
*
LayoutTests/ipc/rgba16f-getpixelbuffer-colorspace-mismatch-heap-disclosure.html:
* LayoutTests/ipc/send-gpu-GetShareableBitmap-RemoteRenderingBackend.html:
* Source/WebCore/Headers.cmake:
* Source/WebCore/WebCore.xcodeproj/project.pbxproj:
* Source/WebCore/WebCoreDOMAndRenderingPrefix.h:
* Source/WebCore/WebCoreJSBindingsPrefix.h:
* Source/WebCore/html/canvas/CanvasRenderingContext2DBase.cpp:
(WebCore::CanvasRenderingContext2DBase::getEffectiveRenderingModeForTesting):
* Source/WebCore/platform/graphics/ImageBuffer.cpp:
(WebCore::ImageBuffer::ImageBuffer):
(WebCore::calculateImageBufferBackendSize):
(WebCore::ImageBuffer::calculateBackendSize):
(WebCore::ImageBuffer::flushDrawingContext):
(WebCore::ImageBuffer::submitDrawingCommands):
(WebCore::ImageBuffer::replaceFontsWithRebuildData):
(WebCore::ImageBuffer::rebuildFonts):
(WebCore::ImageBuffer::prepareForDisplay):
(WebCore::ImageBuffer::backendSize const):
(WebCore::ImageBuffer::getEffectiveRenderingModeForTesting const):
(WebCore::ImageBuffer::copyNativeImage const):
(WebCore::ImageBuffer::createNativeImageReference const):
(WebCore::ImageBuffer::sinkIntoNativeImage):
(WebCore::ImageBuffer::filteredNativeImage):
(WebCore::ImageBuffer::createCairoSurface):
(WebCore::ImageBuffer::layerContentsDisplayDelegate):
(WebCore::ImageBuffer::convertToLuminanceMask):
(WebCore::ImageBuffer::transformToColorSpace):
(WebCore::ImageBuffer::getPixelBuffer const):
(WebCore::ImageBuffer::putPixelBuffer):
(WebCore::ImageBuffer::sinkIntoPDFDocument):
(WebCore::ImageBuffer::isInUse const):
(WebCore::ImageBuffer::releaseGraphicsContext):
(WebCore::ImageBuffer::setVolatile):
(WebCore::ImageBuffer::setNonVolatile):
(WebCore::ImageBuffer::volatilityState const):
(WebCore::ImageBuffer::setVolatilityState):
(WebCore::ImageBuffer::createFlusher):
(WebCore::ImageBuffer::toBackendSharing):
(WebCore::ImageBuffer::transferToNewContext):
(WebCore::ImageBuffer::backendParameters): Deleted.
* Source/WebCore/platform/graphics/ImageBuffer.h:
(WebCore::ImageBuffer::create):
(WebCore::ImageBuffer::renderingMode const):
(WebCore::ImageBuffer::baseTransform const):
(WebCore::ImageBuffer::memoryCost const):
(WebCore::ImageBuffer::populateBackendInfo): Deleted.
(WebCore::ImageBuffer::ensureBackendCreated const): Deleted.
(WebCore::ImageBuffer::ensureBackend const): Deleted.
* Source/WebCore/platform/graphics/ImageBufferBackend.cpp:
(WebCore::ImageBufferBackend::calculateSafeBackendSize):
(WebCore::ImageBufferBackend::ImageBufferBackend):
(WebCore::baseTransformForBackingStore):
(WebCore::ImageBufferBackend::calculateBaseTransform):
(WebCore::ImageBufferBackend::baseTransform const):
* Source/WebCore/platform/graphics/ImageBufferBackend.h:
(WebCore::ImageBufferBackend::renderingMode const):
(WebCore::ImageBufferBackend::memoryCost const):
(WebCore::ImageBufferBackend::isNullImageBufferBackend const):
(WebCore::ImageBufferBackend::size const):
(WebCore::ImageBufferBackend::resolutionScale const):
(WebCore::ImageBufferBackend::bufferFormat const):
(WebCore::ImageBufferBackend::pixelFormat const):
(WebCore::ImageBufferBackend::purpose const):
* Source/WebCore/platform/graphics/ImageBufferDisplayListBackend.cpp:
(WebCore::ImageBufferDisplayListBackend::create):
(WebCore::ImageBufferDisplayListBackend::ImageBufferDisplayListBackend):
* Source/WebCore/platform/graphics/ImageBufferDisplayListBackend.h:
(WebCore::ImageBufferDisplayListBackend::calculateMemoryCost): Deleted.
* Source/WebCore/platform/graphics/ImageBufferParameters.h: Renamed from
Source/WebCore/platform/graphics/ImageBufferBackendParameters.h.
(WebCore::ImageBufferParameters::backendSize const):
* Source/WebCore/platform/graphics/NullImageBufferBackend.cpp:
(WebCore::NullImageBufferBackend::create):
* Source/WebCore/platform/graphics/NullImageBufferBackend.h:
(isType):
* Source/WebCore/platform/graphics/cairo/ImageBufferCairoBackend.cpp:
(WebCore::ImageBufferCairoBackend::transformToColorSpace):
*
Source/WebCore/platform/graphics/cairo/ImageBufferCairoImageSurfaceBackend.cpp:
(WebCore::ImageBufferCairoImageSurfaceBackend::calculateSafeBackendSize):
(WebCore::ImageBufferCairoImageSurfaceBackend::create):
(WebCore::ImageBufferCairoImageSurfaceBackend::ImageBufferCairoImageSurfaceBackend):
(WebCore::ImageBufferCairoImageSurfaceBackend::bytesPerRow const):
(WebCore::ImageBufferCairoImageSurfaceBackend::calculateMemoryCost): Deleted.
* Source/WebCore/platform/graphics/cairo/ImageBufferCairoImageSurfaceBackend.h:
* Source/WebCore/platform/graphics/cairo/ImageBufferCairoSurfaceBackend.cpp:
(WebCore::ImageBufferCairoSurfaceBackend::ImageBufferCairoSurfaceBackend):
* Source/WebCore/platform/graphics/cairo/ImageBufferCairoSurfaceBackend.h:
* Source/WebCore/platform/graphics/cg/ImageBufferCGBackend.cpp:
(WebCore::ImageBufferCGBackend::ImageBufferCGBackend):
(WebCore::ImageBufferCGBackend::applyBaseTransform const):
* Source/WebCore/platform/graphics/cg/ImageBufferCGBackend.h:
* Source/WebCore/platform/graphics/cg/ImageBufferCGBitmapBackend.cpp:
(WebCore::ImageBufferCGBitmapBackend::create):
(WebCore::ImageBufferCGBitmapBackend::ImageBufferCGBitmapBackend):
(WebCore::ImageBufferCGBitmapBackend::bytesPerRow const):
(WebCore::ImageBufferCGBitmapBackend::createNativeImageReference):
(WebCore::ImageBufferCGBitmapBackend::calculateMemoryCost): Deleted.
* Source/WebCore/platform/graphics/cg/ImageBufferCGBitmapBackend.h:
* Source/WebCore/platform/graphics/cg/ImageBufferCGPDFDocumentBackend.cpp:
(WebCore::ImageBufferCGPDFDocumentBackend::create):
(WebCore::ImageBufferCGPDFDocumentBackend::ImageBufferCGPDFDocumentBackend):
(WebCore::ImageBufferCGPDFDocumentBackend::calculateMemoryCost): Deleted.
* Source/WebCore/platform/graphics/cg/ImageBufferCGPDFDocumentBackend.h:
* Source/WebCore/platform/graphics/cg/ImageBufferIOSurfaceBackend.cpp:
(WebCore::ImageBufferIOSurfaceBackend::calculateSafeBackendSize):
(WebCore::ImageBufferIOSurfaceBackend::create):
(WebCore::ImageBufferIOSurfaceBackend::ImageBufferIOSurfaceBackend):
(WebCore::ImageBufferIOSurfaceBackend::createImageReference):
(WebCore::ImageBufferIOSurfaceBackend::calculateMemoryCost): Deleted.
* Source/WebCore/platform/graphics/cg/ImageBufferIOSurfaceBackend.h:
* Source/WebCore/platform/graphics/skia/ImageBufferSkiaAcceleratedBackend.cpp:
(WebCore::ImageBufferSkiaAcceleratedBackend::create):
(WebCore::ImageBufferSkiaAcceleratedBackend::ImageBufferSkiaAcceleratedBackend):
(WebCore::ImageBufferSkiaAcceleratedBackend::context):
* Source/WebCore/platform/graphics/skia/ImageBufferSkiaAcceleratedBackend.h:
* Source/WebCore/platform/graphics/skia/ImageBufferSkiaSurfaceBackend.cpp:
(WebCore::ImageBufferSkiaSurfaceBackend::calculateSafeBackendSize):
(WebCore::ImageBufferSkiaSurfaceBackend::ImageBufferSkiaSurfaceBackend):
(WebCore::ImageBufferSkiaSurfaceBackend::calculateMemoryCost): Deleted.
* Source/WebCore/platform/graphics/skia/ImageBufferSkiaSurfaceBackend.h:
* Source/WebCore/platform/graphics/skia/ImageBufferSkiaUnacceleratedBackend.cpp:
(WebCore::ImageBufferSkiaUnacceleratedBackend::create):
(WebCore::ImageBufferSkiaUnacceleratedBackend::ImageBufferSkiaUnacceleratedBackend):
* Source/WebCore/platform/graphics/skia/ImageBufferSkiaUnacceleratedBackend.h:
* Source/WebCore/testing/Internals.cpp:
(WebCore::Internals::getEffectiveRenderingModeOfNewlyCreatedAcceleratedImageBuffer):
* Source/WebCore/testing/ServiceWorkerInternals.cpp:
(WebCore::ServiceWorkerInternals::effectiveRenderingModeOfNewlyCreatedAcceleratedCanvasBuffer):
* Source/WebKit/GPUProcess/graphics/RemoteImageBuffer.cpp:
(WebKit::RemoteImageBuffer::RemoteImageBuffer):
(WebKit::RemoteImageBuffer::getEffectiveRenderingModeForTesting):
(WebKit::RemoteImageBuffer::getBackendHandle):
* Source/WebKit/GPUProcess/graphics/RemoteImageBuffer.h:
* Source/WebKit/GPUProcess/graphics/RemoteImageBuffer.messages.in:
* Source/WebKit/GPUProcess/graphics/RemoteRenderingBackend.cpp:
(WebKit::allocateImageBufferInternal):
(WebKit::RemoteRenderingBackend::allocateImageBuffer):
(WebKit::RemoteRenderingBackend::createImageBuffer):
(WebKit::RemoteRenderingBackend::createMappableImageBuffer):
(WebKit::RemoteRenderingBackend::createImageBufferWithBackingStore):
* Source/WebKit/GPUProcess/graphics/RemoteRenderingBackend.h:
* Source/WebKit/GPUProcess/graphics/RemoteRenderingBackend.messages.in:
* Source/WebKit/Scripts/webkit/opaque_ipc_types.tracking.in:
*
Source/WebKit/Shared/RemoteLayerTree/DynamicContentScalingBifurcatedImageBuffer.h:
*
Source/WebKit/Shared/RemoteLayerTree/DynamicContentScalingBifurcatedImageBuffer.mm:
(WebKit::DynamicContentScalingBifurcatedImageBuffer::DynamicContentScalingBifurcatedImageBuffer):
*
Source/WebKit/Shared/RemoteLayerTree/DynamicContentScalingImageBufferBackend.h:
*
Source/WebKit/Shared/RemoteLayerTree/DynamicContentScalingImageBufferBackend.mm:
(WebKit::makeContextOptions):
(WebKit::GraphicsContextDynamicContentScaling::GraphicsContextDynamicContentScaling):
(WebKit::DynamicContentScalingImageBufferBackend::create):
(WebKit::DynamicContentScalingImageBufferBackend::DynamicContentScalingImageBufferBackend):
(WebKit::DynamicContentScalingImageBufferBackend::context):
(WebKit::DynamicContentScalingImageBufferBackend::bytesPerRow const):
(WebKit::DynamicContentScalingImageBufferBackend::calculateMemoryCost): Deleted.
* Source/WebKit/Shared/WebCoreArgumentCoders.serialization.in:
* Source/WebKit/Shared/WebImage.cpp:
(WebKit::WebImage::create):
* Source/WebKit/WebProcess/GPU/graphics/ImageBufferBackendHandleSharing.h:
(WebKit::ImageBufferBackendHandleSharing::hasBackendHandle const):
* Source/WebKit/WebProcess/GPU/graphics/ImageBufferRemoteDisplayListBackend.cpp:
(WebKit::ImageBufferRemoteDisplayListBackend::create):
(WebKit::ImageBufferRemoteDisplayListBackend::ImageBufferRemoteDisplayListBackend):
(WebKit::ImageBufferRemoteDisplayListBackend::getPixelBuffer):
(WebKit::ImageBufferRemoteDisplayListBackend::createNativeImageReference):
Deleted.
* Source/WebKit/WebProcess/GPU/graphics/ImageBufferRemoteDisplayListBackend.h:
* Source/WebKit/WebProcess/GPU/graphics/ImageBufferRemotePDFDocumentBackend.cpp:
(WebKit::ImageBufferRemotePDFDocumentBackend::create):
(WebKit::ImageBufferRemotePDFDocumentBackend::getPixelBuffer):
(WebKit::ImageBufferRemotePDFDocumentBackend::calculateMemoryCost): Deleted.
* Source/WebKit/WebProcess/GPU/graphics/ImageBufferRemotePDFDocumentBackend.h:
* Source/WebKit/WebProcess/GPU/graphics/ImageBufferShareableBitmapBackend.cpp:
(WebKit::ImageBufferShareableBitmapBackend::calculateSafeBackendSize):
(WebKit::ImageBufferShareableBitmapBackend::calculateBytesPerRow):
(WebKit::ImageBufferShareableBitmapBackend::create):
(WebKit::ImageBufferShareableBitmapBackend::ImageBufferShareableBitmapBackend):
(WebKit::ImageBufferShareableBitmapBackend::calculateMemoryCost): Deleted.
* Source/WebKit/WebProcess/GPU/graphics/ImageBufferShareableBitmapBackend.h:
* Source/WebKit/WebProcess/GPU/graphics/RemoteImageBufferProxy.cpp:
(WebKit::RemoteImageBufferProxy::createForSerializedBuffer):
(WebKit::RemoteImageBufferProxy::RemoteImageBufferProxy):
(WebKit::RemoteImageBufferProxy::didFailToCreateBackend):
(WebKit::RemoteImageBufferProxy::ensureBackendHandle const):
(WebKit::RemoteImageBufferProxy::takeBackendHandleForSerialization):
(WebKit::RemoteImageBufferProxy::toBackendSharing):
(WebKit::RemoteImageBufferProxy::createBackingStoreHandleForGPUProcess const):
(WebKit::RemoteImageBufferProxy::getEffectiveRenderingModeForTesting const):
(WebKit::RemoteImageBufferProxy::copyNativeImage const):
(WebKit::RemoteImageBufferProxy::createNativeImageReference const):
(WebKit::RemoteImageBufferProxy::getPixelBuffer const):
(WebKit::RemoteImageBufferProxy::disconnect):
(WebKit::RemoteImageBufferProxy::putPixelBuffer):
(WebKit::RemoteImageBufferProxy::prepareForBackingStoreChange):
(WebKit::RemoteImageBufferProxy::sinkIntoSerializedImageBuffer):
(WebKit::RemoteSerializedImageBufferProxy::RemoteSerializedImageBufferProxy):
(WebKit::copyBackendHandle):
(WebKit::RemoteSerializedImageBufferProxy::clone const):
(WebKit::RemoteSerializedImageBufferProxy::sinkIntoImageBuffer):
(WebKit::RemoteImageBufferProxy::didCreateBackend): Deleted.
(WebKit::RemoteImageBufferProxy::ensureBackend const): Deleted.
* Source/WebKit/WebProcess/GPU/graphics/RemoteImageBufferProxy.h:
(WebKit::RemoteSerializedImageBufferProxy::renderingMode const):
(WebKit::RemoteSerializedImageBufferProxy::takeBackendHandle):
(WebKit::RemoteSerializedImageBufferProxy::RemoteSerializedImageBufferProxy):
* Source/WebKit/WebProcess/GPU/graphics/RemoteImageBufferProxy.messages.in:
* Source/WebKit/WebProcess/GPU/graphics/RemoteImageBufferSetProxy.cpp:
(WebKit::RemoteImageBufferSetProxy::willPrepareForDisplay):
* Source/WebKit/WebProcess/GPU/graphics/RemoteRenderingBackendProxy.cpp:
(WebKit::RemoteRenderingBackendProxy::didClose):
(WebKit::RemoteRenderingBackendProxy::createImageBuffer):
(WebKit::RemoteRenderingBackendProxy::moveToSerializedBuffer):
(WebKit::createBackendForSerializedBuffer):
(WebKit::RemoteRenderingBackendProxy::moveToImageBuffer):
* Source/WebKit/WebProcess/GPU/graphics/RemoteRenderingBackendProxy.h:
*
Source/WebKit/WebProcess/GPU/graphics/cocoa/ImageBufferRemoteIOSurfaceBackend.cpp:
(WebKit::ImageBufferRemoteIOSurfaceBackend::calculateSafeBackendSize):
(WebKit::ImageBufferRemoteIOSurfaceBackend::create):
(WebKit::ImageBufferRemoteIOSurfaceBackend::createBackendHandle const):
(WebKit::ImageBufferRemoteIOSurfaceBackend::takeBackendHandle):
(WebKit::ImageBufferRemoteIOSurfaceBackend::bytesPerRow const):
(WebKit::ImageBufferRemoteIOSurfaceBackend::calculateMemoryCost): Deleted.
*
Source/WebKit/WebProcess/GPU/graphics/cocoa/ImageBufferRemoteIOSurfaceBackend.h:
*
Source/WebKit/WebProcess/GPU/graphics/cocoa/ImageBufferShareableMappedIOSurfaceBackend.cpp:
(WebKit::ImageBufferShareableMappedIOSurfaceBackend::create):
*
Source/WebKit/WebProcess/GPU/graphics/cocoa/ImageBufferShareableMappedIOSurfaceBackend.h:
*
Source/WebKit/WebProcess/GPU/graphics/cocoa/ImageBufferShareableMappedIOSurfaceBitmapBackend.cpp:
(WebKit::ImageBufferShareableMappedIOSurfaceBitmapBackend::create):
(WebKit::ImageBufferShareableMappedIOSurfaceBitmapBackend::ImageBufferShareableMappedIOSurfaceBitmapBackend):
*
Source/WebKit/WebProcess/GPU/graphics/cocoa/ImageBufferShareableMappedIOSurfaceBitmapBackend.h:
* Source/WebKit/WebProcess/WebPage/RemoteLayerTree/GraphicsLayerCARemote.mm:
(WebKit::GraphicsLayerCARemote::setLayerContentsToImageBuffer):
Canonical link: https://commits.webkit.org/320735@main
To unsubscribe from these emails, change your notification settings at
https://github.com/WebKit/WebKit/settings/notifications