[webkit-changes] [WebKit/WebKit] 1d1351: Opt WebKit processes into requiring a per boot see...
Commit Queue
noreply at github.com
Sun Jan 12 13:34:47 PST 2025
Branch: refs/heads/main
Home: https://github.com/WebKit/WebKit
Commit: 1d13510af04896b1d4420ea77ec73c9b6f23bb1f
https://github.com/WebKit/WebKit/commit/1d13510af04896b1d4420ea77ec73c9b6f23bb1f
Author: Mark Lam <mark.lam at apple.com>
Date: 2025-01-12 (Sun, 12 Jan 2025)
Changed paths:
M Source/WebKit/Shared/EntryPointUtilities/Cocoa/XPCService/XPCServiceMain.mm
M Source/bmalloc/bmalloc/TZoneHeapManager.cpp
M Source/bmalloc/bmalloc/TZoneHeapManager.h
Log Message:
-----------
Opt WebKit processes into requiring a per boot seed for TZoneHeapManager.
https://bugs.webkit.org/show_bug.cgi?id=285804
rdar://142752165
Reviewed by Keith Miller and Yusuke Suzuki.
In 288751 at main, we removed a RELEASE_BASSERT that ensures that the TZoneHeapManager primodialSeed
is unique per boot to accommodate clients code that are not WebKit processes which may not have
access to kern.boottime. However, we can restore this RELEASE_ASSERT for WebKit processes which
we do know have access.
This patch adds TZoneHeapManager::requirePerBootSeed() which allows a client to opt into enabling
that RELEASE_BASSERT, and requiring a unique per boot seed.
Also renamed m_state to s_state since it is a static field.
Also made bucketsForSmallSizes, bucketsForLargeSizes, and maxSmallSize static since the are only
accessed in TZoneHeapManager.cpp.
* Source/WebKit/Shared/EntryPointUtilities/Cocoa/XPCService/XPCServiceMain.mm:
(WebKit::XPCServiceEventHandler):
* Source/bmalloc/bmalloc/TZoneHeapManager.cpp:
(bmalloc::api::TZoneHeapManager::TZoneHeapManager):
(bmalloc::api::TZoneHeapManager::requirePerBootSeed):
(bmalloc::api::TZoneHeapManager::setBucketParams):
(bmalloc::api::TZoneHeapManager::init):
(bmalloc::api::TZoneHeapManager::isReady):
(bmalloc::api::TZoneHeapManager::dumpRegisteredTypes):
(bmalloc::api::TZoneHeapManager::populateBucketsForSizeClass):
(bmalloc::api::TZoneHeapManager::heapRefForTZoneType):
* Source/bmalloc/bmalloc/TZoneHeapManager.h:
Canonical link: https://commits.webkit.org/288777@main
To unsubscribe from these emails, change your notification settings at https://github.com/WebKit/WebKit/settings/notifications
More information about the webkit-changes
mailing list