Open ncopa opened 6 years ago
Hi,
Some of the tests fails on Alpine linux (which uses musl libc) s390x:
=================================== fstrm 0.4.0: ./test-suite.log =================================== # TOTAL: 9 # PASS: 6 # SKIP: 0 # XFAIL: 0 # FAIL: 3 # XPASS: 0 # ERROR: 0 .. contents:: :depth: 2 FAIL: t/run_test_fstrm_io_file.sh ================================= testing fstrm_iothr with file= ./test.fstrm queue_model= SPSC num_threads= 1 num_messages= 1 creating 1 producer threads joining 1 producer threads destroying fstrm_iothr object completed in 0.00 seconds read_input: got a control frame read_input: control frame is 4 bytes long read_input: read a 4 byte control frame read_input: got a control frame read_input: control frame is 4 bytes long read_input: read a 4 byte control frame read_input: got EOF count_generated= 1 bytes_generated= 52 count_submitted= 1 bytes_submitted= 52 count_received= 1 (1.000) bytes_received= 52 (1.000) testing fstrm_iothr with file= ./test.fstrm queue_model= SPSC num_threads= 1 num_messages= 1000 creating 1 producer threads joining 1 producer threads destroying fstrm_iothr object completed in 0.00 seconds read_input: got a control frame read_input: control frame is 4 bytes long read_input: read a 4 byte control frame read_input: got a control frame read_input: control frame is 4 bytes long read_input: read a 4 byte control frame read_input: got EOF count_generated= 1000 bytes_generated= 130000 count_submitted= 882 bytes_submitted= 114556 count_received= 882 (0.882) bytes_received= 114556 (0.881) testing fstrm_iothr with file= ./test.fstrm queue_model= SPSC num_threads= 1 num_messages= 100000 creating 1 producer threads joining 1 producer threads destroying fstrm_iothr object completed in 0.17 seconds read_input: got a control frame read_input: control frame is 4 bytes long read_input: read a 4 byte control frame read_input: got a control frame read_input: control frame is 4 bytes long read_input: read a 4 byte control frame read_input: got EOF count_generated= 100000 bytes_generated= 13000000 count_submitted= 66172 bytes_submitted= 8604232 count_received= 66172 (0.662) bytes_received= 8604232 (0.662) testing fstrm_iothr with file= ./test.fstrm queue_model= SPSC num_threads= 4 num_messages= 1 creating 4 producer threads joining 4 producer threads destroying fstrm_iothr object completed in 0.08 seconds read_input: got a control frame read_input: control frame is 4 bytes long read_input: read a 4 byte control frame read_input: got a control frame read_input: control frame is 4 bytes long read_input: read a 4 byte control frame read_input: got EOF count_generated= 4 bytes_generated= 208 count_submitted= 4 bytes_submitted= 208 count_received= 4 (1.000) bytes_received= 208 (1.000) testing fstrm_iothr with file= ./test.fstrm queue_model= SPSC num_threads= 4 num_messages= 1000 creating 4 producer threads joining 4 producer threads destroying fstrm_iothr object completed in 0.01 seconds read_input: got a control frame read_input: control frame is 4 bytes long read_input: read a 4 byte control frame read_input: got a control frame read_input: control frame is 4 bytes long read_input: read a 4 byte control frame read_input: got EOF count_generated= 4000 bytes_generated= 520000 count_submitted= 3213 bytes_submitted= 417664 count_received= 3213 (0.803) bytes_received= 417664 (0.803) testing fstrm_iothr with file= ./test.fstrm queue_model= SPSC num_threads= 4 num_messages= 100000 creating 4 producer threads joining 4 producer threads destroying fstrm_iothr object completed in 0.28 seconds read_input: got a control frame read_input: control frame is 4 bytes long read_input: read a 4 byte control frame read_input: got a control frame read_input: control frame is 4 bytes long read_input: read a 4 byte control frame read_input: got EOF count_generated= 400000 bytes_generated= 52000000 count_submitted= 189116 bytes_submitted= 24587004 count_received= 189116 (0.473) bytes_received= 24587004 (0.473) testing fstrm_iothr with file= ./test.fstrm queue_model= SPSC num_threads= 16 num_messages= 1 creating 16 producer threads joining 16 producer threads destroying fstrm_iothr object completed in 0.23 seconds read_input: got a control frame read_input: control frame is 4 bytes long read_input: read a 4 byte control frame read_input: got a control frame read_input: control frame is 4 bytes long read_input: read a 4 byte control frame read_input: got EOF count_generated= 16 bytes_generated= 832 count_submitted= 16 bytes_submitted= 832 count_received= 16 (1.000) bytes_received= 832 (1.000) testing fstrm_iothr with file= ./test.fstrm queue_model= SPSC num_threads= 16 num_messages= 1000 creating 16 producer threads joining 16 producer threads destroying fstrm_iothr object completed in 0.02 seconds read_input: got a control frame read_input: control frame is 4 bytes long read_input: read a 4 byte control frame read_input: got a control frame read_input: control frame is 4 bytes long read_input: read a 4 byte control frame read_input: got EOF count_generated= 16000 bytes_generated= 2080000 count_submitted= 10809 bytes_submitted= 1404624 count_received= 10809 (0.676) bytes_received= 1404624 (0.675) testing fstrm_iothr with file= ./test.fstrm queue_model= SPSC num_threads= 16 num_messages= 100000 creating 16 producer threads joining 16 producer threads destroying fstrm_iothr object completed in 1.76 seconds read_input: got a control frame read_input: control frame is 4 bytes long read_input: read a 4 byte control frame read_input: got a control frame read_input: control frame is 4 bytes long read_input: read a 4 byte control frame read_input: got EOF count_generated= 1600000 bytes_generated= 208000000 count_submitted= 255704 bytes_submitted= 33250932 count_received= 255704 (0.160) bytes_received= 33250932 (0.160) testing fstrm_iothr with file= ./test.fstrm queue_model= MPSC num_threads= 1 num_messages= 1 creating 1 producer threads joining 1 producer threads destroying fstrm_iothr object completed in 0.29 seconds read_input: got a control frame read_input: control frame is 4 bytes long read_input: read a 4 byte control frame read_input: got a control frame read_input: control frame is 4 bytes long read_input: read a 4 byte control frame read_input: got EOF count_generated= 1 bytes_generated= 52 count_submitted= 1 bytes_submitted= 52 count_received= 1 (1.000) bytes_received= 52 (1.000) testing fstrm_iothr with file= ./test.fstrm queue_model= MPSC num_threads= 1 num_messages= 1000 creating 1 producer threads joining 1 producer threads destroying fstrm_iothr object completed in 0.00 seconds read_input: got a control frame read_input: control frame is 4 bytes long read_input: read a 4 byte control frame read_input: got a control frame read_input: control frame is 4 bytes long read_input: read a 4 byte control frame read_input: got EOF count_generated= 1000 bytes_generated= 130000 count_submitted= 511 bytes_submitted= 66352 count_received= 511 (0.511) bytes_received= 66352 (0.510) testing fstrm_iothr with file= ./test.fstrm queue_model= MPSC num_threads= 1 num_messages= 100000 creating 1 producer threads joining 1 producer threads destroying fstrm_iothr object completed in 0.17 seconds read_input: got a control frame read_input: control frame is 4 bytes long read_input: read a 4 byte control frame read_input: got a control frame read_input: control frame is 4 bytes long read_input: read a 4 byte control frame read_input: got EOF count_generated= 100000 bytes_generated= 13000000 count_submitted= 69344 bytes_submitted= 9015084 count_received= 69344 (0.693) bytes_received= 9015084 (0.693) testing fstrm_iothr with file= ./test.fstrm queue_model= MPSC num_threads= 4 num_messages= 1 creating 4 producer threads joining 4 producer threads destroying fstrm_iothr object completed in 0.08 seconds read_input: got a control frame read_input: control frame is 4 bytes long read_input: read a 4 byte control frame read_input: got a control frame read_input: control frame is 4 bytes long read_input: read a 4 byte control frame read_input: got EOF count_generated= 4 bytes_generated= 208 count_submitted= 4 bytes_submitted= 208 count_received= 4 (1.000) bytes_received= 208 (1.000) testing fstrm_iothr with file= ./test.fstrm queue_model= MPSC num_threads= 4 num_messages= 1000 creating 4 producer threads joining 4 producer threads destroying fstrm_iothr object completed in 0.00 seconds read_input: got a control frame read_input: control frame is 4 bytes long read_input: read a 4 byte control frame read_input: got a control frame read_input: control frame is 4 bytes long read_input: read a 4 byte control frame read_input: got EOF count_generated= 4000 bytes_generated= 520000 count_submitted= 2169 bytes_submitted= 281528 count_received= 2169 (0.542) bytes_received= 281528 (0.541) testing fstrm_iothr with file= ./test.fstrm queue_model= MPSC num_threads= 4 num_messages= 100000 Illegal instruction FAIL t/run_test_fstrm_io_file.sh (exit status: 132) FAIL: t/run_test_fstrm_io_unix.sh ================================= setting up 300 second timeout testing fstrm_iothr with socket param ./test.sock queue_model= SPSC num_threads= 1 num_messages= 1 opening unix server socket on ./test.sock creating consumer thread creating 1 producer threads thr_consumer(): accepted a connection joining 1 producer threads decode_control_frame: got a FSTRM_CONTROL_READY write_control_frame: wrote a FSTRM_CONTROL_ACCEPT decode_control_frame: got a FSTRM_CONTROL_START destroying fstrm_iothr object decode_control_frame: got a FSTRM_CONTROL_STOP read_input: read a 4 byte control frame (FSTRM_CONTROL_STOP) read_input: shutting down write_control_frame: wrote a FSTRM_CONTROL_FINISH thr_consumer(): exiting joining consumer thread completed in 0.00 seconds count_generated= 1 bytes_generated= 52 count_submitted= 1 bytes_submitted= 52 count_received= 1 (1.000) bytes_received= 52 (1.000) setting up 300 second timeout testing fstrm_iothr with socket param ./test.sock queue_model= SPSC num_threads= 1 num_messages= 1000 opening unix server socket on ./test.sock creating consumer thread creating 1 producer threads thr_consumer(): accepted a connection joining 1 producer threads decode_control_frame: got a FSTRM_CONTROL_READY write_control_frame: wrote a FSTRM_CONTROL_ACCEPT decode_control_frame: got a FSTRM_CONTROL_START destroying fstrm_iothr object decode_control_frame: got a FSTRM_CONTROL_STOP read_input: read a 4 byte control frame (FSTRM_CONTROL_STOP) read_input: shutting down write_control_frame: wrote a FSTRM_CONTROL_FINISH thr_consumer(): exiting joining consumer thread completed in 0.00 seconds count_generated= 1000 bytes_generated= 130000 count_submitted= 934 bytes_submitted= 121316 count_received= 934 (0.934) bytes_received= 121316 (0.933) setting up 300 second timeout testing fstrm_iothr with socket param ./test.sock queue_model= SPSC num_threads= 1 num_messages= 100000 opening unix server socket on ./test.sock creating consumer thread creating 1 producer threads thr_consumer(): accepted a connection joining 1 producer threads decode_control_frame: got a FSTRM_CONTROL_READY write_control_frame: wrote a FSTRM_CONTROL_ACCEPT decode_control_frame: got a FSTRM_CONTROL_START destroying fstrm_iothr object decode_control_frame: got a FSTRM_CONTROL_STOP read_input: read a 4 byte control frame (FSTRM_CONTROL_STOP) read_input: shutting down write_control_frame: wrote a FSTRM_CONTROL_FINISH thr_consumer(): exiting joining consumer thread completed in 0.16 seconds count_generated= 100000 bytes_generated= 13000000 count_submitted= 80364 bytes_submitted= 10445968 count_received= 80364 (0.804) bytes_received= 10445968 (0.804) setting up 300 second timeout testing fstrm_iothr with socket param ./test.sock queue_model= SPSC num_threads= 4 num_messages= 1 opening unix server socket on ./test.sock creating consumer thread creating 4 producer threads thr_consumer(): accepted a connection decode_control_frame: got a FSTRM_CONTROL_READY write_control_frame: wrote a FSTRM_CONTROL_ACCEPT decode_control_frame: got a FSTRM_CONTROL_START joining 4 producer threads destroying fstrm_iothr object decode_control_frame: got a FSTRM_CONTROL_STOP read_input: read a 4 byte control frame (FSTRM_CONTROL_STOP) read_input: shutting down write_control_frame: wrote a FSTRM_CONTROL_FINISH thr_consumer(): exiting joining consumer thread completed in 0.00 seconds count_generated= 4 bytes_generated= 208 count_submitted= 4 bytes_submitted= 208 count_received= 4 (1.000) bytes_received= 208 (1.000) setting up 300 second timeout testing fstrm_iothr with socket param ./test.sock queue_model= SPSC num_threads= 4 num_messages= 1000 opening unix server socket on ./test.sock creating consumer thread creating 4 producer threads thr_consumer(): accepted a connection decode_control_frame: got a FSTRM_CONTROL_READY write_control_frame: wrote a FSTRM_CONTROL_ACCEPT decode_control_frame: got a FSTRM_CONTROL_START joining 4 producer threads destroying fstrm_iothr object decode_control_frame: got a FSTRM_CONTROL_STOP read_input: read a 4 byte control frame (FSTRM_CONTROL_STOP) read_input: shutting down write_control_frame: wrote a FSTRM_CONTROL_FINISH thr_consumer(): exiting joining consumer thread completed in 0.00 seconds count_generated= 4000 bytes_generated= 520000 count_submitted= 3469 bytes_submitted= 450736 count_received= 3469 (0.867) bytes_received= 450736 (0.867) setting up 300 second timeout testing fstrm_iothr with socket param ./test.sock queue_model= SPSC num_threads= 4 num_messages= 100000 opening unix server socket on ./test.sock creating consumer thread creating 4 producer threads thr_consumer(): accepted a connection decode_control_frame: got a FSTRM_CONTROL_READY write_control_frame: wrote a FSTRM_CONTROL_ACCEPT decode_control_frame: got a FSTRM_CONTROL_START joining 4 producer threads destroying fstrm_iothr object decode_control_frame: got a FSTRM_CONTROL_STOP read_input: read a 4 byte control frame (FSTRM_CONTROL_STOP) read_input: shutting down write_control_frame: wrote a FSTRM_CONTROL_FINISH thr_consumer(): exiting joining consumer thread completed in 0.40 seconds count_generated= 400000 bytes_generated= 52000000 count_submitted= 381623 bytes_submitted= 49611172 count_received= 381623 (0.954) bytes_received= 49611172 (0.954) setting up 300 second timeout testing fstrm_iothr with socket param ./test.sock queue_model= SPSC num_threads= 16 num_messages= 1 opening unix server socket on ./test.sock creating consumer thread creating 16 producer threads thr_consumer(): accepted a connection decode_control_frame: got a FSTRM_CONTROL_READY write_control_frame: wrote a FSTRM_CONTROL_ACCEPT decode_control_frame: got a FSTRM_CONTROL_START joining 16 producer threads destroying fstrm_iothr object decode_control_frame: got a FSTRM_CONTROL_STOP read_input: read a 4 byte control frame (FSTRM_CONTROL_STOP) read_input: shutting down write_control_frame: wrote a FSTRM_CONTROL_FINISH thr_consumer(): exiting joining consumer thread completed in 0.00 seconds count_generated= 16 bytes_generated= 832 count_submitted= 16 bytes_submitted= 832 count_received= 16 (1.000) bytes_received= 832 (1.000) setting up 300 second timeout testing fstrm_iothr with socket param ./test.sock queue_model= SPSC num_threads= 16 num_messages= 1000 opening unix server socket on ./test.sock creating consumer thread creating 16 producer threads thr_consumer(): accepted a connection decode_control_frame: got a FSTRM_CONTROL_READY write_control_frame: wrote a FSTRM_CONTROL_ACCEPT decode_control_frame: got a FSTRM_CONTROL_START joining 16 producer threads destroying fstrm_iothr object decode_control_frame: got a FSTRM_CONTROL_STOP read_input: read a 4 byte control frame (FSTRM_CONTROL_STOP) read_input: shutting down write_control_frame: wrote a FSTRM_CONTROL_FINISH thr_consumer(): exiting joining consumer thread completed in 0.02 seconds count_generated= 16000 bytes_generated= 2080000 count_submitted= 14333 bytes_submitted= 1862068 count_received= 14333 (0.896) bytes_received= 1862068 (0.895) setting up 300 second timeout Segmentation fault FAIL t/run_test_fstrm_io_unix.sh (exit status: 139) FAIL: t/run_test_fstrm_io_tcp.sh ================================ setting up 300 second timeout testing fstrm_iothr with socket param 127.0.0.1 queue_model= SPSC num_threads= 1 num_messages= 1 opening tcp server socket on 127.0.0.1 creating consumer thread creating 1 producer threads joining 1 producer threads thr_consumer(): accepted a connection decode_control_frame: got a FSTRM_CONTROL_READY write_control_frame: wrote a FSTRM_CONTROL_ACCEPT decode_control_frame: got a FSTRM_CONTROL_START destroying fstrm_iothr object decode_control_frame: got a FSTRM_CONTROL_STOP read_input: read a 4 byte control frame (FSTRM_CONTROL_STOP) read_input: shutting down write_control_frame: wrote a FSTRM_CONTROL_FINISH thr_consumer(): exiting joining consumer thread completed in 0.05 seconds count_generated= 1 bytes_generated= 52 count_submitted= 1 bytes_submitted= 52 count_received= 1 (1.000) bytes_received= 52 (1.000) setting up 300 second timeout testing fstrm_iothr with socket param 127.0.0.1 queue_model= SPSC num_threads= 1 num_messages= 1000 opening tcp server socket on 127.0.0.1 creating consumer thread creating 1 producer threads joining 1 producer threads thr_consumer(): accepted a connection decode_control_frame: got a FSTRM_CONTROL_READY write_control_frame: wrote a FSTRM_CONTROL_ACCEPT decode_control_frame: got a FSTRM_CONTROL_START destroying fstrm_iothr object decode_control_frame: got a FSTRM_CONTROL_STOP read_input: read a 4 byte control frame (FSTRM_CONTROL_STOP) read_input: shutting down write_control_frame: wrote a FSTRM_CONTROL_FINISH thr_consumer(): exiting joining consumer thread completed in 0.04 seconds count_generated= 1000 bytes_generated= 130000 count_submitted= 1000 bytes_submitted= 130000 count_received= 1000 (1.000) bytes_received= 130000 (1.000) setting up 300 second timeout testing fstrm_iothr with socket param 127.0.0.1 queue_model= SPSC num_threads= 1 num_messages= 100000 opening tcp server socket on 127.0.0.1 creating consumer thread creating 1 producer threads joining 1 producer threads thr_consumer(): accepted a connection decode_control_frame: got a FSTRM_CONTROL_READY write_control_frame: wrote a FSTRM_CONTROL_ACCEPT decode_control_frame: got a FSTRM_CONTROL_START destroying fstrm_iothr object decode_control_frame: got a FSTRM_CONTROL_STOP read_input: read a 4 byte control frame (FSTRM_CONTROL_STOP) read_input: shutting down write_control_frame: wrote a FSTRM_CONTROL_FINISH thr_consumer(): exiting joining consumer thread completed in 0.20 seconds count_generated= 100000 bytes_generated= 13000000 count_submitted= 57472 bytes_submitted= 7470892 count_received= 57472 (0.575) bytes_received= 7470892 (0.575) setting up 300 second timeout testing fstrm_iothr with socket param 127.0.0.1 queue_model= SPSC num_threads= 4 num_messages= 1 opening tcp server socket on 127.0.0.1 creating consumer thread creating 4 producer threads thr_consumer(): accepted a connection decode_control_frame: got a FSTRM_CONTROL_READY write_control_frame: wrote a FSTRM_CONTROL_ACCEPT decode_control_frame: got a FSTRM_CONTROL_START joining 4 producer threads destroying fstrm_iothr object decode_control_frame: got a FSTRM_CONTROL_STOP read_input: read a 4 byte control frame (FSTRM_CONTROL_STOP) read_input: shutting down write_control_frame: wrote a FSTRM_CONTROL_FINISH thr_consumer(): exiting joining consumer thread completed in 0.05 seconds count_generated= 4 bytes_generated= 208 count_submitted= 4 bytes_submitted= 208 count_received= 4 (1.000) bytes_received= 208 (1.000) setting up 300 second timeout testing fstrm_iothr with socket param 127.0.0.1 queue_model= SPSC num_threads= 4 num_messages= 1000 opening tcp server socket on 127.0.0.1 creating consumer thread creating 4 producer threads thr_consumer(): accepted a connection decode_control_frame: got a FSTRM_CONTROL_READY write_control_frame: wrote a FSTRM_CONTROL_ACCEPT decode_control_frame: got a FSTRM_CONTROL_START joining 4 producer threads destroying fstrm_iothr object decode_control_frame: got a FSTRM_CONTROL_STOP read_input: read a 4 byte control frame (FSTRM_CONTROL_STOP) read_input: shutting down write_control_frame: wrote a FSTRM_CONTROL_FINISH thr_consumer(): exiting joining consumer thread completed in 0.05 seconds count_generated= 4000 bytes_generated= 520000 count_submitted= 3830 bytes_submitted= 497692 count_received= 3830 (0.958) bytes_received= 497692 (0.957) setting up 300 second timeout testing fstrm_iothr with socket param 127.0.0.1 queue_model= SPSC num_threads= 4 num_messages= 100000 opening tcp server socket on 127.0.0.1 creating consumer thread creating 4 producer threads thr_consumer(): accepted a connection decode_control_frame: got a FSTRM_CONTROL_READY write_control_frame: wrote a FSTRM_CONTROL_ACCEPT decode_control_frame: got a FSTRM_CONTROL_START joining 4 producer threads destroying fstrm_iothr object decode_control_frame: got a FSTRM_CONTROL_STOP read_input: read a 4 byte control frame (FSTRM_CONTROL_STOP) read_input: shutting down write_control_frame: wrote a FSTRM_CONTROL_FINISH thr_consumer(): exiting joining consumer thread completed in 0.39 seconds count_generated= 400000 bytes_generated= 52000000 count_submitted= 356894 bytes_submitted= 46400068 count_received= 356894 (0.892) bytes_received= 46400068 (0.892) setting up 300 second timeout testing fstrm_iothr with socket param 127.0.0.1 queue_model= SPSC num_threads= 16 num_messages= 1 opening tcp server socket on 127.0.0.1 creating consumer thread creating 16 producer threads thr_consumer(): accepted a connection decode_control_frame: got a FSTRM_CONTROL_READY write_control_frame: wrote a FSTRM_CONTROL_ACCEPT decode_control_frame: got a FSTRM_CONTROL_START joining 16 producer threads destroying fstrm_iothr object decode_control_frame: got a FSTRM_CONTROL_STOP read_input: read a 4 byte control frame (FSTRM_CONTROL_STOP) read_input: shutting down write_control_frame: wrote a FSTRM_CONTROL_FINISH thr_consumer(): exiting joining consumer thread completed in 0.05 seconds count_generated= 16 bytes_generated= 832 count_submitted= 16 bytes_submitted= 832 count_received= 16 (1.000) bytes_received= 832 (1.000) setting up 300 second timeout testing fstrm_iothr with socket param 127.0.0.1 queue_model= SPSC num_threads= 16 num_messages= 1000 opening tcp server socket on 127.0.0.1 creating consumer thread creating 16 producer threads thr_consumer(): accepted a connection decode_control_frame: got a FSTRM_CONTROL_READY write_control_frame: wrote a FSTRM_CONTROL_ACCEPT decode_control_frame: got a FSTRM_CONTROL_START joining 16 producer threads destroying fstrm_iothr object decode_control_frame: got a FSTRM_CONTROL_STOP read_input: read a 4 byte control frame (FSTRM_CONTROL_STOP) read_input: shutting down write_control_frame: wrote a FSTRM_CONTROL_FINISH thr_consumer(): exiting joining consumer thread completed in 0.06 seconds count_generated= 16000 bytes_generated= 2080000 count_submitted= 13819 bytes_submitted= 1796080 count_received= 13819 (0.864) bytes_received= 1796080 (0.864) setting up 300 second timeout Illegal instruction FAIL t/run_test_fstrm_io_tcp.sh (exit status: 132)
Thanks for this report.
Are you able to get a stack trace of where the illegal instruction and segmentation fault occur? I was unable to set up an s390x qemu instance to test, unfortunately.
Hi,
Some of the tests fails on Alpine linux (which uses musl libc) s390x: