<div dir="ltr"><div>Hi everyone,</div><div><br></div><div>In new_gc_thread(), why is gc_thread.mut_spin initialized to the &#39;released&#39; state instead of the &#39;acquired&#39; state (as with gc_spin)? I think this is wrong for two reasons:</div>

<div><br></div><div>1. During the first GC (but not during subsequent GCs), gcWorkerThread() releases mut_spin but mut_spin is not &#39;acquired&#39; at this point.</div><div>2. The initial state of mut_spin is inconsistent with the final state of mut_spin at the end of a GC (it is in the &#39;acquired&#39; state then).</div>

<div><br></div><div>So it seems to me that mut_spin should be initialized to the &#39;acquired&#39; state, like gc_spin is. Doing so would address these two points.</div><div><br></div><div>Does this change make sense?</div>
</div>