Skip to content

Commit 0e41c1f

Browse files
committed
Temporary fix for race condition issue
1 parent 8cf18e5 commit 0e41c1f

File tree

1 file changed

+13
-0
lines changed

1 file changed

+13
-0
lines changed

patches/race-condition-fix.patch

Lines changed: 13 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,13 @@
1+
diff --git forkSrcPrefix/deps/v8/src/heap/marking-barrier-inl.h forkDstPrefix/deps/v8/src/heap/marking-barrier-inl.h
2+
index 84fd7752906e522dc11d9d6aef2966f7d62ff45b..6952645be3ec0a9785afc6ad156af9c3f35a3b47 100644
3+
--- forkSrcPrefix/deps/v8/src/heap/marking-barrier-inl.h
4+
+++ forkDstPrefix/deps/v8/src/heap/marking-barrier-inl.h
5+
@@ -77,6 +77,8 @@ void MarkingBarrier::MarkValueShared(Tagged<HeapObject> value) {
6+
7+
void MarkingBarrier::MarkValueLocal(Tagged<HeapObject> value) {
8+
DCHECK(!InReadOnlySpace(value));
9+
+ // Temporary safety check before we found a way to fix race condition between GC and microtasks
10+
+ if (V8_UNLIKELY(!is_activated_)) return;
11+
if (is_minor()) {
12+
// We do not need to insert into RememberedSet<OLD_TO_NEW> here because the
13+
// C++ marking barrier already does this for us.

0 commit comments

Comments
 (0)