Branch: refs/heads/main
Home: https://github.com/WebKit/WebKit
Commit: 1d13510af04896b1d4420ea77ec73c9b6f23bb1f
https://github.com/WebKit/WebKit/commit/1d13510af04896b1d4420ea77ec73c9b6f23bb1f
Author: Mark Lam <[email protected]>
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@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
_______________________________________________
webkit-changes mailing list
[email protected]
https://lists.webkit.org/mailman/listinfo/webkit-changes