summaryrefslogtreecommitdiff
path: root/ext
diff options
context:
space:
mode:
authorAlan Wu <XrXr@users.noreply.github.com>2020-10-15 14:51:30 -0400
committerAlan Wu <XrXr@users.noreply.github.com>2020-10-16 10:24:12 -0400
commit0d17cdd0ac3ae0f3f3608e5430b68467a6a13cc7 (patch)
tree45277b153440a39331c7853b5933b9c95f7fc007 /ext
parentde5e8d0e3bc3cc39487ffc9d9c15642b6881cd54 (diff)
Abort on system stack overflow during GC
Buggy native extensions could have mark functions that cause stack overflow. When a stack overflow happens during GC, Ruby used to recover by raising an exception, which runs the interpreter. It's not safe to run the interpreter during GC since the GC is in an inconsistent state. This could cause object allocation during GC, for example. Instead of running the interpreter and potentially causing a crash down the line, fail fast and abort.
Notes
Notes: Merged: https://github.com/ruby/ruby/pull/3661
Diffstat (limited to 'ext')
0 files changed, 0 insertions, 0 deletions