Skip to content

ZJIT: [BUG] inconsistent live slot number #1025

Description

@k0kubun

ruby#17731 seems to have introduced a bug for the GC fastpath for newarray ruby#17277.

This is reproducible as of the latest master ruby@454a8aa357 with the release build of ZJIT (--enable-zjit, not --enable-zjit=dev). It appears to be introduced at ruby#17731:

$ ./ruby -v --zjit-call-threshold=1 -e 'def a = []; a; 10_000.times { a }; GC.verify_internal_consistency'
ruby 4.1.0dev (2026-07-08T23:30:28Z master 583668d5ed) +ZJIT +PRISM [x86_64-linux]
heap_pages_final_slots: 0, total_freed_objects: 0
-e:1: [BUG] inconsistent live slot number: expect 38658, but 48653.
ruby 4.1.0dev (2026-07-08T23:30:28Z master 583668d5ed) +ZJIT +PRISM [x86_64-linux]

-- Control frame information -----------------------------------------------
c:0003 p:---- s:0010 e:000009 l:y b:0001 r:(nil) CFUNC  :verify_internal_consistency
c:0002 p:0017 s:0006 e:000005 l:n b:---- r:(nil) EVAL   -e:1 [FINISH]
c:0001 p:0000 s:0003 E:001e60 l:y b:---- r:(nil) DUMMY  [FINISH]

-- Ruby level backtrace information ----------------------------------------
-e:1:in '<main>'
-e:1:in 'verify_internal_consistency'

-- Threading information ---------------------------------------------------
Total ractor count: 1
Ruby thread count for this ractor: 1

-- C level backtrace information -------------------------------------------
/home/k0kubun/src/github.com/ruby/ruby/.after/ruby(rb_print_backtrace+0x14) [0x5d4e23380b13] ../vm_dump.c:1111
/home/k0kubun/src/github.com/ruby/ruby/.after/ruby(rb_vm_bugreport) ../vm_dump.c:1473
/home/k0kubun/src/github.com/ruby/ruby/.after/ruby(rb_bug_without_die_internal+0x5f) [0x5d4e2316a1a6] ../error.c:1107
/home/k0kubun/src/github.com/ruby/ruby/.after/ruby(rb_bug) ../error.c:1125
/home/k0kubun/src/github.com/ruby/ruby/.after/ruby(gc_verify_internal_consistency_+0x56) [0x5d4e23193755] ../gc/default/default.c:5742
/home/k0kubun/src/github.com/ruby/ruby/.after/ruby(gc_verify_internal_consistency) ../gc/default/default.c:5797
/home/k0kubun/src/github.com/ruby/ruby/.after/ruby(rb_gc_verify_internal_consistency) ../gc/default/default.c:9914
/home/k0kubun/src/github.com/ruby/ruby/.after/ruby(gc_verify_internal_consistency_m) ../gc/default/default.c:9930
/home/k0kubun/src/github.com/ruby/ruby/.after/ruby(vm_call_cfunc_with_frame_+0x10d) [0x5d4e2335752d] ../vm_insnhelper.c:3821
/home/k0kubun/src/github.com/ruby/ruby/.after/ruby(vm_sendish+0x10a) [0x5d4e2334cd7a] ../vm_insnhelper.c:6056
/home/k0kubun/src/github.com/ruby/ruby/.after/ruby(vm_exec_core+0x84) [0x5d4e2336c7f4] ../insns.def:909
/home/k0kubun/src/github.com/ruby/ruby/.after/ruby(vm_exec_loop+0xa) [0x5d4e2335cf02] ../vm.c:2825
/home/k0kubun/src/github.com/ruby/ruby/.after/ruby(rb_vm_exec) ../vm.c:2801
/home/k0kubun/src/github.com/ruby/ruby/.after/ruby(rb_ec_exec_node+0xb5) [0x5d4e2316d935] ../eval.c:284
/home/k0kubun/src/github.com/ruby/ruby/.after/ruby(ruby_run_node+0x69) [0x5d4e23170729] ../eval.c:322
/home/k0kubun/src/github.com/ruby/ruby/.after/ruby(rb_main+0x21) [0x5d4e2316a9c6] ../main.c:42
/home/k0kubun/src/github.com/ruby/ruby/.after/ruby(main) ../main.c:62
/lib/x86_64-linux-gnu/libc.so.6(__libc_start_call_main+0x7a) [0x7d6a7142a1ca] ../sysdeps/nptl/libc_start_call_main.h:58
/lib/x86_64-linux-gnu/libc.so.6(call_init+0x0) [0x7d6a7142a28b] ../csu/libc-start.c:360
/lib/x86_64-linux-gnu/libc.so.6(__libc_start_main_impl) ../csu/libc-start.c:347
/lib/x86_64-linux-gnu/libc.so.6(__libc_start_main) (null):0
[0x5d4e2316aa15]

-- Other runtime information -----------------------------------------------

* Loaded script: -e

* Ruby Box: disabled
* Loaded features:

    0 enumerator.so
    1 monitor.so
    2 thread.rb
    3 fiber.so
    4 rational.so
    5 complex.so
    6 pathname.so
    7 ruby2_keywords.rb
    8 set.rb
    9 /opt/rubies/after/lib/ruby/4.1.0+4/x86_64-linux/enc/encdb.so
   10 /opt/rubies/after/lib/ruby/4.1.0+4/x86_64-linux/enc/trans/transdb.so
   11 /opt/rubies/after/lib/ruby/4.1.0+4/x86_64-linux/rbconfig.rb
   12 /opt/rubies/after/lib/ruby/4.1.0+4/rubygems/defaults.rb
   13 /opt/rubies/after/lib/ruby/4.1.0+4/rubygems/deprecate.rb
   14 /opt/rubies/after/lib/ruby/4.1.0+4/rubygems/errors.rb
   15 /opt/rubies/after/lib/ruby/4.1.0+4/rubygems/target_rbconfig.rb
   16 /opt/rubies/after/lib/ruby/4.1.0+4/rubygems/win_platform.rb
   17 /opt/rubies/after/lib/ruby/4.1.0+4/rubygems/util/atomic_file_writer.rb
   18 /opt/rubies/after/lib/ruby/4.1.0+4/rubygems/unknown_command_spell_checker.rb
   19 /opt/rubies/after/lib/ruby/4.1.0+4/rubygems/exceptions.rb
   20 /opt/rubies/after/lib/ruby/4.1.0+4/rubygems/basic_specification.rb
   21 /opt/rubies/after/lib/ruby/4.1.0+4/rubygems/stub_specification.rb
   22 /opt/rubies/after/lib/ruby/4.1.0+4/rubygems/platform.rb
   23 /opt/rubies/after/lib/ruby/4.1.0+4/rubygems/specification_record.rb
   24 /opt/rubies/after/lib/ruby/4.1.0+4/rubygems/version.rb
   25 /opt/rubies/after/lib/ruby/4.1.0+4/rubygems/requirement.rb
   26 /opt/rubies/after/lib/ruby/4.1.0+4/rubygems/specification.rb
   27 /opt/rubies/after/lib/ruby/4.1.0+4/rubygems/util.rb
   28 /opt/rubies/after/lib/ruby/4.1.0+4/rubygems/dependency.rb
   29 /opt/rubies/after/lib/ruby/4.1.0+4/rubygems/core_ext/kernel_gem.rb
   30 /opt/rubies/after/lib/ruby/4.1.0+4/monitor.rb
   31 /opt/rubies/after/lib/ruby/4.1.0+4/rubygems.rb
   32 /opt/rubies/after/lib/ruby/4.1.0+4/bundled_gems.rb
   33 /opt/rubies/after/lib/ruby/4.1.0+4/rubygems/path_support.rb
   34 /opt/rubies/after/lib/ruby/4.1.0+4/error_highlight/version.rb
   35 /opt/rubies/after/lib/ruby/4.1.0+4/error_highlight/base.rb
   36 /opt/rubies/after/lib/ruby/4.1.0+4/error_highlight/formatter.rb
   37 /opt/rubies/after/lib/ruby/4.1.0+4/error_highlight/core_ext.rb
   38 /opt/rubies/after/lib/ruby/4.1.0+4/error_highlight.rb
   39 /opt/rubies/after/lib/ruby/4.1.0+4/did_you_mean/version.rb
   40 /opt/rubies/after/lib/ruby/4.1.0+4/did_you_mean/core_ext/name_error.rb
   41 /opt/rubies/after/lib/ruby/4.1.0+4/did_you_mean/levenshtein.rb
   42 /opt/rubies/after/lib/ruby/4.1.0+4/did_you_mean/jaro_winkler.rb
   43 /opt/rubies/after/lib/ruby/4.1.0+4/did_you_mean/spell_checker.rb
   44 /opt/rubies/after/lib/ruby/4.1.0+4/did_you_mean/spell_checkers/name_error_checkers/class_name_checker.rb
   45 /opt/rubies/after/lib/ruby/4.1.0+4/did_you_mean/spell_checkers/name_error_checkers/variable_name_checker.rb
   46 /opt/rubies/after/lib/ruby/4.1.0+4/did_you_mean/spell_checkers/name_error_checkers.rb
   47 /opt/rubies/after/lib/ruby/4.1.0+4/did_you_mean/spell_checkers/method_name_checker.rb
   48 /opt/rubies/after/lib/ruby/4.1.0+4/did_you_mean/spell_checkers/key_error_checker.rb
   49 /opt/rubies/after/lib/ruby/4.1.0+4/did_you_mean/spell_checkers/null_checker.rb
   50 /opt/rubies/after/lib/ruby/4.1.0+4/did_you_mean/tree_spell_checker.rb
   51 /opt/rubies/after/lib/ruby/4.1.0+4/did_you_mean/spell_checkers/require_path_checker.rb
   52 /opt/rubies/after/lib/ruby/4.1.0+4/did_you_mean/spell_checkers/pattern_key_name_checker.rb
   53 /opt/rubies/after/lib/ruby/4.1.0+4/did_you_mean/formatter.rb
   54 /opt/rubies/after/lib/ruby/4.1.0+4/did_you_mean.rb
   55 /opt/rubies/after/lib/ruby/4.1.0+4/syntax_suggest/core_ext.rb

* Process memory map:

5d4e1ef4a000-5d4e1ef4b000 r-xp 00000000 00:00 0                          [anon:Ruby:rb_jit_reserve_addr_space]
5d4e1ef4b000-5d4e22f4a000 ---p 00000000 00:00 0                          [anon:Ruby:rb_jit_reserve_addr_space]
5d4e230f4000-5d4e2314e000 r--p 00000000 103:02 44568164                  /home/k0kubun/src/github.com/ruby/ruby/.after/ruby
5d4e2314e000-5d4e23762000 r-xp 0005a000 103:02 44568164                  /home/k0kubun/src/github.com/ruby/ruby/.after/ruby
5d4e23762000-5d4e23951000 r--p 0066e000 103:02 44568164                  /home/k0kubun/src/github.com/ruby/ruby/.after/ruby
5d4e23951000-5d4e2397a000 r--p 0085d000 103:02 44568164                  /home/k0kubun/src/github.com/ruby/ruby/.after/ruby
5d4e2397a000-5d4e2397e000 rw-p 00886000 103:02 44568164                  /home/k0kubun/src/github.com/ruby/ruby/.after/ruby
5d4e2397e000-5d4e23995000 rw-p 00000000 00:00 0
5d4e44a52000-5d4e44f2f000 rw-p 00000000 00:00 0                          [heap]
7d6a51800000-7d6a51a07000 r--s 00000000 103:02 10662796                  /usr/lib/x86_64-linux-gnu/libc.so.6
7d6a51c00000-7d6a55d31000 r--s 00000000 103:02 44568164                  /home/k0kubun/src/github.com/ruby/ruby/.after/ruby
7d6a55e50000-7d6a55fb0000 rw-p 00000000 00:00 0                          [anon:Ruby:GC:default:heap_page_body_allocate]
7d6a55fbf000-7d6a55fc0000 ---p 00000000 00:00 0                          [anon:Ruby:fiber_pool_allocate_memory]
7d6a55fc0000-7d6a56061000 rw-p 00000000 00:00 0                          [anon:Ruby:fiber_pool_allocate_memory]
7d6a56061000-7d6a56062000 ---p 00000000 00:00 0                          [anon:Ruby:fiber_pool_allocate_memory]
7d6a56062000-7d6a56103000 rw-p 00000000 00:00 0                          [anon:Ruby:fiber_pool_allocate_memory]
7d6a56103000-7d6a56104000 ---p 00000000 00:00 0                          [anon:Ruby:fiber_pool_allocate_memory]
7d6a56104000-7d6a561a5000 rw-p 00000000 00:00 0                          [anon:Ruby:fiber_pool_allocate_memory]
7d6a561a5000-7d6a561a6000 ---p 00000000 00:00 0                          [anon:Ruby:fiber_pool_allocate_memory]
7d6a561a6000-7d6a56247000 rw-p 00000000 00:00 0                          [anon:Ruby:fiber_pool_allocate_memory]
7d6a56247000-7d6a56248000 ---p 00000000 00:00 0                          [anon:Ruby:fiber_pool_allocate_memory]
7d6a56248000-7d6a562e9000 rw-p 00000000 00:00 0                          [anon:Ruby:fiber_pool_allocate_memory]
7d6a562e9000-7d6a562ea000 ---p 00000000 00:00 0                          [anon:Ruby:fiber_pool_allocate_memory]
7d6a562ea000-7d6a5638b000 rw-p 00000000 00:00 0                          [anon:Ruby:fiber_pool_allocate_memory]
7d6a5638b000-7d6a5638c000 ---p 00000000 00:00 0                          [anon:Ruby:fiber_pool_allocate_memory]
7d6a5638c000-7d6a5642d000 rw-p 00000000 00:00 0                          [anon:Ruby:fiber_pool_allocate_memory]
7d6a5642d000-7d6a5642e000 ---p 00000000 00:00 0                          [anon:Ruby:fiber_pool_allocate_memory]
7d6a5642e000-7d6a564cf000 rw-p 00000000 00:00 0                          [anon:Ruby:fiber_pool_allocate_memory]
7d6a564cf000-7d6a564d0000 ---p 00000000 00:00 0                          [anon:Ruby:fiber_pool_allocate_memory]
7d6a564d0000-7d6a56571000 rw-p 00000000 00:00 0                          [anon:Ruby:fiber_pool_allocate_memory]
7d6a56571000-7d6a56572000 ---p 00000000 00:00 0                          [anon:Ruby:fiber_pool_allocate_memory]
7d6a56572000-7d6a56613000 rw-p 00000000 00:00 0                          [anon:Ruby:fiber_pool_allocate_memory]
7d6a56613000-7d6a56614000 ---p 00000000 00:00 0                          [anon:Ruby:fiber_pool_allocate_memory]
7d6a56614000-7d6a566b5000 rw-p 00000000 00:00 0                          [anon:Ruby:fiber_pool_allocate_memory]
7d6a566b5000-7d6a566b6000 ---p 00000000 00:00 0                          [anon:Ruby:fiber_pool_allocate_memory]
7d6a566b6000-7d6a56757000 rw-p 00000000 00:00 0                          [anon:Ruby:fiber_pool_allocate_memory]
7d6a56757000-7d6a56758000 ---p 00000000 00:00 0                          [anon:Ruby:fiber_pool_allocate_memory]
7d6a56758000-7d6a567f9000 rw-p 00000000 00:00 0                          [anon:Ruby:fiber_pool_allocate_memory]
7d6a567f9000-7d6a567fa000 ---p 00000000 00:00 0                          [anon:Ruby:fiber_pool_allocate_memory]
7d6a567fa000-7d6a5689b000 rw-p 00000000 00:00 0                          [anon:Ruby:fiber_pool_allocate_memory]
7d6a5689b000-7d6a5689c000 ---p 00000000 00:00 0                          [anon:Ruby:fiber_pool_allocate_memory]
7d6a5689c000-7d6a5693d000 rw-p 00000000 00:00 0                          [anon:Ruby:fiber_pool_allocate_memory]
7d6a5693d000-7d6a5693e000 ---p 00000000 00:00 0                          [anon:Ruby:fiber_pool_allocate_memory]
7d6a5693e000-7d6a569df000 rw-p 00000000 00:00 0                          [anon:Ruby:fiber_pool_allocate_memory]
7d6a569df000-7d6a569e0000 ---p 00000000 00:00 0                          [anon:Ruby:fiber_pool_allocate_memory]
7d6a569e0000-7d6a56a81000 rw-p 00000000 00:00 0                          [anon:Ruby:fiber_pool_allocate_memory]
7d6a56a81000-7d6a56a82000 ---p 00000000 00:00 0                          [anon:Ruby:fiber_pool_allocate_memory]
7d6a56a82000-7d6a56b23000 rw-p 00000000 00:00 0                          [anon:Ruby:fiber_pool_allocate_memory]
7d6a56b23000-7d6a56b24000 ---p 00000000 00:00 0                          [anon:Ruby:fiber_pool_allocate_memory]
7d6a56b24000-7d6a56bc5000 rw-p 00000000 00:00 0                          [anon:Ruby:fiber_pool_allocate_memory]
7d6a56bc5000-7d6a56bc6000 ---p 00000000 00:00 0                          [anon:Ruby:fiber_pool_allocate_memory]
7d6a56bc6000-7d6a56c67000 rw-p 00000000 00:00 0                          [anon:Ruby:fiber_pool_allocate_memory]
7d6a56c67000-7d6a56c68000 ---p 00000000 00:00 0                          [anon:Ruby:fiber_pool_allocate_memory]
7d6a56c68000-7d6a56d09000 rw-p 00000000 00:00 0                          [anon:Ruby:fiber_pool_allocate_memory]
7d6a56d09000-7d6a56d0a000 ---p 00000000 00:00 0                          [anon:Ruby:fiber_pool_allocate_memory]
7d6a56d0a000-7d6a56dab000 rw-p 00000000 00:00 0                          [anon:Ruby:fiber_pool_allocate_memory]
7d6a56dab000-7d6a56dac000 ---p 00000000 00:00 0                          [anon:Ruby:fiber_pool_allocate_memory]
7d6a56dac000-7d6a56e4d000 rw-p 00000000 00:00 0                          [anon:Ruby:fiber_pool_allocate_memory]
7d6a56e4d000-7d6a56e4e000 ---p 00000000 00:00 0                          [anon:Ruby:fiber_pool_allocate_memory]
7d6a56e4e000-7d6a56eef000 rw-p 00000000 00:00 0                          [anon:Ruby:fiber_pool_allocate_memory]
7d6a56eef000-7d6a56ef0000 ---p 00000000 00:00 0                          [anon:Ruby:fiber_pool_allocate_memory]
7d6a56ef0000-7d6a56f91000 rw-p 00000000 00:00 0                          [anon:Ruby:fiber_pool_allocate_memory]
7d6a56f91000-7d6a56f92000 ---p 00000000 00:00 0                          [anon:Ruby:fiber_pool_allocate_memory]
7d6a56f92000-7d6a57033000 rw-p 00000000 00:00 0                          [anon:Ruby:fiber_pool_allocate_memory]
7d6a57033000-7d6a57034000 ---p 00000000 00:00 0                          [anon:Ruby:fiber_pool_allocate_memory]
7d6a57034000-7d6a570d5000 rw-p 00000000 00:00 0                          [anon:Ruby:fiber_pool_allocate_memory]
7d6a570d5000-7d6a570d6000 ---p 00000000 00:00 0                          [anon:Ruby:fiber_pool_allocate_memory]
7d6a570d6000-7d6a57177000 rw-p 00000000 00:00 0                          [anon:Ruby:fiber_pool_allocate_memory]
7d6a57177000-7d6a57178000 ---p 00000000 00:00 0                          [anon:Ruby:fiber_pool_allocate_memory]
7d6a57178000-7d6a57219000 rw-p 00000000 00:00 0                          [anon:Ruby:fiber_pool_allocate_memory]
7d6a57219000-7d6a5721a000 ---p 00000000 00:00 0                          [anon:Ruby:fiber_pool_allocate_memory]
7d6a5721a000-7d6a572bb000 rw-p 00000000 00:00 0                          [anon:Ruby:fiber_pool_allocate_memory]
7d6a572bb000-7d6a572bc000 ---p 00000000 00:00 0                          [anon:Ruby:fiber_pool_allocate_memory]
7d6a572bc000-7d6a5735d000 rw-p 00000000 00:00 0                          [anon:Ruby:fiber_pool_allocate_memory]
7d6a5735d000-7d6a5735e000 ---p 00000000 00:00 0                          [anon:Ruby:fiber_pool_allocate_memory]
7d6a5735e000-7d6a573ff000 rw-p 00000000 00:00 0                          [anon:Ruby:fiber_pool_allocate_memory]
7d6a573ff000-7d6a57400000 ---p 00000000 00:00 0
7d6a57400000-7d6a57c00000 rw-p 00000000 00:00 0
7d6a57c00000-7d6a6fc00000 rw-p 00000000 00:00 0                          [anon:Ruby:Init_default_shapes:shape_cache]
7d6a6fc00000-7d6a70c00000 rw-p 00000000 00:00 0                          [anon:Ruby:Init_default_shapes:shape_list]
7d6a70c10000-7d6a70c20000 rw-p 00000000 00:00 0                          [anon:Ruby:GC:default:heap_page_body_allocate]
7d6a70c30000-7d6a70ca0000 rw-p 00000000 00:00 0                          [anon:Ruby:GC:default:heap_page_body_allocate]
7d6a70cb0000-7d6a70cf0000 rw-p 00000000 00:00 0                          [anon:Ruby:GC:default:heap_page_body_allocate]
7d6a70cff000-7d6a70e00000 rw-p 00000000 00:00 0
7d6a70e00000-7d6a71375000 r--p 00000000 103:02 10617172                  /usr/lib/locale/locale-archive
7d6a71390000-7d6a71400000 rw-p 00000000 00:00 0                          [anon:Ruby:GC:default:heap_page_body_allocate]
7d6a71400000-7d6a71428000 r--p 00000000 103:02 10662796                  /usr/lib/x86_64-linux-gnu/libc.so.6
7d6a71428000-7d6a715b0000 r-xp 00028000 103:02 10662796                  /usr/lib/x86_64-linux-gnu/libc.so.6
7d6a715b0000-7d6a715ff000 r--p 001b0000 103:02 10662796                  /usr/lib/x86_64-linux-gnu/libc.so.6
7d6a715ff000-7d6a71603000 r--p 001fe000 103:02 10662796                  /usr/lib/x86_64-linux-gnu/libc.so.6
7d6a71603000-7d6a71605000 rw-p 00202000 103:02 10662796                  /usr/lib/x86_64-linux-gnu/libc.so.6
7d6a71605000-7d6a71612000 rw-p 00000000 00:00 0
7d6a71630000-7d6a716c0000 rw-p 00000000 00:00 0                          [anon:Ruby:GC:default:heap_page_body_allocate]
7d6a716cf000-7d6a716f0000 rw-p 00000000 00:00 0
7d6a716f0000-7d6a71700000 rw-p 00000000 00:00 0                          [anon:Ruby:GC:default:heap_page_body_allocate]
7d6a71709000-7d6a7170e000 rw-p 00000000 00:00 0
7d6a7170e000-7d6a71712000 r--p 00000000 103:02 10626505                  /usr/lib/x86_64-linux-gnu/libgcc_s.so.1
7d6a71712000-7d6a71736000 r-xp 00004000 103:02 10626505                  /usr/lib/x86_64-linux-gnu/libgcc_s.so.1
7d6a71736000-7d6a7173a000 r--p 00028000 103:02 10626505                  /usr/lib/x86_64-linux-gnu/libgcc_s.so.1
7d6a7173a000-7d6a7173b000 r--p 0002b000 103:02 10626505                  /usr/lib/x86_64-linux-gnu/libgcc_s.so.1
7d6a7173b000-7d6a7173c000 rw-p 0002c000 103:02 10626505                  /usr/lib/x86_64-linux-gnu/libgcc_s.so.1
7d6a7173c000-7d6a7174c000 r--p 00000000 103:02 10662799                  /usr/lib/x86_64-linux-gnu/libm.so.6
7d6a7174c000-7d6a717cb000 r-xp 00010000 103:02 10662799                  /usr/lib/x86_64-linux-gnu/libm.so.6
7d6a717cb000-7d6a71823000 r--p 0008f000 103:02 10662799                  /usr/lib/x86_64-linux-gnu/libm.so.6
7d6a71823000-7d6a71824000 r--p 000e7000 103:02 10662799                  /usr/lib/x86_64-linux-gnu/libm.so.6
7d6a71824000-7d6a71825000 rw-p 000e8000 103:02 10662799                  /usr/lib/x86_64-linux-gnu/libm.so.6
7d6a71825000-7d6a71827000 r--p 00000000 103:02 10628332                  /usr/lib/x86_64-linux-gnu/libcrypt.so.1.1.0
7d6a71827000-7d6a7183c000 r-xp 00002000 103:02 10628332                  /usr/lib/x86_64-linux-gnu/libcrypt.so.1.1.0
7d6a7183c000-7d6a71855000 r--p 00017000 103:02 10628332                  /usr/lib/x86_64-linux-gnu/libcrypt.so.1.1.0
7d6a71855000-7d6a71856000 r--p 0002f000 103:02 10628332                  /usr/lib/x86_64-linux-gnu/libcrypt.so.1.1.0
7d6a71856000-7d6a71857000 rw-p 00030000 103:02 10628332                  /usr/lib/x86_64-linux-gnu/libcrypt.so.1.1.0
7d6a71857000-7d6a7185f000 rw-p 00000000 00:00 0
7d6a7185f000-7d6a71869000 r--p 00000000 103:02 10628467                  /usr/lib/x86_64-linux-gnu/libgmp.so.10.5.0
7d6a71869000-7d6a718cc000 r-xp 0000a000 103:02 10628467                  /usr/lib/x86_64-linux-gnu/libgmp.so.10.5.0
7d6a718cc000-7d6a718e1000 r--p 0006d000 103:02 10628467                  /usr/lib/x86_64-linux-gnu/libgmp.so.10.5.0
7d6a718e1000-7d6a718e2000 r--p 00081000 103:02 10628467                  /usr/lib/x86_64-linux-gnu/libgmp.so.10.5.0
7d6a718e2000-7d6a718e3000 rw-p 00082000 103:02 10628467                  /usr/lib/x86_64-linux-gnu/libgmp.so.10.5.0
7d6a718e3000-7d6a718e5000 r--p 00000000 103:02 10628964                  /usr/lib/x86_64-linux-gnu/libz.so.1.3
7d6a718e5000-7d6a718f7000 r-xp 00002000 103:02 10628964                  /usr/lib/x86_64-linux-gnu/libz.so.1.3
7d6a718f7000-7d6a718fd000 r--p 00014000 103:02 10628964                  /usr/lib/x86_64-linux-gnu/libz.so.1.3
7d6a718fd000-7d6a718fe000 r--p 0001a000 103:02 10628964                  /usr/lib/x86_64-linux-gnu/libz.so.1.3
7d6a718fe000-7d6a718ff000 rw-p 0001b000 103:02 10628964                  /usr/lib/x86_64-linux-gnu/libz.so.1.3
7d6a71908000-7d6a71909000 r--p 00000000 103:02 14180664                  /opt/rubies/after/lib/ruby/4.1.0+4/x86_64-linux/enc/trans/transdb.so
7d6a71909000-7d6a7190a000 r-xp 00001000 103:02 14180664                  /opt/rubies/after/lib/ruby/4.1.0+4/x86_64-linux/enc/trans/transdb.so
7d6a7190a000-7d6a7190b000 r--p 00002000 103:02 14180664                  /opt/rubies/after/lib/ruby/4.1.0+4/x86_64-linux/enc/trans/transdb.so
7d6a7190b000-7d6a7190c000 r--p 00002000 103:02 14180664                  /opt/rubies/after/lib/ruby/4.1.0+4/x86_64-linux/enc/trans/transdb.so
7d6a7190c000-7d6a7190d000 rw-p 00003000 103:02 14180664                  /opt/rubies/after/lib/ruby/4.1.0+4/x86_64-linux/enc/trans/transdb.so
7d6a7190d000-7d6a7190e000 r--p 00000000 103:02 14180596                  /opt/rubies/after/lib/ruby/4.1.0+4/x86_64-linux/enc/encdb.so
7d6a7190e000-7d6a7190f000 r-xp 00001000 103:02 14180596                  /opt/rubies/after/lib/ruby/4.1.0+4/x86_64-linux/enc/encdb.so
7d6a7190f000-7d6a71910000 r--p 00002000 103:02 14180596                  /opt/rubies/after/lib/ruby/4.1.0+4/x86_64-linux/enc/encdb.so
7d6a71910000-7d6a71911000 r--p 00002000 103:02 14180596                  /opt/rubies/after/lib/ruby/4.1.0+4/x86_64-linux/enc/encdb.so
7d6a71911000-7d6a71912000 rw-p 00003000 103:02 14180596                  /opt/rubies/after/lib/ruby/4.1.0+4/x86_64-linux/enc/encdb.so
7d6a71912000-7d6a71914000 rw-p 00000000 00:00 0
7d6a71914000-7d6a71918000 r--p 00000000 00:00 0                          [vvar]
7d6a71918000-7d6a7191a000 r--p 00000000 00:00 0                          [vvar_vclock]
7d6a7191a000-7d6a7191c000 r-xp 00000000 00:00 0                          [vdso]
7d6a7191c000-7d6a7191d000 r--p 00000000 103:02 10662793                  /usr/lib/x86_64-linux-gnu/ld-linux-x86-64.so.2
7d6a7191d000-7d6a71948000 r-xp 00001000 103:02 10662793                  /usr/lib/x86_64-linux-gnu/ld-linux-x86-64.so.2
7d6a71948000-7d6a71952000 r--p 0002c000 103:02 10662793                  /usr/lib/x86_64-linux-gnu/ld-linux-x86-64.so.2
7d6a71952000-7d6a71954000 r--p 00036000 103:02 10662793                  /usr/lib/x86_64-linux-gnu/ld-linux-x86-64.so.2
7d6a71954000-7d6a71956000 rw-p 00038000 103:02 10662793                  /usr/lib/x86_64-linux-gnu/ld-linux-x86-64.so.2
7ffed9ac4000-7ffed9ae6000 rw-p 00000000 00:00 0                          [stack]
ffffffffff600000-ffffffffff601000 --xp 00000000 00:00 0                  [vsyscall]


zsh: IOT instruction (core dumped)  ./ruby -v --zjit-call-threshold=1 -e

and it wasn't reproducible right before:

$ ./ruby -v --zjit-call-threshold=1 -e 'def a = []; a; 10_000.times { a }; GC.verify_internal_consistency'
ruby 4.1.0dev (2026-07-08T22:20:00Z master f1ce5fc24c) +ZJIT +PRISM [x86_64-linux]

Activity

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

Labels

No labels
No labels

Type

No type

Projects

No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions