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]

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