<div dir="ltr">Hello Mono Team,<div><br></div><div>i found a bug which i want to submit a patch for. </div><div><br></div><div>The bug is in update_current_thread_stack in sgen-stw.c. </div><div><br></div><div>This line does not work as intended.</div>
<div><br></div><div><div>ARCH_STORE_REGS (reg_ptr);</div><div>memcpy (&info->regs, reg_ptr, sizeof (info->regs));</div></div><div><br></div><div>for some reason the pointer address gets the content of ebi register of the cpu. So after </div>
<div>ARCH_STORE_REGS (reg_ptr); <br></div><div><br></div><div>reg_ptr directs to the content of ebi an loses its orginal pointer address. </div><div><br></div><div>Before that line reg_ptr  is defined as fallows:</div><div>
void *reg_ptr = cur_thread_regs;</div><div><br></div><div>In theory it should work that way. But it does not. </div><div><br></div><div>The fix is pretty simple use cur_thread_regs instand of reg_ptr  and it works.</div><div>
<br></div><div>Best regards</div><div>Sahin Vardar</div><div><br></div><div><br></div></div>