-
Notifications
You must be signed in to change notification settings - Fork 186
Open
Description
Doesn't happen always, but running dune runtest
in 6.0.0-beta00
tag sometimes fails like this::
dune runtest --force
unixpipe: ✓
Testing library 'retry'...
..............
Ok. 14 tests ran, 0 tests skipped in 0.01 seconds
Testing library 'lwt_direct'...
.............
Ok. 13 tests ran, 0 tests skipped in 0.00 seconds
preempting: ✓
Testing library 'core'...
.......................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................SSSSSSSSSSSSSSSSSSSSSSS..................................................................................................................................................
Ok. 697 tests ran, 23 tests skipped in 0.09 seconds
basic: ✓
moving-promises: ✓
File "test/multidomain/dune", line 2, characters 15-28:
2 | (names basic domainworkers movingpromises unixpipe preempting)
^^^^^^^^^^^^^
Fatal error: exception File "src/core/lwt.ml", line 1039, characters 23-29: Assertion failed
Testing library 'ppx'...
................
Ok. 16 tests ran, 0 tests skipped in 1.20 seconds
Testing library 'react'...
...........
Ok. 11 tests ran, 0 tests skipped in 4.50 seconds
Testing library 'unix'...
...........................................................................................................................
Ok. 123 tests ran, 0 tests skipped in 6.01 seconds
It doesn't happen with running just that test in a loop.
Running dune runtest --force
a few more times causes domainworkers
to fail in a different way though:
dune runtest --force
unixpipe: ✓
Testing library 'retry'...
..............
Ok. 14 tests ran, 0 tests skipped in 0.01 seconds
Testing library 'lwt_direct'...
.............
Ok. 13 tests ran, 0 tests skipped in 0.00 seconds
preempting: ✓
Testing library 'core'...
.......................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................SSSSSSSSSSSSSSSSSSSSSSS..................................................................................................................................................
Ok. 697 tests ran, 23 tests skipped in 0.09 seconds
basic: ✓
moving-promises: ✓
File "test/multidomain/dune", line 2, characters 15-28:
2 | (names basic domainworkers movingpromises unixpipe preempting)
^^^^^^^^^^^^^
Command got signal SEGV.
Testing library 'ppx'...
................
Ok. 16 tests ran, 0 tests skipped in 1.20 seconds
This is with OCaml 5.3.0 on AMD Ryzen 9 7950X 16-Core Processor on Fedora 42.
GDB stacktrace
Id Target Id Frame
* 1 Thread 0x7f2eab18f100 (LWP 249173) camlLwt.run_callbacks_1040 () at src/core/lwt.ml:1304
2 Thread 0x7f2e99ffe6c0 (LWP 249184) (Exiting) 0x00007f2eab2813cb in __GI_madvise () at ../sysdeps/unix/syscall-template.S:117
3 Thread 0x7f2e9afff6c0 (LWP 249182) (Exiting) 0x00007f2eab2813cb in __GI_madvise () at ../sysdeps/unix/syscall-template.S:117
4 Thread 0x7f2e92ffe6c0 (LWP 249188) __syscall_cancel_arch () at ../sysdeps/unix/sysv/linux/x86_64/syscall_cancel.S:56
5 Thread 0x7f2e93fff6c0 (LWP 249185) futex_wait (futex_word=0x1cb42e30, expected=2, private=0) at ../sysdeps/nptl/futex-internal.h:146
6 Thread 0x7f2e91ffd6c0 (LWP 249190) __syscall_cancel_arch () at ../sysdeps/unix/sysv/linux/x86_64/syscall_cancel.S:56
Thread 6 (Thread 0x7f2e91ffd6c0 (LWP 249190)):
#0 __syscall_cancel_arch () at ../sysdeps/unix/sysv/linux/x86_64/syscall_cancel.S:56
No locals.
#1 0x00007f2eab1fe75c in __internal_syscall_cancel (a1=<optimized out>, a2=<optimized out>, a3=<optimized out>, a4=<optimized out>, a5=a5@entry=0, a6=a6@entry=4294967295, nr=202) at cancellation.c:49
result = <optimized out>
pd = <optimized out>
ch = <optimized out>
#2 0x00007f2eab1fedcc in __futex_abstimed_wait_common64 (private=0, futex_word=0x1cb43004, expected=<optimized out>, op=<optimized out>, abstime=0x0, cancel=true) at futex-internal.c:57
No locals.
#3 __futex_abstimed_wait_common (futex_word=futex_word@entry=0x1cb43004, expected=<optimized out>, clockid=clockid@entry=0, abstime=abstime@entry=0x0, private=private@entry=0, cancel=cancel@entry=true) at futex-internal.c:87
err = <optimized out>
clockbit = <optimized out>
op = <optimized out>
#4 0x00007f2eab1fee2f in __GI___futex_abstimed_wait_cancelable64 (futex_word=futex_word@entry=0x1cb43004, expected=<optimized out>, clockid=clockid@entry=0, abstime=abstime@entry=0x0, private=private@entry=0) at futex-internal.c:139
No locals.
#5 0x00007f2eab20149e in __pthread_cond_wait_common (cond=0x1cb42fe0, mutex=0x1cb42fb8, clockid=0, abstime=0x0) at pthread_cond_wait.c:426
signals = <optimized out>
g1_start = <optimized out>
buffer = {__routine = 0x7f2eab2012c0 <__condvar_cleanup_waiting>, __arg = 0x7f2e91ffcdc0, __canceltype = 0, __prev = 0x0}
cbuffer = {wseq = 3, cond = 0x1cb42fe0, mutex = 0x1cb42fb8, private = 0}
err = <optimized out>
result = 0
wseq = 3
g = <optimized out>
seq = 1
flags = <optimized out>
private = 0
#6 ___pthread_cond_wait (cond=cond@entry=0x1cb42fe0, mutex=mutex@entry=0x1cb42fb8) at pthread_cond_wait.c:458
No locals.
#7 0x00000000004c8499 in caml_plat_wait (cond=cond@entry=0x1cb42fe0, mut=mut@entry=0x1cb42fb8) at runtime/platform.c:127
No locals.
#8 0x00000000004af936 in backup_thread_func (v=0x1cb42fa0) at runtime/domain.c:1068
di = 0x1cb42fa0
msg = <optimized out>
s = 0x1cb42fb0
#9 0x00007f2eab201f54 in start_thread (arg=<optimized out>) at pthread_create.c:448
ret = <optimized out>
pd = <optimized out>
out = <optimized out>
unwind_buf = {cancel_jmp_buf = {{jmp_buf = {139837994686144, -2486909826438284792, 139837994686144, 139838011464368, 0, 139838011464631, -2486909826480227832, -2486887426650424824}, mask_was_saved = 0}}, priv = {pad = {0x0, 0x0, 0x0, 0x0}, data = {prev = 0x0, cleanup = 0x0, canceltype = 0}}}
not_first_call = <optimized out>
#10 0x00007f2eab28532c in __GI___clone3 () at ../sysdeps/unix/sysv/linux/x86_64/clone3.S:78
No locals.
Thread 5 (Thread 0x7f2e93fff6c0 (LWP 249185)):
#0 futex_wait (futex_word=0x1cb42e30, expected=2, private=0) at ../sysdeps/nptl/futex-internal.h:146
__ret = -512
err = <optimized out>
#1 __GI___lll_lock_wait (futex=futex@entry=0x1cb42e30, private=0) at lowlevellock.c:49
No locals.
#2 0x00007f2eab205501 in lll_mutex_lock_optimized (mutex=0x1cb42e30) at pthread_mutex_lock.c:48
__futex = 0x1cb42e30
private = <optimized out>
#3 ___pthread_mutex_lock (mutex=mutex@entry=0x1cb42e30) at pthread_mutex_lock.c:93
type = <optimized out>
__PRETTY_FUNCTION__ = "___pthread_mutex_lock"
id = <optimized out>
#4 0x00000000004af8c4 in caml_plat_lock_blocking (m=0x1cb42e30) at runtime/caml/platform.h:458
No locals.
#5 backup_thread_func (v=0x1cb42d90) at runtime/domain.c:1076
di = 0x1cb42d90
msg = <optimized out>
s = 0x1cb42da0
#6 0x00007f2eab201f54 in start_thread (arg=<optimized out>) at pthread_create.c:448
ret = <optimized out>
pd = <optimized out>
out = <optimized out>
unwind_buf = {cancel_jmp_buf = {{jmp_buf = {139838028248768, -2486905429465515512, 139838028248768, 140735637062656, 0, 140735637062919, -2486905429507458552, -2486887426650424824}, mask_was_saved = 0}}, priv = {pad = {0x0, 0x0, 0x0, 0x0}, data = {prev = 0x0, cleanup = 0x0, canceltype = 0}}}
not_first_call = <optimized out>
#7 0x00007f2eab28532c in __GI___clone3 () at ../sysdeps/unix/sysv/linux/x86_64/clone3.S:78
No locals.
Thread 4 (Thread 0x7f2e92ffe6c0 (LWP 249188)):
#0 __syscall_cancel_arch () at ../sysdeps/unix/sysv/linux/x86_64/syscall_cancel.S:56
No locals.
#1 0x00007f2eab1fe75c in __internal_syscall_cancel (a1=<optimized out>, a2=<optimized out>, a3=<optimized out>, a4=<optimized out>, a5=a5@entry=0, a6=a6@entry=0, nr=232) at cancellation.c:49
result = <optimized out>
pd = <optimized out>
ch = <optimized out>
#2 0x00007f2eab1fe7a4 in __syscall_cancel (a1=<optimized out>, a2=<optimized out>, a3=<optimized out>, a4=<optimized out>, a5=a5@entry=0, a6=a6@entry=0, nr=232) at cancellation.c:75
r = <optimized out>
#3 0x00007f2eab285615 in epoll_wait (epfd=<optimized out>, events=<optimized out>, maxevents=<optimized out>, timeout=<optimized out>) at ../sysdeps/unix/sysv/linux/epoll_wait.c:30
No locals.
#4 0x00007f2eab474c44 in epoll_poll (loop=0x7f2e8c026080, timeout=<optimized out>) at /usr/src/debug/libev-4.33-13.fc42.x86_64/ev_epoll.c:155
i = <optimized out>
eventcnt = <optimized out>
#5 0x00007f2eab477807 in ev_run (loop=0x7f2e8c026080, flags=2) at /usr/src/debug/libev-4.33-13.fc42.x86_64/ev.c:4157
waittime = 0.01999962985428283
sleeptime = 0
prev_mn_now = <optimized out>
to = <optimized out>
to = <optimized out>
__PRETTY_FUNCTION__ = "ev_run"
#6 0x000000000049b418 in ev_loop (loop=0x7f2e8c026080, flags=2) at /usr/include/ev.h:841
No locals.
#7 0x000000000049b6d0 in lwt_libev_loop (val_loop=139838110178112, val_block=3) at lwt_libev_stubs.c:123
loop = 0x7f2e8c026080
#8 <signal handler called>
No symbol table info available.
#9 0x00000000004063a6 in camlLwt_engine.fun_2534 () at src/unix/lwt_engine.ml:187
No locals.
#10 0x00000000004166aa in camlLwt_main.run_loop_696 () at src/unix/lwt_main.ml:45
No locals.
#11 0x000000000041698f in camlLwt_main.run_756 () at src/unix/lwt_main.ml:113
No locals.
#12 0x000000000045ced6 in camlStdlib__Domain.body_741 () at domain.ml:266
No locals.
#13 <signal handler called>
No symbol table info available.
#14 0x00000000004ac8b0 in caml_callback_exn (closure=<optimized out>, closure@entry=139838147682368, arg=<optimized out>, arg@entry=1) at runtime/callback.c:208
domain_state = 0x7f2e8c002b80
#15 0x00000000004acd79 in caml_callback_res (closure=closure@entry=139838147682368, arg=arg@entry=1) at runtime/callback.c:321
No locals.
#16 0x00000000004af006 in domain_thread_func (v=<optimized out>) at runtime/domain.c:1244
unrooted_callback = 139838147682368
res = <optimized out>
mut = <optimized out>
p = <optimized out>
ml_values = 0x1cb9f1f0
signal_stack = 0x7f2e8c000b70
#17 0x00007f2eab201f54 in start_thread (arg=<optimized out>) at pthread_create.c:448
ret = <optimized out>
pd = <optimized out>
out = <optimized out>
unwind_buf = {cancel_jmp_buf = {{jmp_buf = {139838011467456, -2486903229905389048, 139838011467456, 140735637062944, 0, 140735637063207, -2486903229947332088, -2486887426650424824}, mask_was_saved = 0}}, priv = {pad = {0x0, 0x0, 0x0, 0x0}, data = {prev = 0x0, cleanup = 0x0, canceltype = 0}}}
not_first_call = <optimized out>
#18 0x00007f2eab28532c in __GI___clone3 () at ../sysdeps/unix/sysv/linux/x86_64/clone3.S:78
No locals.
Thread 3 (Thread 0x7f2e9afff6c0 (LWP 249182) (Exiting)):
#0 0x00007f2eab2813cb in __GI_madvise () at ../sysdeps/unix/syscall-template.S:117
No locals.
#1 0x00007f2eab20210f in advise_stack_range (mem=0x7f2e99fff000, size=16781312, pd=139838145689280, guardsize=<optimized out>) at /usr/src/debug/glibc-2.41-11.fc42.x86_64/nptl/allocatestack.c:196
sp = 139838145687152
pagesize_m1 = <optimized out>
freesize = <optimized out>
__PRETTY_FUNCTION__ = "advise_stack_range"
#2 start_thread (arg=<optimized out>) at pthread_create.c:558
pd = <optimized out>
out = <optimized out>
unwind_buf = {cancel_jmp_buf = {{jmp_buf = {139838145689280, -2486920822628304376, 139838145689280, 140735637062944, 0, 140735637063207, -2486920822670247416, -2486887426650424824}, mask_was_saved = 0}}, priv = {pad = {0x0, 0x0, 0x0, 0x0}, data = {prev = 0x0, cleanup = 0x0, canceltype = 0}}}
not_first_call = <optimized out>
#3 0x00007f2eab28532c in __GI___clone3 () at ../sysdeps/unix/sysv/linux/x86_64/clone3.S:78
No locals.
Thread 2 (Thread 0x7f2e99ffe6c0 (LWP 249184) (Exiting)):
#0 0x00007f2eab2813cb in __GI_madvise () at ../sysdeps/unix/syscall-template.S:117
No locals.
#1 0x00007f2eab20210f in advise_stack_range (mem=0x7f2e98ffe000, size=16781312, pd=139838128907968, guardsize=<optimized out>) at /usr/src/debug/glibc-2.41-11.fc42.x86_64/nptl/allocatestack.c:196
sp = 139838128905840
pagesize_m1 = <optimized out>
freesize = <optimized out>
__PRETTY_FUNCTION__ = "advise_stack_range"
#2 start_thread (arg=<optimized out>) at pthread_create.c:558
pd = <optimized out>
out = <optimized out>
unwind_buf = {cancel_jmp_buf = {{jmp_buf = {139838128907968, -2486927419161200120, 139838128907968, 139838145686192, 0, 139838145686455, -2486927419203143160, -2486887426650424824}, mask_was_saved = 0}}, priv = {pad = {0x0, 0x0, 0x0, 0x0}, data = {prev = 0x0, cleanup = 0x0, canceltype = 0}}}
not_first_call = <optimized out>
#3 0x00007f2eab28532c in __GI___clone3 () at ../sysdeps/unix/sysv/linux/x86_64/clone3.S:78
No locals.
Thread 1 (Thread 0x7f2eab18f100 (LWP 249173)):
#0 camlLwt.run_callbacks_1040 () at src/core/lwt.ml:1304
No locals.
#1 0x000000000041a393 in camlLwt.run_in_resolution_loop_1147 () at src/core/lwt.ml:1339
No locals.
#2 0x000000000041a5f8 in camlLwt.resolve_1165 () at src/core/lwt.ml:1375
No locals.
#3 0x000000000041b367 in camlLwt.callback_1437 () at src/core/lwt.ml:1701
No locals.
#4 0x0000000000417fa0 in camlLwt_sequence.loop_347 () at src/core/lwt_sequence.ml:132
No locals.
#5 0x000000000044f045 in camlStdlib__Array.iter_340 () at array.ml:113
No locals.
#6 <signal handler called>
No symbol table info available.
#7 0x00000000004ac8b0 in caml_callback_exn (closure=<optimized out>, arg=<optimized out>) at runtime/callback.c:208
domain_state = 0x1cb4b9c0
#8 0x00000000004ace09 in caml_callback (closure=<optimized out>, arg=<optimized out>) at runtime/callback.c:347
No locals.
#9 0x000000000049b779 in handle_io (loop=0x1cba93b0, watcher=0x1cba9bd0, revents=1) at lwt_libev_stubs.c:161
No locals.
#10 0x00007f2eab47423b in ev_invoke_pending (loop=0x1cba93b0) at /usr/src/debug/libev-4.33-13.fc42.x86_64/ev.c:3770
p = <optimized out>
#11 0x000000000049b6e1 in lwt_libev_loop (val_loop=139838147681440, val_block=3) at lwt_libev_stubs.c:127
loop = 0x1cba93b0
#12 <signal handler called>
No symbol table info available.
#13 0x00000000004063a6 in camlLwt_engine.fun_2534 () at src/unix/lwt_engine.ml:187
No locals.
#14 0x00000000004166aa in camlLwt_main.run_loop_696 () at src/unix/lwt_main.ml:45
No locals.
#15 0x000000000041698f in camlLwt_main.run_756 () at src/unix/lwt_main.ml:113
No locals.
#16 0x0000000000404e5e in camlDune__exe__Domainworkers.main_850 () at test/multidomain/domainworkers.ml:45
No locals.
#17 0x0000000000405232 in camlDune__exe__Domainworkers.entry () at test/multidomain/domainworkers.ml:74
No locals.
#18 0x0000000000401af7 in caml_program ()
No symbol table info available.
#19 <signal handler called>
No symbol table info available.
#20 0x00000000004d2954 in caml_startup_common (pooling=<optimized out>, argv=0x7fff91a78978) at runtime/startup_nat.c:127
exe_name = <optimized out>
proc_self_exe = <optimized out>
res = <optimized out>
#21 caml_startup_common (argv=0x7fff91a78978, pooling=<optimized out>) at runtime/startup_nat.c:86
exe_name = <optimized out>
proc_self_exe = <optimized out>
res = <optimized out>
#22 0x00000000004d29cb in caml_startup_exn (argv=<optimized out>) at runtime/startup_nat.c:134
No locals.
#23 caml_startup (argv=<optimized out>) at runtime/startup_nat.c:139
res = <optimized out>
#24 caml_main (argv=<optimized out>) at runtime/startup_nat.c:146
No locals.
#25 0x000000000040166c in main (argc=<optimized out>, argv=<optimized out>) at runtime/main.c:37
No locals.
quit
Metadata
Metadata
Assignees
Labels
No labels