Title: [255287] branches/safari-610.1.1-branch/Source/bmalloc
- Revision
- 255287
- Author
- [email protected]
- Date
- 2020-01-28 13:49:13 -0800 (Tue, 28 Jan 2020)
Log Message
Cherry-pick r254764. rdar://problem/58688794
[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-610.1.1-branch/Source/bmalloc/ChangeLog (255286 => 255287)
--- branches/safari-610.1.1-branch/Source/bmalloc/ChangeLog 2020-01-28 21:49:11 UTC (rev 255286)
+++ branches/safari-610.1.1-branch/Source/bmalloc/ChangeLog 2020-01-28 21:49:13 UTC (rev 255287)
@@ -1,5 +1,39 @@
2020-01-28 Russell Epstein <[email protected]>
+ Cherry-pick r254764. rdar://problem/58688794
+
+ [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/58657110
[bmalloc] IsoHeap's initial setup should be small
Modified: branches/safari-610.1.1-branch/Source/bmalloc/bmalloc/IsoHeapImplInlines.h (255286 => 255287)
--- branches/safari-610.1.1-branch/Source/bmalloc/bmalloc/IsoHeapImplInlines.h 2020-01-28 21:49:11 UTC (rev 255286)
+++ branches/safari-610.1.1-branch/Source/bmalloc/bmalloc/IsoHeapImplInlines.h 2020-01-28 21:49:13 UTC (rev 255287)
@@ -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