Changeset 279689 in webkit
- Timestamp:
- Jul 7, 2021, 5:53:54 PM (4 years ago)
- Location:
- trunk/Source/JavaScriptCore
- Files:
-
- 2 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/Source/JavaScriptCore/ChangeLog
r279677 r279689 1 2021-07-07 Mark Lam <mark.lam@apple.com> 2 3 Heap::waitForCollector() needs to set m_mutatorDidRun. 4 https://bugs.webkit.org/show_bug.cgi?id=227782 5 rdar://78326474 6 7 Reviewed by Saam Barati. 8 9 Heap::waitForCollector() is one of 2 clients of Heap::stopIfNecessarySlow(unsigned oldState). 10 The other client, Heap::stopIfNecessarySlow() sets m_mutatorDidRun to true after 11 calling Heap::stopIfNecessarySlow(unsigned oldState). Heap::waitForCollector() 12 needs to do the same. Constraint solvers rely on this. 13 14 Without this, one fall out we've seen is that DOMGCOutputConstraint fails to 15 visitOutputConstraints, and as a result, opaqueRoots may not get updated. This 16 issue was caught by the GC verifier. 17 18 * heap/Heap.cpp: 19 (JSC::Heap::waitForCollector): 20 1 21 2021-07-07 Michael Saboff <msaboff@apple.com> 2 22 -
trunk/Source/JavaScriptCore/heap/Heap.cpp
r279654 r279689 1883 1883 continue; 1884 1884 1885 m_mutatorDidRun = true; 1885 1886 // FIXME: We wouldn't need this if stopIfNecessarySlow() had a mode where it knew to just 1886 1887 // do the collection. 1887 1888 relinquishConn(); 1888 1889 1889 1890 if (done) { 1890 1891 clearMutatorWaiting(); // Clean up just in case.
Note:
See TracChangeset
for help on using the changeset viewer.