diff options
author | Alan Wu <XrXr@users.noreply.github.com> | 2023-09-14 17:18:45 -0400 |
---|---|---|
committer | GitHub <noreply@github.com> | 2023-09-14 17:18:45 -0400 |
commit | 1961c5bb767a451928dc719d37c2b38f89d248c6 (patch) | |
tree | 9e92d1585057253c5349ed458af97c6d5f66ad07 /yjit/bindgen/src | |
parent | 66ffa15ce01e1b8d46738032e714be18194af3ca (diff) |
YJIT: Plug native stack overflow
Previously, TestStack#test_machine_stack_size failed pretty consistently
on ARM64 macOS, with Rust code and part of the interpreter used for
per-instruction fallback (rb_vm_invokeblock() and friends) touching the
stack guard page and crashing with SEGV. I've also seen the same test
fail on x64 Linux, though with a different symptom.
Notes
Notes:
Merged: https://github.com/ruby/ruby/pull/8443
Merged-By: XrXr
Diffstat (limited to 'yjit/bindgen/src')
-rw-r--r-- | yjit/bindgen/src/main.rs | 1 |
1 files changed, 1 insertions, 0 deletions
diff --git a/yjit/bindgen/src/main.rs b/yjit/bindgen/src/main.rs index baa71fc6cf..db93672a3d 100644 --- a/yjit/bindgen/src/main.rs +++ b/yjit/bindgen/src/main.rs @@ -449,6 +449,7 @@ fn main() { .allowlist_function("rb_obj_class") .allowlist_function("rb_obj_is_proc") .allowlist_function("rb_vm_base_ptr") + .allowlist_function("rb_ec_stack_check") // We define VALUE manually, don't import it .blocklist_type("VALUE") |