| "make update-download -j16" exit with 0. |
| "make update-src -j16" exit with 0. |
| "make after-update -j16" exit with 0. |
| "make miniruby -j16" exit with 0. |
| "make ruby -j16" exit with 0. |
| "make all -j16" exit with 0. |
| "make install -j16" exit with 0. |
| "make yes-test-basic TESTS='-j16'" exit with 0. |
| "make yes-test-all TESTOPTS='--stderr-on-failure' TESTS='-j16'" exit with 512. |
| 1) Failure: |
| TestRactor#test_timer_thread_create_snt_for_dedicated_task [/tmp/ruby/src/trunk_asan/test/ruby/test_ractor.rb:207]: |
| assert_separately failed with error message |
| pid 3975492 exit 1 |
| | ================================================================= |
| | ==3975492==ERROR: AddressSanitizer: stack-use-after-return on address 0x76d0d85c4640 at pc 0x62e9c81b1c69 bp 0x76d0be5fec90 sp 0x76d0be5fec88 |
| | READ of size 4 at 0x76d0d85c4640 thread T1 |
| | #0 0x62e9c81b1c68 in ubf_ractor_wait /tmp/ruby/src/trunk_asan/ractor_sync.c:1003:25 |
| | #1 0x62e9c8350530 in threadptr_set_interrupt_locked /tmp/ruby/src/trunk_asan/thread.c:368:9 |
| | #2 0x62e9c8350530 in threadptr_set_interrupt /tmp/ruby/src/trunk_asan/thread.c:380:9 |
| | #3 0x62e9c8350530 in threadptr_trap_interrupt /tmp/ruby/src/trunk_asan/thread.c:396:5 |
| | #4 0x62e9c8350530 in timer_thread_check_signal /tmp/ruby/src/trunk_asan/thread_pthread.c:2968:9 |
| | #5 0x62e9c8350530 in timer_thread_func /tmp/ruby/src/trunk_asan/thread_pthread.c:3078:9 |
| | #6 0x62e9c7fa4afe in asan_thread_start(void*) asan_interceptors.cpp.o |
| | #7 0x76d0da49caa3 in start_thread nptl/pthread_create.c:447:8 |
| | #8 0x76d0da529c6b in clone3 misc/../sysdeps/unix/sysv/linux/x86_64/clone3.S:78 |
| | |
| | Address 0x76d0d85c4640 is located in stack of thread T0 at offset 64 in frame |
| | #0 0x62e9c81b051f in ractor_wait_receive /tmp/ruby/src/trunk_asan/ractor_sync.c:1094 |
| | |
| | This frame has 3 object(s): |
| | [32, 40) 'rq.i' (line 357) |
| | [64, 96) 'waiter.i' (line 1022) <== Memory access at offset 64 is inside this variable |
| | [128, 152) 'messages' (line 1095) |
| | HINT: this may be a false positive if your program uses some custom stack unwind mechanism, swapcontext or vfork |
| | (longjmp and C++ exceptions *are* supported) |
| | SUMMARY: AddressSanitizer: stack-use-after-return /tmp/ruby/src/trunk_asan/ractor_sync.c:1003:25 in ubf_ractor_wait |
| | Shadow bytes around the buggy address: |
| | 0x76d0d85c4380: f5 f5 f5 f5 f5 f5 f5 f5 f5 f5 f5 f5 f5 f5 f5 f5 |
| | 0x76d0d85c4400: f5 f5 f5 f5 f5 f5 f5 f5 f5 f5 f5 f5 f5 f5 f5 f5 |
| | 0x76d0d85c4480: f5 f5 f5 f5 f5 f5 f5 f5 f5 f5 f5 f5 f5 f5 f5 f5 |
| | 0x76d0d85c4500: f5 f5 f5 f5 f5 f5 f5 f5 f5 f5 f5 f5 f5 f5 f5 f5 |
| | 0x76d0d85c4580: f5 f5 f5 f5 f5 f5 f5 f5 f5 f5 f5 f5 f5 f5 f5 f5 |
| | =>0x76d0d85c4600: f5 f5 f5 f5 f5 f5 f5 f5[f5]f5 f5 f5 f5 f5 f5 f5 |
| | 0x76d0d85c4680: f5 f5 f5 f5 f5 f5 f5 f5 f5 f5 f5 f5 f5 f5 f5 f5 |
| | 0x76d0d85c4700: f5 f5 f5 f5 f5 f5 f5 f5 f5 f5 f5 f5 f5 f5 f5 f5 |
| | 0x76d0d85c4780: f5 f5 f5 f5 f5 f5 f5 f5 f5 f5 f5 f5 f5 f5 f5 f5 |
| | 0x76d0d85c4800: f5 f5 f5 f5 f5 f5 f5 f5 f5 f5 f5 f5 f5 f5 f5 f5 |
| | 0x76d0d85c4880: f5 f5 f5 f5 f5 f5 f5 f5 f5 f5 f5 f5 f5 f5 f5 f5 |
| | Shadow byte legend (one shadow byte represents 8 application bytes): |
| | Addressable: 00 |
| | Partially addressable: 01 02 03 04 05 06 07 |
| | Heap left redzone: fa |
| | Freed heap region: fd |
| | Stack left redzone: f1 |
| | Stack mid redzone: f2 |
| | Stack right redzone: f3 |
| | Stack after return: f5 |
| | Stack use after scope: f8 |
| | Global redzone: f9 |
| | Global init order: f6 |
| | Poisoned by user: f7 |
| | Container overflow: fc |
| | Array cookie: ac |
| | Intra object redzone: bb |
| | ASan internal: fe |
| | Left alloca redzone: ca |
| | Right alloca redzone: cb |
| | Thread T1 created by T0 here: |
| | #0 0x62e9c7f8c7a1 in pthread_create (/tmp/ruby/build/trunk_asan/ruby+0x1ee7a1) (BuildId: 77b63e2d94c2e88bf3cbb105d4472a127ad34bbe) |
| | #1 0x62e9c833e167 in Init_Thread /tmp/ruby/src/trunk_asan/thread.c:5791:5 |
| | #2 0x62e9c808d90f in rb_call_inits /tmp/ruby/src/trunk_asan/inits.c:66:5 |
| | #3 0x62e9c7fe81ab in ruby_setup /tmp/ruby/src/trunk_asan/eval.c:88:9 |
| | #4 0x62e9c7fe8616 in ruby_init /tmp/ruby/src/trunk_asan/eval.c:100:17 |
| | #5 0x62e9c7fe4ba3 in rb_main /tmp/ruby/src/trunk_asan/main.c:41:5 |
| | #6 0x62e9c7fe4ba3 in main /tmp/ruby/src/trunk_asan/main.c:62:12 |
| | #7 0x76d0da42a1c9 in __libc_start_call_main csu/../sysdeps/nptl/libc_start_call_main.h:58:16 |
| | #8 0x76d0da42a28a in __libc_start_main csu/../csu/libc-start.c:360:3 |
| | #9 0x62e9c7f08984 in _start (/tmp/ruby/build/trunk_asan/ruby+0x16a984) (BuildId: 77b63e2d94c2e88bf3cbb105d4472a127ad34bbe) |
| | |
| | ==3975492==ABORTING |
| | [BUG] ASAN error |
| | ruby 4.1.0dev (2026-02-07T12:18:25Z master f33076be41) +PRISM [x86_64-linux] |
| | |
| | -- C level backtrace information ------------------------------------------- |
| | /tmp/ruby/build/trunk_asan/ruby(___interceptor_backtrace) [0x62e9c7f4ed69] |
| | /tmp/ruby/build/trunk_asan/ruby(rb_print_backtrace+0x14) [0x62e9c8462634] /tmp/ruby/src/trunk_asan/vm_dump.c:1105 |
| | /tmp/ruby/build/trunk_asan/ruby(rb_vm_bugreport) /tmp/ruby/src/trunk_asan/vm_dump.c:1450 |
| | /tmp/ruby/build/trunk_asan/ruby(rb_bug_without_die_internal+0x2c5) [0x62e9c881bf05] /tmp/ruby/src/trunk_asan/error.c:1098 |
| | /tmp/ruby/build/trunk_asan/ruby(rb_bug_without_die+0x12c) [0x62e9c881bb9c] /tmp/ruby/src/trunk_asan/error.c:1107 |
| | /tmp/ruby/build/trunk_asan/ruby(0x62e9c7fcb28a) [0x62e9c7fcb28a] |
| | /tmp/ruby/build/trunk_asan/ruby(0x62e9c7fabd0f) [0x62e9c7fabd0f] |
| | /tmp/ruby/build/trunk_asan/ruby(0x62e9c7faed9d) [0x62e9c7faed9d] |
| | /tmp/ruby/build/trunk_asan/ruby(__asan_report_load4) [0x62e9c7fafa3c] |
| | /tmp/ruby/build/trunk_asan/ruby(ractor_lock+0x0) [0x62e9c81b1c69] /tmp/ruby/src/trunk_asan/ractor_sync.c:1003 |
| | /tmp/ruby/build/trunk_asan/ruby(ubf_ractor_wait) /tmp/ruby/src/trunk_asan/ractor_sync.c:1001 |
| | /tmp/ruby/build/trunk_asan/ruby(rb_native_mutex_unlock+0x0) [0x62e9c8350531] /tmp/ruby/src/trunk_asan/thread.c:368 |
| | /tmp/ruby/build/trunk_asan/ruby(threadptr_set_interrupt) /tmp/ruby/src/trunk_asan/thread.c:382 |
| | /tmp/ruby/build/trunk_asan/ruby(threadptr_trap_interrupt) /tmp/ruby/src/trunk_asan/thread.c:396 |
| | /tmp/ruby/build/trunk_asan/ruby(timer_thread_check_signal) /tmp/ruby/src/trunk_asan/thread_pthread.c:2968 |
| | /tmp/ruby/build/trunk_asan/ruby(timer_thread_func) /tmp/ruby/src/trunk_asan/thread_pthread.c:3078 |
| | /tmp/ruby/build/trunk_asan/ruby(0x62e9c7fa4aff) [0x62e9c7fa4aff] |
| | /lib/x86_64-linux-gnu/libc.so.6(start_thread+0x384) [0x76d0da49caa4] ./nptl/pthread_create.c:447 |
| | /lib/x86_64-linux-gnu/libc.so.6(clone3+0x2c) [0x76d0da529c6c] ../sysdeps/unix/sysv/linux/x86_64/clone3.S:78 |
| | /lib/x86_64-linux-gnu/libc.so.6(__GI___clone3) (null):0 |
| | /lib/x86_64-linux-gnu/libc.so.6(__clone3) (null):0 |
| | |
| | -- Other runtime information ----------------------------------------------- |
| | |
| | * Loaded script: - |
| | |
| | * Ruby Box: disabled |
| | * Loaded features: |
| | |
| | 0 enumerator.so |
| | 1 thread.rb |
| | 2 fiber.so |
| | 3 rational.so |
| | 4 complex.so |
| | 5 pathname.so |
| | 6 ruby2_keywords.rb |
| | 7 set.rb |
| | 8 /tmp/ruby/build/trunk_asan/.ext/x86_64-linux/enc/encdb.so |
| | 9 /tmp/ruby/build/trunk_asan/.ext/x86_64-linux/enc/trans/transdb.so |
| | 10 /tmp/ruby/src/trunk_asan/lib/open3/version.rb |
| | 11 /tmp/ruby/src/trunk_asan/lib/open3.rb |
| | 12 /tmp/ruby/src/trunk_asan/lib/timeout.rb |
| | 13 /tmp/ruby/build/trunk_asan/rbconfig.rb |
| | 14 /tmp/ruby/src/trunk_asan/tool/lib/find_executable.rb |
| | 15 /tmp/ruby/build/trunk_asan/.ext/x86_64-linux/rbconfig/sizeof.so |
| | 16 /tmp/ruby/src/trunk_asan/tool/lib/envutil.rb |
| | 17 /tmp/ruby/src/trunk_asan/tool/lib/colorize.rb |
| | 18 /tmp/ruby/src/trunk_asan/tool/lib/leakchecker.rb |
| | 19 /tmp/ruby/src/trunk_asan/lib/prettyprint.rb |
| | 20 /tmp/ruby/src/trunk_asan/lib/pp.rb |
| | 21 /tmp/ruby/src/trunk_asan/tool/lib/test/unit/assertions.rb |
| | 22 /tmp/ruby/build/trunk_asan/.ext/x86_64-linux/-test-/sanitizers.so |
| | 23 /tmp/ruby/build/trunk_asan/.ext/x86_64-linux/io/console.so |
| | 24 /tmp/ruby/src/trunk_asan/tool/lib/core_assertions.rb |
| | 25 /tmp/ruby/src/trunk_asan/tool/lib/test/unit/testcase.rb |
| | 26 /tmp/ruby/src/trunk_asan/tool/lib/test/jobserver.rb |
| | 27 /tmp/ruby/src/trunk_asan/lib/optparse.rb |
| | 28 /tmp/ruby/src/trunk_asan/tool/lib/test/unit.rb |
| | |
| make: *** [uncommon.mk:915: yes-test-all] Error 1 |
| "make yes-test-rubyspec MSPECOPT='--error-output stderr -j' TESTS='-j16'" exit with 0. |