Branch: refs/heads/main
Home: https://github.com/WebKit/WebKit
Commit: 48eb357acbef689220d358f23821731600eecdd6
https://github.com/WebKit/WebKit/commit/48eb357acbef689220d358f23821731600eecdd6
Author: Marcus Plutowski <[email protected]>
Date: 2025-02-27 (Thu, 27 Feb 2025)
Changed paths:
M Source/WTF/wtf/SequesteredAllocator.h
M Source/WTF/wtf/SequesteredImmortalHeap.cpp
M Source/WTF/wtf/SequesteredImmortalHeap.h
Log Message:
-----------
[WTF] Unify granule tracking between ArenaAllocator and ImmortalHeap
rdar://145159083
https://bugs.webkit.org/show_bug.cgi?id=287993
Reviewed by Yusuke Suzuki.
Previously, granules were essentially implicit to the internal structure
of the SequesteredArenaAllocator. Now, the SequesteredImmortalHeap
expects every allocator to have a ConcurrentDecommitQueue of granules,
which allows the scavenger to target those through the
SequesteredImmortalHeap, allowing us to offload all decommit overhead to
a single central scavenging point.
* Source/WTF/wtf/SequesteredAllocator.h:
(WTF::ArenaGranuleHeader::headerForGranule): Deleted.
* Source/WTF/wtf/SequesteredImmortalHeap.cpp:
(WTF::ConcurrentDecommitQueue::decommit):
* Source/WTF/wtf/SequesteredImmortalHeap.h:
(WTF::GranuleList::GranuleList):
(WTF::GranuleList::operator=):
(WTF::GranuleList::concatenate):
(WTF::GranuleList::push):
(WTF::GranuleList::first):
(WTF::GranuleList::last):
(WTF::GranuleList::popFirst):
(WTF::GranuleList::popLast):
(WTF::GranuleList::empty const):
(WTF::GranuleList::assertBounds const):
(WTF::ConcurrentDecommitQueue::concatenate):
(WTF::ConcurrentDecommitQueue::acquireExclusiveCopyOfGranuleList):
(WTF::SequesteredImmortalHeap::mapGranule):
(WTF::SequesteredImmortalHeap::decommitGranule):
(WTF::SequesteredImmortalHeap::SequesteredImmortalHeap):
(WTF::SequesteredImmortalHeap::mapPages): Deleted.
Canonical link: https://commits.webkit.org/291240@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