MPS issue job004035

TitleThread roots not suitable for user-level threads
Statusopen
Priorityoptional
Assigned userGareth Rees
OrganizationRavenbrook
DescriptionFilip Strömbäck reports [1]: "My language implements its own user-level threads (also known as green threads or fibers). Therefore, I need to scan the stacks of those as well as the "real" stack of the thread. As I'm switching stacks in the user-level threads, I can not use a static pointer to the cold end of the stack (as it changes)."

Filip is working around this problem by giving a bogus pointer for the cold end of the stack, but this results in an incorrect update to scannedSize, potentially affecting the scheduling of collections.
AnalysisSee job001357 for some analysis.
How foundcustomer
Evidence[1] https://info.ravenbrook.com/mail/2016/08/10/14-52-12/0/
Created byGareth Rees
Created on2016-08-10 16:55:14
Last modified byGareth Rees
Last modified on2016-10-14 14:21:38
History2016-08-10 GDR Created.