| "make update-unicode -j4" exit with 0. |
| "make update-download -j4" exit with 0. |
| "make update-rubyspec -j4" exit with 0. |
| "make update-src -j4" exit with 0. |
| From https://github.com/ruby/ruby |
| b315826..f5801e2 master -> origin/master |
| "make after-update -j4" exit with 0. |
| "make miniruby -j4" exit with 0. |
| "make ruby -j4" exit with 0. |
| "make all -j4" exit with 0. |
| "make install -j4" exit with 0. |
| make yes-btest TESTOPTS='-q -j4' |
| $$$ #<Timeout::Error: execution expired> |
| ### enter analyzing mode for stuck processes |
| $$$ ps jx |
| PPID PID PGID SID TTY TPGID STAT UID TIME COMMAND |
| 1 347 347 347 ? -1 Ss 1001 0:01 SCREEN -d -m dash -c cd build-ruby; BUILD_RUBY_WORKING_DIR=/tmp/ruby sh build-loop.sh trunk --incremental |
| 347 350 350 350 pts/0 350 Ss+ 1001 0:00 dash -c cd build-ruby; BUILD_RUBY_WORKING_DIR=/tmp/ruby sh build-loop.sh trunk --incremental |
| 350 351 350 350 pts/0 350 S+ 1001 0:00 sh build-loop.sh trunk --incremental |
| 351 657860 350 350 pts/0 350 Sl+ 1001 0:01 ruby ./br.rb build_report trunk --incremental |
| 657860 657863 350 350 pts/0 350 Sl+ 1001 0:00 ruby /home/sipeed/build-ruby/build-ruby.rb --target_name=trunk --logfile=/home/sipeed/ruby/logs/brlog.trunk.20240216-165019 --root_dir=/tmp/ruby --timeout=10800 --incremental |
| 657863 659188 350 350 pts/0 350 S+ 1001 0:00 sh -c make yes-btest TESTOPTS='-q -j4' |
| 659188 659189 350 350 pts/0 350 S+ 1001 0:00 make yes-btest TESTOPTS=-q -j4 |
| 659189 659204 350 350 pts/0 350 Sl+ 1001 0:12 /usr/bin/ruby --disable=gems /tmp/ruby/src/trunk/bootstraptest/runner.rb --ruby=./miniruby -I/tmp/ruby/src/trunk/lib -I. -I.ext/common -r./riscv64-linux-fake --disable-gems -q -j4 |
| 659204 659448 350 350 pts/0 350 Rl+ 1001 179:47 /tmp/ruby/build/trunk/miniruby -I/tmp/ruby/src/trunk/lib -I/tmp/ruby/build/trunk -I/tmp/ruby/build/trunk/.ext/common -r/tmp/ruby/build/trunk/riscv64-linux-fake --disable-gems -W0 bootstraptest.test_ractor.rb_506_1261.rb |
| 657863 698694 350 350 pts/0 350 R+ 1001 0:00 ps jx |
| {1=>[347], 347=>[350], 350=>[351], 351=>[657860], 657860=>[657863], 657863=>[659188, 698694], 659188=>[659189], 659189=>[659204], 659204=>[659448]} |
| $ timeout 60 gdb -p 659448 -x /home/sipeed/build-ruby/gdbscript -batch -quiet 2> /dev/null |
| [New LWP 659452] |
| [New LWP 659464] |
| [New LWP 659465] |
| [New LWP 659466] |
| [New LWP 659467] |
| [New LWP 659468] |
| [New LWP 659469] |
| [New LWP 659470] |
| [Thread debugging using libthread_db enabled] |
| Using host libthread_db library "/lib/riscv64-linux-gnu/libthread_db.so.1". |
| 0x0000002ac29c3142 in ractor_queue_skip_p (i=<optimized out>, rq=0x2ac2c74a08, r=0x2ac2c749b0) at /tmp/ruby/src/trunk/ractor.c:360 |
| 360 return basket_type_p(b, basket_type_deleted) || |
| >>> Threads |
| Id Target Id Frame |
| * 1 Thread 0x3fdf880760 (LWP 659448) "miniruby" 0x0000002ac29c3142 in ractor_queue_skip_p (i=<optimized out>, rq=0x2ac2c74a08, r=0x2ac2c749b0) at /tmp/ruby/src/trunk/ractor.c:360 |
| 2 Thread 0x3fc629f160 (LWP 659452) "miniruby" 0x0000003fdf94dc56 in __GI_epoll_pwait (epfd=<optimized out>, events=events@entry=0x2ac2c6c4d8 <timer_th+32>, maxevents=<optimized out>, timeout=<optimized out>, set=set@entry=0x0) at ../sysdeps/unix/sysv/linux/epoll_pwait.c:40 |
| 3 Thread 0x3fa45df160 (LWP 659464) "miniruby" __futex_abstimed_wait_common64 (private=<optimized out>, cancel=true, abstime=0x0, op=<optimized out>, expected=<optimized out>, futex_word=0x2ac2c713a0) at ./nptl/futex-internal.c:57 |
| 4 Thread 0x3fa44de160 (LWP 659465) "miniruby" futex_wait (private=0, expected=2, futex_word=0x2ac2c749d8) at ../sysdeps/nptl/futex-internal.h:146 |
| 5 Thread 0x3fa43dd160 (LWP 659466) "miniruby" __futex_abstimed_wait_common64 (private=<optimized out>, cancel=true, abstime=0x0, op=<optimized out>, expected=<optimized out>, futex_word=0x2ac2c713a0) at ./nptl/futex-internal.c:57 |
| 6 Thread 0x3fa42dc160 (LWP 659467) "miniruby" __futex_abstimed_wait_common64 (private=<optimized out>, cancel=true, abstime=0x0, op=<optimized out>, expected=<optimized out>, futex_word=0x2ac2c713a0) at ./nptl/futex-internal.c:57 |
| 7 Thread 0x3fa41db160 (LWP 659468) "miniruby" futex_wait (private=0, expected=2, futex_word=0x2ac2c749d8) at ../sysdeps/nptl/futex-internal.h:146 |
| 8 Thread 0x3fa40da160 (LWP 659469) "miniruby" __futex_abstimed_wait_common64 (private=<optimized out>, cancel=true, abstime=0x0, op=<optimized out>, expected=<optimized out>, futex_word=0x2ac2c71430) at ./nptl/futex-internal.c:57 |
| 9 Thread 0x3fa3fd9160 (LWP 659470) "miniruby" __futex_abstimed_wait_common64 (private=<optimized out>, cancel=true, abstime=0x0, op=<optimized out>, expected=<optimized out>, futex_word=0x2ac2c713a0) at ./nptl/futex-internal.c:57 |
| >>> Machine level backtrace |
| Thread 9 (Thread 0x3fa3fd9160 (LWP 659470) "miniruby"): |
| #0 __futex_abstimed_wait_common64 (private=<optimized out>, cancel=true, abstime=0x0, op=<optimized out>, expected=<optimized out>, futex_word=0x2ac2c713a0) at ./nptl/futex-internal.c:57 |
| __a7 = 98 |
| __a1 = 393 |
| __a3 = 0 |
| __a5 = 4294967295 |
| __a0 = -512 |
| __a2 = 0 |
| __a4 = 0 |
| _arg0 = 183656453024 |
| _arg2 = <optimized out> |
| _arg4 = 0 |
| _sys_result = <optimized out> |
| _arg1 = <optimized out> |
| _arg3 = 0 |
| _arg5 = 4294967295 |
| sc_cancel_oldtype = 0 |
| sc_ret = <optimized out> |
| #1 __futex_abstimed_wait_common (futex_word=futex_word@entry=0x2ac2c713a0, expected=<optimized out>, clockid=<optimized out>, abstime=abstime@entry=0x0, private=<optimized out>, cancel=cancel@entry=true) at ./nptl/futex-internal.c:87 |
| err = <optimized out> |
| clockbit = <optimized out> |
| op = <optimized out> |
| #2 0x0000003fdf8f0be0 in __GI___futex_abstimed_wait_cancelable64 (futex_word=futex_word@entry=0x2ac2c713a0, expected=expected@entry=0, clockid=clockid@entry=0, abstime=abstime@entry=0x0, private=private@entry=0) at ./nptl/futex-internal.c:139 |
| No locals. |
| #3 0x0000003fdf8f3db8 in __pthread_cond_wait_common (abstime=0x0, clockid=0, mutex=0x2ac2c71340, cond=0x2ac2c71378) at ./nptl/pthread_cond_wait.c:503 |
| spin = 0 |
| buffer = {__routine = 0x3fdf8f3b58 <__condvar_cleanup_waiting>, __arg = 0x3fa3fd8748, __canceltype = -1027140680, __prev = 0x0} |
| cbuffer = {wseq = 26, cond = 0x2ac2c71378, mutex = 0x2ac2c71340, private = 0} |
| err = <optimized out> |
| g = 0 |
| flags = <optimized out> |
| g1_start = <optimized out> |
| maxspin = 0 |
| signals = <optimized out> |
| result = 0 |
| wseq = 26 |
| seq = 13 |
| private = 0 |
| maxspin = <optimized out> |
| err = <optimized out> |
| result = <optimized out> |
| wseq = <optimized out> |
| g = <optimized out> |
| seq = <optimized out> |
| flags = <optimized out> |
| private = <optimized out> |
| signals = <optimized out> |
| done = <optimized out> |
| g1_start = <optimized out> |
| spin = <optimized out> |
| buffer = <optimized out> |
| cbuffer = <optimized out> |
| s = <optimized out> |
| #4 ___pthread_cond_wait (cond=cond@entry=0x2ac2c71378, mutex=mutex@entry=0x2ac2c71340) at ./nptl/pthread_cond_wait.c:618 |
| No locals. |
| #5 0x0000002ac2a381f2 in rb_native_cond_wait (cond=cond@entry=0x2ac2c71378, mutex=mutex@entry=0x2ac2c71340) at /tmp/ruby/src/trunk/thread_pthread.c:222 |
| r = <optimized out> |
| #6 0x0000002ac2a40374 in ractor_sched_deq (cr=0x0, vm=0x2ac2c712a0) at /tmp/ruby/src/trunk/thread_pthread.c:1291 |
| r = <optimized out> |
| r = <optimized out> |
| #7 nt_start (ptr=0x2ac2e62110) at /tmp/ruby/src/trunk/thread_pthread.c:2284 |
| r = <optimized out> |
| nt = 0x2ac2e62110 |
| vm = 0x2ac2c712a0 |
| #8 0x0000003fdf8f4c52 in start_thread (arg=<optimized out>) at ./nptl/pthread_create.c:442 |
| ret = <optimized out> |
| start = <optimized out> |
| pd = <optimized out> |
| out = <optimized out> |
| unwind_buf = {cancel_jmp_buf = {{jmp_buf = {{__pc = 274333649920, __regs = {273334241808, 273334243680, 274871351350, 0, 274871351351, 274335894848, 0, 6, 274335894848, 273334243680, 273334243680, 0}, __sp = 273334241488, __fpregs = {0 <repeats 12 times>}}}, mask_was_saved = 0}}, priv = {pad = {0x0, 0x0, 0x0, 0x0}, data = {prev = 0x0, cleanup = 0x0, canceltype = 0}}} |
| not_first_call = <optimized out> |
| robust = <optimized out> |
| #9 0x0000003fdf94db76 in __thread_start () at ../sysdeps/unix/sysv/linux/riscv/clone.S:85 |
| No locals. |
| $ timeout 60 gdb -p 659204 -x /home/sipeed/build-ruby/gdbscript -batch -quiet 2> /dev/null |
| F#1261 test_ractor.rb:506: |
| RN = 10 |
| CR = Ractor.current |
| |
| rs = (1..RN).map{ |
| Ractor.new do |
| CR.send 'send' + CR.take #=> 'sendyield' |
| 'take' |
| end |
| } |
| received = [] |
| taken = [] |
| yielded = [] |
| until received.size == RN && taken.size == RN && yielded.size == RN |
| r, v = Ractor.select(CR, *rs, yield_value: 'yield') |
| case r |
| when :receive |
| received << v |
| when :yield |
| yielded << v |
| else |
| taken << v |
| rs.delete r |
| end |
| end |
| r = [received == ['sendyield'] * RN, |
| yielded == [nil] * RN, |
| taken == ['take'] * RN, |
| ] |
| |
| STDERR.puts [received, yielded, taken].inspect |
| r |
| #=> "" (expected "[true, true, true]") |
| FAIL 1/0 tests failed |
| make: *** [uncommon.mk:878: yes-btest] Error 1 |
| >>> Threads |
| No threads. |
| >>> Machine level backtrace |
| >>> Dump Ruby level backtrace (if possible) |
| #<Errno::ESRCH: No such process> |
| $ timeout 60 gdb -p 659189 -x /home/sipeed/build-ruby/gdbscript -batch -quiet 2> /dev/null |
| >>> Threads |
| No threads. |
| >>> Machine level backtrace |
| >>> Dump Ruby level backtrace (if possible) |
| #<Errno::ESRCH: No such process> |
| $ timeout 60 gdb -p 659188 -x /home/sipeed/build-ruby/gdbscript -batch -quiet 2> /dev/null |
| >>> Threads |
| No threads. |
| >>> Machine level backtrace |
| >>> Dump Ruby level backtrace (if possible) |
| $ timeout 60 gdb -p 698694 -x /home/sipeed/build-ruby/gdbscript -batch -quiet 2> /dev/null |
| >>> Threads |
| No threads. |
| >>> Machine level backtrace |
| >>> Dump Ruby level backtrace (if possible) |
| #<Errno::ESRCH: No such process> |