You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
{{ message }}
Repository navigation
Stack overflow in Mono interpreter on some System.Threading.Tasks.Dataflow.Tests tests #38817
For reference, this is caused by #38085. After that change, we have fixed sized stack, and we no longer allocate stack fragments forever from the OS. I'm not comfortable increasing the stack size just because this test stress tests it. I think the async/task code has a limit on how much it should execute synchronously (in recursive fashion), if asked to. If that's the case, maybe this limit should be tweaked for interpreter.
This also repros on MacCatalyst using the interpreter - see #52460
I think there maybe some issue with available stack detection in the async code - it seems like the code executes and we get SIGBUS errors or stack corruption. Although I couldn't get an informative stack trace
Activity
BrzVlad commentedon Jul 13, 2020
For reference, this is caused by #38085. After that change, we have fixed sized stack, and we no longer allocate stack fragments forever from the OS. I'm not comfortable increasing the stack size just because this test stress tests it. I think the async/task code has a limit on how much it should execute synchronously (in recursive fashion), if asked to. If that's the case, maybe this limit should be tweaked for interpreter.
lambdageek commentedon Sep 24, 2021
This also repros on MacCatalyst using the interpreter - see #52460
I think there maybe some issue with available stack detection in the async code - it seems like the code executes and we get SIGBUS errors or stack corruption. Although I couldn't get an informative stack trace