Skip to content
This repository was archived by the owner on Jan 23, 2023. It is now read-only.

Fix thread constructor test on newer kernels#28613

Merged
kouvel merged 1 commit intodotnet:masterfrom
kouvel:ThreadTestFix
Apr 1, 2018
Merged

Fix thread constructor test on newer kernels#28613
kouvel merged 1 commit intodotnet:masterfrom
kouvel:ThreadTestFix

Conversation

@kouvel
Copy link

@kouvel kouvel commented Mar 29, 2018

Works around and closes https://github.com/dotnet/coreclr/issues/17170

  • Works around an issue on linux-arm64 where pthread_create appears to reserve less stack space than requested without failing, and limits the max reserved stack size to the ulimit-configued value, leading to seg fault when the requested size of stack space is attempted to be used
  • Fixed to write every page in the stack region that is being checked, to guarantee hitting the guard page in case of failure. The JIT's stack probe for stackalloc should cover this, https://github.com/dotnet/coreclr/issues/16827 details why that was not happening, in any case this test is not intended to test stack probing behavior, so this change makes the test a bit stronger in what it actually intends to test.

@sdmaclea @janvorli

Works around and closes https://github.com/dotnet/coreclr/issues/17170
- Works around an issue on linux-arm64 where pthread_create appears to reserve less stack space than requested without failing, and limits the max reserved stack size to the ulimit-configued value, leading to seg fault when the requested size of stack space is attempted to be used
- Fixed to write every page in the stack region that is being checked, to guarantee hitting the guard page in case of failure. The JIT's stack probe for stackalloc should cover this, https://github.com/dotnet/coreclr/issues/16827 details why that was not happening, in any case this test is not intended to test stack probing behavior, so this change makes the test a bit stronger in what it actually intends to test.
@kouvel kouvel added this to the Future milestone Mar 29, 2018
@kouvel kouvel self-assigned this Mar 29, 2018
@kouvel kouvel requested a review from janvorli March 29, 2018 20:37
@kouvel
Copy link
Author

kouvel commented Mar 31, 2018

@dotnet-bot test Windows x64 Debug Build

1 similar comment
@kouvel
Copy link
Author

kouvel commented Mar 31, 2018

@dotnet-bot test Windows x64 Debug Build

@kouvel kouvel merged commit d73eb91 into dotnet:master Apr 1, 2018
@kouvel kouvel deleted the ThreadTestFix branch April 1, 2018 11:26
@karelz karelz modified the milestones: Future, 2.1.0 Apr 2, 2018
picenka21 pushed a commit to picenka21/runtime that referenced this pull request Feb 18, 2022
Works around and closes https://github.com/dotnet/coreclr/issues/17170
- Works around an issue on linux-arm64 where pthread_create appears to reserve less stack space than requested without failing, and limits the max reserved stack size to the ulimit-configued value, leading to seg fault when the requested size of stack space is attempted to be used
- Fixed to write every page in the stack region that is being checked, to guarantee hitting the guard page in case of failure. The JIT's stack probe for stackalloc should cover this, https://github.com/dotnet/coreclr/issues/16827 details why that was not happening, in any case this test is not intended to test stack probing behavior, so this change makes the test a bit stronger in what it actually intends to test.

Commit migrated from dotnet/corefx@d73eb91
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.

Projects

None yet

Development

Successfully merging this pull request may close these issues.

[Arm64] System.Threading.Thread.Tests stack overflow

3 participants