From dcf56892e9a2d4f2ceb9a219d2a4423d4c6a958a Mon Sep 17 00:00:00 2001 From: Ben Gamari Date: Mon, 21 Dec 2020 15:02:59 -0500 Subject: nonmoving: STM fix? This needs an audit. --- rts/STM.c | 3 +++ 1 file changed, 3 insertions(+) diff --git a/rts/STM.c b/rts/STM.c index d86534eba2..81dab19fb9 100644 --- a/rts/STM.c +++ b/rts/STM.c @@ -579,6 +579,9 @@ static void remove_watch_queue_entries_for_trec(Capability *cap, pq -> next_queue_entry = nq; } else { ASSERT(SEQ_CST_LOAD(&s->first_watch_queue_entry) == q); + IF_NONMOVING_WRITE_BARRIER_ENABLED { + updateRemembSetPushClosure(&cap->upd_rem_set, s -> first_watch_queue_entry); + } SEQ_CST_STORE(&s->first_watch_queue_entry, nq); dirty_TVAR(cap, s, (StgClosure *) q); // we modified first_watch_queue_entry } -- cgit v1.2.1