Title: [255327] branches/safari-609-branch/Source/bmalloc
- Revision
- 255327
- Author
- [email protected]
- Date
- 2020-01-28 16:40:37 -0800 (Tue, 28 Jan 2020)
Log Message
Cherry-pick r254764. rdar://problem/58920191
[bmalloc] Fix IsoHeapImpl's assertion introduced in r254708
https://bugs.webkit.org/show_bug.cgi?id=206440
<rdar://problem/58688794>
Reviewed by Mark Lam.
The assertion introduced in r254708 was wrong.
Fixing it to check the invariant we actually want to ensure.
This fixes TestWTF crash in Debug build.
* bmalloc/IsoHeapImplInlines.h:
(bmalloc::IsoHeapImpl<Config>::takeFirstEligible):
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@254764 268f45cc-cd09-0410-ab3c-d52691b4dbfc
Modified Paths
Diff
Modified: branches/safari-609-branch/Source/bmalloc/ChangeLog (255326 => 255327)
--- branches/safari-609-branch/Source/bmalloc/ChangeLog 2020-01-29 00:40:34 UTC (rev 255326)
+++ branches/safari-609-branch/Source/bmalloc/ChangeLog 2020-01-29 00:40:37 UTC (rev 255327)
@@ -1,5 +1,39 @@
2020-01-28 Russell Epstein <[email protected]>
+ Cherry-pick r254764. rdar://problem/58920191
+
+ [bmalloc] Fix IsoHeapImpl's assertion introduced in r254708
+ https://bugs.webkit.org/show_bug.cgi?id=206440
+ <rdar://problem/58688794>
+
+ Reviewed by Mark Lam.
+
+ The assertion introduced in r254708 was wrong.
+ Fixing it to check the invariant we actually want to ensure.
+ This fixes TestWTF crash in Debug build.
+
+ * bmalloc/IsoHeapImplInlines.h:
+ (bmalloc::IsoHeapImpl<Config>::takeFirstEligible):
+
+ git-svn-id: https://svn.webkit.org/repository/webkit/trunk@254764 268f45cc-cd09-0410-ab3c-d52691b4dbfc
+
+ 2020-01-17 Yusuke Suzuki <[email protected]>
+
+ [bmalloc] Fix IsoHeapImpl's assertion introduced in r254708
+ https://bugs.webkit.org/show_bug.cgi?id=206440
+ <rdar://problem/58688794>
+
+ Reviewed by Mark Lam.
+
+ The assertion introduced in r254708 was wrong.
+ Fixing it to check the invariant we actually want to ensure.
+ This fixes TestWTF crash in Debug build.
+
+ * bmalloc/IsoHeapImplInlines.h:
+ (bmalloc::IsoHeapImpl<Config>::takeFirstEligible):
+
+2020-01-28 Russell Epstein <[email protected]>
+
Cherry-pick r254708. rdar://problem/58945571
[bmalloc] IsoHeap's initial setup should be small
Modified: branches/safari-609-branch/Source/bmalloc/bmalloc/IsoHeapImplInlines.h (255326 => 255327)
--- branches/safari-609-branch/Source/bmalloc/bmalloc/IsoHeapImplInlines.h 2020-01-29 00:40:34 UTC (rev 255326)
+++ branches/safari-609-branch/Source/bmalloc/bmalloc/IsoHeapImplInlines.h 2020-01-29 00:40:37 UTC (rev 255327)
@@ -60,9 +60,13 @@
RELEASE_BASSERT(!m_headDirectory.get());
RELEASE_BASSERT(!m_tailDirectory.get());
} else {
+ auto* originalCursor = cursor;
+ BUNUSED(originalCursor);
for (; cursor; cursor = cursor->next) {
EligibilityResult<Config> result = cursor->payload.takeFirstEligible(locker);
- ASSERT(m_firstEligibleOrDecommitedDirectory.get() == cursor);
+ // While iterating, m_firstEligibleOrDecommitedDirectory is never changed. We are holding a lock,
+ // and IsoDirectory::takeFirstEligible must not populate a new eligibile / decommitted pages.
+ BASSERT(m_firstEligibleOrDecommitedDirectory.get() == originalCursor);
if (result.kind != EligibilityKind::Full) {
m_directoryHighWatermark = std::max(m_directoryHighWatermark, cursor->index());
m_firstEligibleOrDecommitedDirectory = cursor;
_______________________________________________
webkit-changes mailing list
[email protected]
https://lists.webkit.org/mailman/listinfo/webkit-changes