Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Reduce memory usage when sending SharedBuffer across IPC
https://bugs.webkit.org/show_bug.cgi?id=248301 rdar://102201837 Pack small SharedBuffers across a single allocated SharedMemory. A threshold of 4kB has been chosen through educated guesses. Have URLSchemeTaskDidReceiveData use SharedBuffer when sending data to the content process rather than a SharedBufferReference. The primary use of a SharedBufferReference is to keep ownership of the allocated memory to the sending process. There's no such requirement here. Fly-by improvement, only perform a single memory allocation when passing a FragmentedShared made of multiple segments on GTK and WPE platfom. Reviewed by Kimmo Kinnunen. * Source/WebKit/Shared/WebCoreArgumentCoders.cpp: (IPC::useUnixDomainSockets): (IPC::ArgumentCoder<WebCore::FragmentedSharedBuffer>::encode): (IPC::ArgumentCoder<WebCore::FragmentedSharedBuffer>::decode): * Source/WebKit/UIProcess/WebURLSchemeTask.cpp: (WebKit::WebURLSchemeTask::didReceiveData): * Source/WebKit/UIProcess/WebURLSchemeTask.h: * Source/WebKit/WebProcess/WebPage/WebPage.cpp: (WebKit::WebPage::urlSchemeTaskDidReceiveData): * Source/WebKit/WebProcess/WebPage/WebPage.h: * Source/WebKit/WebProcess/WebPage/WebPage.messages.in: * Source/WebKit/WebProcess/WebPage/WebURLSchemeHandlerProxy.cpp: (WebKit::WebURLSchemeHandlerProxy::taskDidReceiveData): * Source/WebKit/WebProcess/WebPage/WebURLSchemeHandlerProxy.h: Canonical link: https://commits.webkit.org/256999@main
- Loading branch information
Showing
8 changed files
with
47 additions
and
35 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters