-
-
Notifications
You must be signed in to change notification settings - Fork 1.6k
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
Thread.allocate_stack: Pass MAP_STACK to mmap() on OpenBSD 6.3+ #6250
Conversation
Thanks, is there any reference for this at least to add in the PR? Is there any program you tried and is failing on openbsd without this patch? |
The compiler will crash when compiling:
And a kernel message logged:
This is due to a change in OpenBSD 6.3 which required similar changes in Go and other language ports. |
Does |
Oops, it will be required for OpenBSD 6.4 (and 6.3-current now). The flag was added for 6.3 but was ignored under the hood, but using the flag in previous versions will return an error. Is there a proper way to check a system I am getting other crashes when trying to compile the compiler or when running 'make spec', which I am looking into. |
I believe the target triple is {% if flag?(:openbsd) && !flag?(:"openbsd6.2") %} |
I've updated the commit to skip |
I've also run |
Thank you! |
* Update to 0.25.0, shards to 0.8.1 - Add MAP_STACK patches which are pending upstream commit (crystal-lang/crystal#6250) - Bootstrap object has been rebuilt and temporarily hosted at jcs.org - Crank stacksize resource limit before building compiler or else it will SIGSEGV - Wrap DESCR at 68 * Update to 0.25.1, now building without patches
This is required as of OpenBSD 6.3.