-
Notifications
You must be signed in to change notification settings - Fork 12.8k
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
openbsd: don't reallocate a guard page on the stack. #102854
Conversation
the kernel currently enforce that a stack is immutable. calling mmap(2) or mprotect(2) to change it will result in EPERM, which generate a panic!(). so just do like for Linux, and trust the kernel to do the right thing.
Hey! It looks like you've submitted a new PR for the library teams! If this PR contains changes to any Examples of
|
r? @m-ou-se (rust-highfive has picked a reviewer for you, use r? to override) |
@bors r+ |
…m-ou-se openbsd: don't reallocate a guard page on the stack. the kernel currently enforce that a stack is immutable. calling mmap(2) or mprotect(2) to change it will result in EPERM, which generate a panic!(). so just do like for Linux, and trust the kernel to do the right thing.
Rollup of 6 pull requests Successful merges: - rust-lang#102765 (Suggest `==` to the first expr which has `ExprKind::Assign` kind) - rust-lang#102854 (openbsd: don't reallocate a guard page on the stack.) - rust-lang#102904 (Print return-position `impl Trait` in trait verbosely if `-Zverbose`) - rust-lang#102947 (Sort elaborated existential predicates in `object_ty_for_trait`) - rust-lang#102956 (Use `full_res` instead of `expect_full_res`) - rust-lang#102999 (Delay `is_intrinsic` query until after we've determined the callee is a function) Failed merges: r? `@ghost` `@rustbot` modify labels: rollup
Hi, Thanks you very much for the fix! I have just upgrade my OpenBSD (from github master) and now my Rust application is broken. Surprisingly - only my app. But other Rust tools like alacritty work fine. So what is the way to trigger this issue? Is there anything specific that the Rust app should be doing, that I can temporarily avoid doing? The current version of OpenBSD is 1.64, but the fix will only reach in 1.66, so I just wanted to know what causes the app to cause this. Thank you, |
The fix has been backported downstream to Rust programs from ports tree has already been rebuilt with it, so there are running with a fixed std library. |
Yes, you are correct. I have realized I have in incorrectly updated my
system. Sorry for confusion. Thanks!
…On Tue 1 Nov 2022, 18:21 Sebastien Marie, ***@***.***> wrote:
The fix has been backported downstream to lang/rust port (which follow
stable). You need to rebuild your application with it (at least
rustc-1.64.0p0) in order to have the updated code (from std library) in
your application.
Rust programs from ports tree has already been rebuilt with it, so there
are running with a fixed std library.
—
Reply to this email directly, view it on GitHub
<#102854 (comment)>,
or unsubscribe
<https://github.com/notifications/unsubscribe-auth/AAKZGIEHACFEWZQ6O5GYB7DWGFNRHANCNFSM6AAAAAARAYKDYM>
.
You are receiving this because you commented.Message ID:
***@***.***>
|
the kernel currently enforce that a stack is immutable. calling mmap(2) or mprotect(2) to change it will result in EPERM, which generate a panic!().
so just do like for Linux, and trust the kernel to do the right thing.