Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Fixing continuation recursions to not depend on fixed amount of recursions #1969

Merged
merged 3 commits into from Jan 28, 2016

Conversation

sithhell
Copy link
Member

  • Disabling the continuation recursion counter on windows because it is not
    needed there (stack grows dynamically)
  • Adding function to retrieve the current value of the stack pointers on
    supported platforms (x86, x86_64, arm and powerpc)
  • When running the completion handlers, check for available stack space
    to decide wether to recurse asynchronously or not
  • Fallback to continuation recursion count for platforms where we can't retrieve
    the stack pointer

This patch fixes a lot of problems with stack overflows in general and leads to less asynchronous completion handler executions in some cases.

…sions

 - Disabling the continuation recursion counter on windows because it is not
   needed there (stack grows dynamically)
 - Adding function to retrieve the current value of the stack pointers on
   supported platforms (x86, x86_64, arm and powerpc)
 - When running the completion handlers, check for available stack base
   to decide wether to recurse asynchronously or not
 - Fallback to continuation recursion count for platforms where we can't retrieve
   the stack pointer
@hkaiser
Copy link
Member

hkaiser commented Jan 27, 2016

LGTM, thanks!

@sithhell sithhell force-pushed the fixing_continuation_recursion branch from 64f6c3f to a57a993 Compare January 27, 2016 20:07
sithhell and others added 2 commits January 27, 2016 22:06
…sions

 - Disabling the continuation recursion counter on windows because it is not
   needed there (stack grows dynamically)
 - Adding function to retrieve the current value of the stack pointers on
   supported platforms (x86, x86_64, arm and powerpc)
 - When running the completion handlers, check for available stack base
   to decide wether to recurse asynchronously or not
 - Fallback to continuation recursion count for platforms where we can't retrieve
   the stack pointer
sithhell added a commit that referenced this pull request Jan 28, 2016
…sion

Fixing continuation recursions to not depend on fixed amount of recursions
@sithhell sithhell merged commit 6bf8086 into master Jan 28, 2016
@sithhell sithhell deleted the fixing_continuation_recursion branch January 28, 2016 07:16
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging this pull request may close these issues.

None yet

2 participants