[ 0:00] | load /var/obj/divine-nightly/semidbg/test/_expand/svcomp/pthread/read_write_lock.pkg.c/error.c error.c [ 0:00] | expect --result error --location error.c:44 [ 0:00] | expect --trace FAULT: --trace-count 1 [ 0:00] | cc -o testcase.bc -DBUG error.c [ 0:00] | verify --max-memory 4GiB --max-time 600 --threads 2 --report-filename verify.out --leakcheck exit -o nofail:malloc testcase.bc [ 0:00] compiling error.c [ 0:00] loading bitcode … DiOS … LART … RR … constants … done [ 0:03] booting … done [ 0:03] states per second: 440.76 [ 0:14] state count: 4732 [ 0:14] mips: 0.45 [ 0:14] [ 0:15] error found: yes [ 0:15] error trace: | [ 0:15] FAULT: error.c:44: void *reader(void *): assertion 'y == x' failed [ 0:15] [4] FATAL: assertion failure in userspace [ 0:15] [ 0:15] active stack: [ 0:16] - symbol: void __dios::FaultBase::handler<__dios::Context>(_VM_Fault, _VM_Frame*, void (*)()) [ 0:16] location: /dios/sys/fault.hpp:118 [ 0:16] - symbol: __dios_fault [ 0:16] location: /dios/arch/divm/fault.c:12 [ 0:16] - symbol: __assert_fail [ 0:16] location: /dios/libc/_PDCLIB/assert.c:24 [ 0:16] - symbol: reader [ 0:16] location: error.c:44 [ 0:16] - symbol: __pthread_start [ 0:16] location: /dios/libc/pthread/pthread-init.cpp:79 [ 0:16] - symbol: __pthread_entry [ 0:16] location: /dios/libc/pthread/pthread-core.cpp:50 [ 0:16] + divine sim --batch --skip-init --load-report verify.out [ 0:16] [ 0:19] ^ —————. —.— . . —.— . . .————— . . [ 0:19] ——— | | | | | | |\ | | | | [ 0:19] —(o)— | | | | | | | \ | |———— '————| [ 0:19] ——————— | | | \ / | | \| | | [ 0:19] ————————— —————' —'— ' —'— ' ' '————— ' [ 0:19] [ 0:19] Welcome to 'divine sim', an interactive debugger. Type 'help' to get started. [ 0:19] traced states: [ 0:20] ▶ state #14 [new] -- active threads: 0:0 0:1 0:2 0:3 [0:4] -- [ 0:20] T: FAULT: error.c:44: void *reader(void *): assertion 'y == x' failed [ 0:20] # executing void __dios::FaultBase::handler<{Context}>(_VM_Fault, _VM_Frame*, void (*)()) at /dios/sys/fault.hpp:118 [ 0:20] # NOTE: $frame in __dios_fault [ 0:20] > backtrace [ 0:20] void __dios::FaultBase::handler<{Context}>(_VM_Fault, _VM_Frame*, void (*)()) at /dios/sys/fault.hpp:118 [ 0:20] __dios_fault at /dios/arch/divm/fault.c:12 [ 0:20] __assert_fail at /dios/libc/_PDCLIB/assert.c:24 [ 0:20] reader at error.c:44 [ 0:20] __pthread_start at /dios/libc/pthread/pthread-init.cpp:79 [ 0:20] __pthread_entry at /dios/libc/pthread/pthread-core.cpp:50 [ 0:20] # executing void __dios::FaultBase::handler<{Context}>(_VM_Fault, _VM_Frame*, void (*)()) at /dios/sys/fault.hpp:118 [ 0:20] # NOTE: $frame in __dios_fault