[ruby-core:121317] [Ruby master Bug#21180] SEGV while marking `imemo_env->iseq`
From:
"hsbt (Hiroshi SHIBATA) via ruby-core" <ruby-core@...>
Date:
2025-03-13 05:26:48 UTC
List:
ruby-core #121317
Issue #21180 has been updated by hsbt (Hiroshi SHIBATA).
Backport changed from 3.1: DONTNEED, 3.2: REQUIRED, 3.3: REQUIRED, 3.4: REQUIRED to 3.1: DONTNEED, 3.2: DONE, 3.3: REQUIRED, 3.4: REQUIRED
ruby_3_2 commit:e325f5b1636d7eb59a9cc2f35ba6d91d6da4f459 merged revision(s) commit:08b3a45bc97c835b4677bf76dbce68fd51d81897.
----------------------------------------
Bug #21180: SEGV while marking `imemo_env->iseq`
https://bugs.ruby-lang.org/issues/21180#change-112282
* Author: alanwu (Alan Wu)
* Status: Closed
* Backport: 3.1: DONTNEED, 3.2: DONE, 3.3: REQUIRED, 3.4: REQUIRED
----------------------------------------
This issue happens most realistically for people using a fiber scheduler (through e.g. the *async* gem), on Ruby 3.4.x and on Linux, but the following crashes for me for 3.2 and newer on macOS:
```
$ tail -n +1 test.rb ret1.rb
==> test.rb <==
require 'continuation'
module Warning
def self.warn(message)
GC.stress = true
callcc
end
end
require_relative 'ret1'
==> ret1.rb <==
return 1
```
Keywords for people searching: `rb_imemo_mark_and_move`, `Note that the Fiber scheduler is enabled`.
Working on a fix at https://github.com/ruby/ruby/pull/12898
--
https://bugs.ruby-lang.org/
______________________________________________
ruby-core mailing list -- ruby-core@ml.ruby-lang.org
To unsubscribe send an email to ruby-core-leave@ml.ruby-lang.org
ruby-core info -- https://ml.ruby-lang.org/mailman3/lists/ruby-core.ml.ruby-lang.org/