Skip to content

RTCP data race (RX Thread) #3233

@sreimers

Description

@sreimers

Looks like baresip/re#1222 introduces new RX thread data races. @cspiel1 @maximilianfridrich

[ RUN      ] test_call_max (rx thread)
[       OK ]
==================
WARNING: ThreadSanitizer: data race (pid=5476)
  Read of size 4 at 0x7b48000155b8 by thread T276 (mutexes: write M0, write M1):
    #0 handle_rr_block /home/runner/work/baresip/baresip/re/src/rtp/sess.c:136:12 (libre.so.28+0x84581) (BuildId: 43a29f9d5d2b96b1a8b8b93a4a64c4b9cf7aec79)
    #1 handle_incoming_sr /home/runner/work/baresip/baresip/re/src/rtp/sess.c:188:3 (libre.so.28+0x82350) (BuildId: 43a29f9d5d2b96b1a8b8b93a4a64c4b9cf7aec79)
    #2 rtcp_handler /home/runner/work/baresip/baresip/re/src/rtp/sess.c:222:3 (libre.so.28+0x81f52) (BuildId: 43a29f9d5d2b96b1a8b8b93a4a64c4b9cf7aec79)
    #3 rtcp_recv_handler /home/runner/work/baresip/baresip/re/src/rtp/rtp.c:176:3 (libre.so.28+0x812b1) (BuildId: 43a29f9d5d2b96b1a8b8b93a4a64c4b9cf7aec79)
    #4 udp_read /home/runner/work/baresip/baresip/re/src/udp/udp.c:207:2 (libre.so.28+0xba9a4) (BuildId: 43a29f9d5d2b96b1a8b8b93a4a64c4b9cf7aec79)
    #5 udp_read_handler /home/runner/work/baresip/baresip/re/src/udp/udp.c:220:2 (libre.so.28+0xb95b6) (BuildId: 43a29f9d5d2b96b1a8b8b93a4a64c4b9cf7aec79)
    #6 fd_poll /home/runner/work/baresip/baresip/re/src/main/main.c:925:4 (libre.so.28+0x6d678) (BuildId: 43a29f9d5d2b96b1a8b8b93a4a64c4b9cf7aec79)
    #7 re_main /home/runner/work/baresip/baresip/re/src/main/main.c:1064:9 (libre.so.28+0x6c9d6) (BuildId: 43a29f9d5d2b96b1a8b8b93a4a64c4b9cf7aec79)
    #8 rtprecv_thread /home/runner/work/baresip/baresip/src/rtprecv.c:225:8 (selftest+0x1acb17) (BuildId: 423c6eaf015a868fa13b869229bb2c33c5c5a7f2)
    #9 handler /home/runner/work/baresip/baresip/re/src/thread/thread.c:105:9 (libre.so.28+0xa5ef1) (BuildId: 43a29f9d5d2b96b1a8b8b93a4a64c4b9cf7aec79)
    #10 handler /home/runner/work/baresip/baresip/re/src/thread/posix.c:21:12 (libre.so.28+0x10fcab) (BuildId: 43a29f9d5d2b96b1a8b8b93a4a64c4b9cf7aec79)

  Previous write of size 4 at 0x7b48000155b8 by main thread:
    #0 rtcp_set_srate_tx /home/runner/work/baresip/baresip/re/src/rtp/sess.c:324:17 (libre.so.28+0x829d9) (BuildId: 43a29f9d5d2b96b1a8b8b93a4a64c4b9cf7aec79)
    #1 stream_set_srate /home/runner/work/baresip/baresip/src/stream.c:1053:3 (selftest+0x184099) (BuildId: 423c6eaf015a868fa13b869229bb2c33c5c5a7f2)
    #2 audio_encoder_set /home/runner/work/baresip/baresip/src/audio.c:1379:2 (selftest+0x14ff08) (BuildId: 423c6eaf015a868fa13b869229bb2c33c5c5a7f2)
    #3 audio_update /home/runner/work/baresip/baresip/src/audio.c:1194:10 (selftest+0x14f518) (BuildId: 423c6eaf015a868fa13b869229bb2c33c5c5a7f2)
    #4 update_streams /home/runner/work/baresip/baresip/src/call.c:288:10 (selftest+0x15c1eb) (BuildId: 423c6eaf015a868fa13b869229bb2c33c5c5a7f2)
    #5 call_update_media /home/runner/work/baresip/baresip/src/call.c:306:9 (selftest+0x15be91) (BuildId: 423c6eaf015a868fa13b869229bb2c33c5c5a7f2)
    #6 call_modify /home/runner/work/baresip/baresip/src/call.c:1105:8 (selftest+0x160136) (BuildId: 423c6eaf015a868fa13b869229bb2c33c5c5a7f2)
    #7 call_hold /home/runner/work/baresip/baresip/src/call.c:1407:9 (selftest+0x1617f9) (BuildId: 423c6eaf015a868fa13b869229bb2c33c5c5a7f2)
    #8 test_call_hold_resume_base /home/runner/work/baresip/baresip/test/call.c:3136:8 (selftest+0x122e25) (BuildId: 423c6eaf015a868fa13b869229bb2c33c5c5a7f2)
    #9 test_call_hold_resume /home/runner/work/baresip/baresip/test/call.c:3348:8 (selftest+0x1216c7) (BuildId: 423c6eaf015a868fa13b869229bb2c33c5c5a7f2)
    #10 run_tests /home/runner/work/baresip/baresip/test/main.c:167:9 (selftest+0x145d25) (BuildId: 423c6eaf015a868fa13b869229bb2c33c5c5a7f2)
    #11 run_tests_rxmode /home/runner/work/baresip/baresip/test/main.c:200:9 (selftest+0x145aec) (BuildId: 423c6eaf015a868fa13b869229bb2c33c5c5a7f2)
    #12 main /home/runner/work/baresip/baresip/test/main.c:386:9 (selftest+0x1454f3) (BuildId: 423c6eaf015a868fa13b869229bb2c33c5c5a7f2)

  Location is heap block of size 360 at 0x7b48000[154](https://github.com/baresip/baresip/actions/runs/12154138484/job/33893418988?pr=3232#step:11:155)80 allocated by main thread:
    #0 malloc <null> (selftest+0x70efc) (BuildId: 423c6eaf015a868fa13b869229bb2c33c5c5a7f2)
    #1 mem_alloc /home/runner/work/baresip/baresip/re/src/mem/mem.c:166:6 (libre.so.28+0x715eb) (BuildId: 43a29f9d5d2b96b1a8b8b93a4a64c4b9cf7aec79)
    #2 mem_zalloc /home/runner/work/baresip/baresip/re/src/mem/mem.c:198:6 (libre.so.28+0x719e5) (BuildId: 43a29f9d5d2b96b1a8b8b93a4a64c4b9cf7aec79)
    #3 rtcp_sess_alloc /home/runner/work/baresip/baresip/re/src/rtp/sess.c:249:9 (libre.so.28+0x82640) (BuildId: 43a29f9d5d2b96b1a8b8b93a4a64c4b9cf7aec79)
    #4 rtp_listen /home/runner/work/baresip/baresip/re/src/rtp/rtp.c:329:9 (libre.so.28+0x7fc15) (BuildId: 43a29f9d5d2b96b1a8b8b93a4a64c4b9cf7aec79)
    #5 stream_sock_alloc /home/runner/work/baresip/baresip/src/stream.c:376:8 (selftest+0x182534) (BuildId: 423c6eaf015a868fa13b869229bb2c33c5c5a7f2)
    #6 stream_alloc /home/runner/work/baresip/baresip/src/stream.c:586:9 (selftest+0x181938) (BuildId: 423c6eaf015a868fa13b869229bb2c33c5c5a7f2)
    #7 audio_alloc /home/runner/work/baresip/baresip/src/audio.c:737:8 (selftest+0x14dd4b) (BuildId: 423c6eaf015a868fa13b869229bb2c33c5c5a7f2)
    #8 call_streams_alloc /home/runner/work/baresip/baresip/src/call.c:744:8 (selftest+0x15c652) (BuildId: 423c6eaf015a868fa13b869229bb2c33c5c5a7f2)
    #9 sipsess_desc_handler /home/runner/work/baresip/baresip/src/call.c:2395:9 (selftest+0x16745b) (BuildId: 423c6eaf015a868fa13b869229bb2c33c5c5a7f2)
    #10 send_handler /home/runner/work/baresip/baresip/re/src/sipsess/connect.c:36:9 (libre.so.28+0xfa630) (BuildId: 43a29f9d5d2b96b1a8b8b93a4a64c4b9cf7aec79)
    #11 connect_handler /home/runner/work/baresip/baresip/re/src/sip/request.c:180:21 (libre.so.28+0xe28af) (BuildId: 43a29f9d5d2b96b1a8b8b93a4a64c4b9cf7aec79)
    #12 connect_handler /home/runner/work/baresip/baresip/re/src/sip/ctrans.c:188:10 (libre.so.28+0xd6f53) (BuildId: 43a29f9d5d2b96b1a8b8b93a4a64c4b9cf7aec79)
    #13 sip_transp_send /home/runner/work/baresip/baresip/re/src/sip/transp.c:[155](https://github.com/baresip/baresip/actions/runs/12154138484/job/33893418988?pr=3232#step:11:156)2:4 (libre.so.28+0xe8568) (BuildId: 43a29f9d5d2b96b1a8b8b93a4a64c4b9cf7aec79)
    #14 sip_ctrans_request /home/runner/work/baresip/baresip/re/src/sip/ctrans.c:357:8 (libre.so.28+0xd6bcc) (BuildId: 43a29f9d5d2b96b1a8b8b93a4a64c4b9cf7aec79)
    #15 request /home/runner/work/baresip/baresip/re/src/sip/request.c:240:9 (libre.so.28+0xe1f62) (BuildId: 43a29f9d5d2b96b1a8b8b93a4a64c4b9cf7aec79)
    #16 sip_request_send /home/runner/work/baresip/baresip/re/src/sip/request.c:736:9 (libre.so.28+0xe0630) (BuildId: 43a29f9d5d2b96b1a8b8b93a4a64c4b9cf7aec79)
    #17 sip_drequestf /home/runner/work/baresip/baresip/re/src/sip/request.c:950:8 (libre.so.28+0xe10de) (BuildId: 43a29f9d5d2b96b1a8b8b93a4a64c4b9cf7aec79)
    #18 invite /home/runner/work/baresip/baresip/re/src/sipsess/connect.c:272:9 (libre.so.28+0xfa4cb) (BuildId: 43a29f9d5d2b96b1a8b8b93a4a64c4b9cf7aec79)
    #19 sipsess_connect /home/runner/work/baresip/baresip/re/src/sipsess/connect.c:377:8 (libre.so.28+0xfa18e) (BuildId: 43a29f9d5d2b96b1a8b8b93a4a64c4b9cf7aec79)
    #20 send_invite /home/runner/work/baresip/baresip/src/call.c:2435:8 (selftest+0x15fe18) (BuildId: 423c6eaf015a868fa13b869229bb2c33c5c5a7f2)
    #21 call_connect /home/runner/work/baresip/baresip/src/call.c:1062:9 (selftest+0x15f6f5) (BuildId: 423c6eaf015a868fa13b869229bb2c33c5c5a7f2)
    #22 ua_connect_dir /home/runner/work/baresip/baresip/src/ua.c:1386:8 (selftest+0x18c60f) (BuildId: 423c6eaf015a868fa13b869229bb2c33c5c5a7f2)
    #23 ua_connect /home/runner/work/baresip/baresip/src/ua.c:1415:9 (selftest+0x18caa2) (BuildId: 423c6eaf015a868fa13b869229bb2c33c5c5a7f2)
    #24 test_call_hold_resume_base /home/runner/work/baresip/baresip/test/call.c:3108:8 (selftest+0x122643) (BuildId: 423c6eaf015a868fa13b869229bb2c33c5c5a7f2)
    #25 test_call_hold_resume /home/runner/work/baresip/baresip/test/call.c:3348:8 (selftest+0x1216c7) (BuildId: 423c6eaf015a868fa13b869229bb2c33c5c5a7f2)
    #26 run_tests /home/runner/work/baresip/baresip/test/main.c:167:9 (selftest+0x145d25) (BuildId: 423c6eaf015a868fa13b869229bb2c33c5c5a7f2)
    #27 run_tests_rxmode /home/runner/work/baresip/baresip/test/main.c:200:9 (selftest+0x145aec) (BuildId: 423c6eaf015a868fa13b869229bb2c33c5c5a7f2)
    #28 main /home/runner/work/baresip/baresip/test/main.c:386:9 (selftest+0x1454f3) (BuildId: 423c6eaf015a868fa13b869229bb2c33c5c5a7f2)

  Mutex M0 (0x7b3c0003c480) created at:
    #0 pthread_mutex_init <null> (selftest+0x744c0) (BuildId: 423c6eaf015a868fa13b869229bb2c33c5c5a7f2)
    #1 mtx_init /home/runner/work/baresip/baresip/re/src/thread/posix.c:169:2 (libre.so.28+0x110208) (BuildId: 43a29f9d5d2b96b1a8b8b93a4a64c4b9cf7aec79)
    #2 _mutex_alloc /home/runner/work/baresip/baresip/re/src/thread/thread.c:52:8 (libre.so.28+0xa5c21) (BuildId: 43a29f9d5d2b96b1a8b8b93a4a64c4b9cf7aec79)
    #3 mutex_alloc_tp /home/runner/work/baresip/baresip/re/src/thread/thread.c:78:9 (libre.so.28+0xa5ce1) (BuildId: 43a29f9d5d2b96b1a8b8b93a4a64c4b9cf7aec79)
    #4 re_alloc /home/runner/work/baresip/baresip/re/src/main/main.c:161:8 (libre.so.28+0x6b594) (BuildId: 43a29f9d5d2b96b1a8b8b93a4a64c4b9cf7aec79)
    #5 re_thread_init /home/runner/work/baresip/baresip/re/src/main/main.c:1258:8 (libre.so.28+0x6e17b) (BuildId: 43a29f9d5d2b96b1a8b8b93a4a64c4b9cf7aec79)
    #6 rtprecv_thread /home/runner/work/baresip/baresip/src/rtprecv.c:207:2 (selftest+0x1aca29) (BuildId: 423c6eaf015a868fa13b869229bb2c33c5c5a7f2)
    #7 handler /home/runner/work/baresip/baresip/re/src/thread/thread.c:105:9 (libre.so.28+0xa5ef1) (BuildId: 43a29f9d5d2b96b1a8b8b93a4a64c4b9cf7aec79)
    #8 handler /home/runner/work/baresip/baresip/re/src/thread/posix.c:21:12 (libre.so.28+0x10fcab) (BuildId: 43a29f9d5d2b96b1a8b8b93a4a64c4b9cf7aec79)

  Mutex M1 (0x7b3c0002cd00) created at:
    #0 pthread_mutex_init <null> (selftest+0x744c0) (BuildId: 423c6eaf015a868fa13b869229bb2c33c5c5a7f2)
    #1 mtx_init /home/runner/work/baresip/baresip/re/src/thread/posix.c:163:3 (libre.so.28+0x1101d8) (BuildId: 43a29f9d5d2b96b1a8b8b93a4a64c4b9cf7aec79)
    #2 _mutex_alloc /home/runner/work/baresip/baresip/re/src/thread/thread.c:52:8 (libre.so.28+0xa5c21) (BuildId: 43a29f9d5d2b96b1a8b8b93a4a64c4b9cf7aec79)
    #3 mutex_alloc /home/runner/work/baresip/baresip/re/src/thread/thread.c:72:9 (libre.so.28+0xa5b97) (BuildId: 43a29f9d5d2b96b1a8b8b93a4a64c4b9cf7aec79)
    #4 rtcp_sess_alloc /home/runner/work/baresip/baresip/re/src/rtp/sess.c:258:8 (libre.so.28+0x826ba) (BuildId: 43a29f9d5d2b96b1a8b8b93a4a64c4b9cf7aec79)
    #5 rtp_listen /home/runner/work/baresip/baresip/re/src/rtp/rtp.c:329:9 (libre.so.28+0x7fc15) (BuildId: 43a29f9d5d2b96b1a8b8b93a4a64c4b9cf7aec79)
    #6 stream_sock_alloc /home/runner/work/baresip/baresip/src/stream.c:376:8 (selftest+0x182534) (BuildId: 423c6eaf015a868fa13b869229bb2c33c5c5a7f2)
    #7 stream_alloc /home/runner/work/baresip/baresip/src/stream.c:586:9 (selftest+0x181938) (BuildId: 423c6eaf015a868fa13b869229bb2c33c5c5a7f2)
    #8 audio_alloc /home/runner/work/baresip/baresip/src/audio.c:737:8 (selftest+0x14dd4b) (BuildId: 423c6eaf015a868fa13b869229bb2c33c5c5a7f2)
    #9 call_streams_alloc /home/runner/work/baresip/baresip/src/call.c:744:8 (selftest+0x15c652) (BuildId: 423c6eaf015a868fa13b869229bb2c33c5c5a7f2)
    #10 sipsess_desc_handler /home/runner/work/baresip/baresip/src/call.c:2395:9 (selftest+0x16745b) (BuildId: 423c6eaf015a868fa13b869229bb2c33c5c5a7f2)
    #11 send_handler /home/runner/work/baresip/baresip/re/src/sipsess/connect.c:36:9 (libre.so.28+0xfa630) (BuildId: 43a29f9d5d2b96b1a8b8b93a4a64c4b9cf7aec79)
    #12 connect_handler /home/runner/work/baresip/baresip/re/src/sip/request.c:180:21 (libre.so.28+0xe28af) (BuildId: 43a29f9d5d2b96b1a8b8b93a4a64c4b9cf7aec79)
    #13 connect_handler /home/runner/work/baresip/baresip/re/src/sip/ctrans.c:188:10 (libre.so.28+0xd6f53) (BuildId: 43a29f9d5d2b96b1a8b8b93a4a64c4b9cf7aec79)
    #14 sip_transp_send /home/runner/work/baresip/baresip/re/src/sip/transp.c:1552:4 (libre.so.28+0xe8568) (BuildId: 43a29f9d5d2b96b1a8b8b93a4a64c4b9cf7aec79)
    #15 sip_ctrans_request /home/runner/work/baresip/baresip/re/src/sip/ctrans.c:357:8 (libre.so.28+0xd6bcc) (BuildId: 43a29f9d5d2b96b1a8b8b93a4a64c4b9cf7aec79)
    #16 request /home/runner/work/baresip/baresip/re/src/sip/request.c:240:9 (libre.so.28+0xe1f62) (BuildId: 43a29f9d5d2b96b1a8b8b93a4a64c4b9cf7aec79)
    #17 sip_request_send /home/runner/work/baresip/baresip/re/src/sip/request.c:736:9 (libre.so.28+0xe0630) (BuildId: 43a29f9d5d2b96b1a8b8b93a4a64c4b9cf7aec79)
    #18 sip_drequestf /home/runner/work/baresip/baresip/re/src/sip/request.c:950:8 (libre.so.28+0xe10de) (BuildId: 43a29f9d5d2b96b1a8b8b93a4a64c4b9cf7aec79)
    #19 invite /home/runner/work/baresip/baresip/re/src/sipsess/connect.c:272:9 (libre.so.28+0xfa4cb) (BuildId: 43a29f9d5d2b96b1a8b8b93a4a64c4b9cf7aec79)
    #20 sipsess_connect /home/runner/work/baresip/baresip/re/src/sipsess/connect.c:377:8 (libre.so.28+0xfa18e) (BuildId: 43a29f9d5d2b96b1a8b8b93a4a64c4b9cf7aec79)
    #21 send_invite /home/runner/work/baresip/baresip/src/call.c:2435:8 (selftest+0x15fe18) (BuildId: 423c6eaf015a868fa13b869229bb2c33c5c5a7f2)
    #22 call_connect /home/runner/work/baresip/baresip/src/call.c:1062:9 (selftest+0x15f6f5) (BuildId: 423c6eaf015a868fa13b869229bb2c33c5c5a7f2)
    #23 ua_connect_dir /home/runner/work/baresip/baresip/src/ua.c:1386:8 (selftest+0x18c60f) (BuildId: 423c6eaf015a868fa13b869229bb2c33c5c5a7f2)
    #24 ua_connect /home/runner/work/baresip/baresip/src/ua.c:1415:9 (selftest+0x18caa2) (BuildId: 423c6eaf015a868fa13b869229bb2c33c5c5a7f2)
    #25 test_call_hold_resume_base /home/runner/work/baresip/baresip/test/call.c:3108:8 (selftest+0x122643) (BuildId: 423c6eaf015a868fa13b869229bb2c33c5c5a7f2)
    #26 test_call_hold_resume /home/runner/work/baresip/baresip/test/call.c:3348:8 (selftest+0x1216c7) (BuildId: 423c6eaf015a868fa13b869229bb2c33c5c5a7f2)
    #27 run_tests /home/runner/work/baresip/baresip/test/main.c:167:9 (selftest+0x145d25) (BuildId: 423c6eaf015a868fa13b869229bb2c33c5c5a7f2)
    #28 run_tests_rxmode /home/runner/work/baresip/baresip/test/main.c:200:9 (selftest+0x145aec) (BuildId: 423c6eaf015a868fa13b869229bb2c33c5c5a7f2)
    #29 main /home/runner/work/baresip/baresip/test/main.c:386:9 (selftest+0x1454f3) (BuildId: 423c6eaf015a868fa13b869229bb2c33c5c5a7f2)

  Thread T276 'RX thread' (tid=5757, running) created by main thread at:
    #0 pthread_create <null> (selftest+0x72adb) (BuildId: 423c6eaf015a868fa13b869229bb2c33c5c5a7f2)
    #1 thrd_create /home/runner/work/baresip/baresip/re/src/thread/posix.c:43:8 (libre.so.28+0x10fc0c) (BuildId: 43a29f9d5d2b96b1a8b8b93a4a64c4b9cf7aec79)
    #2 thread_create_name /home/runner/work/baresip/baresip/re/src/thread/thread.c:127:8 (libre.so.28+0xa5e43) (BuildId: 43a29f9d5d2b96b1a8b8b93a4a64c4b9cf7aec79)
    #3 rtprecv_start_thread /home/runner/work/baresip/baresip/src/rtprecv.c:769:8 (selftest+0x1ac967) (BuildId: 423c6eaf015a868fa13b869229bb2c33c5c5a7f2)
    #4 stream_start_receiver /home/runner/work/baresip/baresip/src/stream.c:231:2 (selftest+0x180918) (BuildId: 423c6eaf015a868fa13b869229bb2c33c5c5a7f2)
    #5 tmr_poll /home/runner/work/baresip/baresip/re/src/tmr/tmr.c:160:3 (libre.so.28+0xa623e) (BuildId: 43a29f9d5d2b96b1a8b8b93a4a64c4b9cf7aec79)
    #6 re_main /home/runner/work/baresip/baresip/re/src/main/main.c:1084:3 (libre.so.28+0x6ca19) (BuildId: 43a29f9d5d2b96b1a8b8b93a4a64c4b9cf7aec79)
    #7 re_main_timeout /home/runner/work/baresip/baresip/test/test.c:39:2 (selftest+0x144a54) (BuildId: 423c6eaf015a868fa13b869229bb2c33c5c5a7f2)
    #8 test_call_hold_resume_base /home/runner/work/baresip/baresip/test/call.c:3113:8 (selftest+0x1226db) (BuildId: 423c6eaf015a868fa13b869229bb2c33c5c5a7f2)
    #9 test_call_hold_resume /home/runner/work/baresip/baresip/test/call.c:3348:8 (selftest+0x1216c7) (BuildId: 423c6eaf015a868fa13b869229bb2c33c5c5a7f2)
    #10 run_tests /home/runner/work/baresip/baresip/test/main.c:167:9 (selftest+0x145d25) (BuildId: 423c6eaf015a868fa13b869229bb2c33c5c5a7f2)
    #11 run_tests_rxmode /home/runner/work/baresip/baresip/test/main.c:200:9 (selftest+0x145aec) (BuildId: 423c6eaf015a868fa13b869229bb2c33c5c5a7f2)
    #12 main /home/runner/work/baresip/baresip/test/main.c:386:9 (selftest+0x1454f3) (BuildId: 423c6eaf015a868fa13b869229bb2c33c5c5a7f2)

SUMMARY: ThreadSanitizer: data race /home/runner/work/baresip/baresip/re/src/rtp/sess.c:136:12 in handle_rr_block
==================
==================
WARNING: ThreadSanitizer: data race (pid=5476)
  Read of size 4 at 0x7b4800032238 by thread T289 (mutexes: write M0, write M1):
    #0 handle_rr_block /home/runner/work/baresip/baresip/re/src/rtp/sess.c:136:12 (libre.so.28+0x84581) (BuildId: 43a29f9d5d2b96b1a8b8b93a4a64c4b9cf7aec79)
    #1 handle_incoming_sr /home/runner/work/baresip/baresip/re/src/rtp/sess.c:188:3 (libre.so.28+0x82350) (BuildId: 43a29f9d5d2b96b1a8b8b93a4a64c4b9cf7aec79)
    #2 rtcp_handler /home/runner/work/baresip/baresip/re/src/rtp/sess.c:222:3 (libre.so.28+0x81f52) (BuildId: 43a29f9d5d2b96b1a8b8b93a4a64c4b9cf7aec79)
    #3 rtcp_recv_handler /home/runner/work/baresip/baresip/re/src/rtp/rtp.c:176:3 (libre.so.28+0x812b1) (BuildId: 43a29f9d5d2b96b1a8b8b93a4a64c4b9cf7aec79)
    #4 udp_read /home/runner/work/baresip/baresip/re/src/udp/udp.c:207:2 (libre.so.28+0xba9a4) (BuildId: 43a29f9d5d2b96b1a8b8b93a4a64c4b9cf7aec79)
    #5 udp_read_handler /home/runner/work/baresip/baresip/re/src/udp/udp.c:220:2 (libre.so.28+0xb95b6) (BuildId: 43a29f9d5d2b96b1a8b8b93a4a64c4b9cf7aec79)
    #6 fd_poll /home/runner/work/baresip/baresip/re/src/main/main.c:925:4 (libre.so.28+0x6d678) (BuildId: 43a29f9d5d2b96b1a8b8b93a4a64c4b9cf7aec79)
    #7 re_main /home/runner/work/baresip/baresip/re/src/main/main.c:1064:9 (libre.so.28+0x6c9d6) (BuildId: 43a29f9d5d2b96b1a8b8b93a4a64c4b9cf7aec79)
    #8 rtprecv_thread /home/runner/work/baresip/baresip/src/rtprecv.c:225:8 (selftest+0x1acb17) (BuildId: 423c6eaf015a868fa13b869229bb2c33c5c5a7f2)
    #9 handler /home/runner/work/baresip/baresip/re/src/thread/thread.c:105:9 (libre.so.28+0xa5ef1) (BuildId: 43a29f9d5d2b96b1a8b8b93a4a64c4b9cf7aec79)
    #10 handler /home/runner/work/baresip/baresip/re/src/thread/posix.c:21:12 (libre.so.28+0x10fcab) (BuildId: 43a29f9d5d2b96b1a8b8b93a4a64c4b9cf7aec79)

  Previous write of size 4 at 0x7b4800032238 by main thread:
    #0 rtcp_set_srate_tx /home/runner/work/baresip/baresip/re/src/rtp/sess.c:324:17 (libre.so.28+0x829d9) (BuildId: 43a29f9d5d2b96b1a8b8b93a4a64c4b9cf7aec79)
    #1 stream_set_srate /home/runner/work/baresip/baresip/src/stream.c:1053:3 (selftest+0x184099) (BuildId: 423c6eaf015a868fa13b869229bb2c33c5c5a7f2)
    #2 audio_encoder_set /home/runner/work/baresip/baresip/src/audio.c:1379:2 (selftest+0x14ff08) (BuildId: 423c6eaf015a868fa13b869229bb2c33c5c5a7f2)
    #3 audio_update /home/runner/work/baresip/baresip/src/audio.c:1194:10 (selftest+0x14f518) (BuildId: 423c6eaf015a868fa13b869229bb2c33c5c5a7f2)
    #4 update_streams /home/runner/work/baresip/baresip/src/call.c:288:10 (selftest+0x15c1eb) (BuildId: 423c6eaf015a868fa13b869229bb2c33c5c5a7f2)
    #5 call_update_media /home/runner/work/baresip/baresip/src/call.c:306:9 (selftest+0x15be91) (BuildId: 423c6eaf015a868fa13b869229bb2c33c5c5a7f2)
    #6 call_modify /home/runner/work/baresip/baresip/src/call.c:1105:8 (selftest+0x160136) (BuildId: 423c6eaf015a868fa13b869229bb2c33c5c5a7f2)
    #7 call_hold /home/runner/work/baresip/baresip/src/call.c:1407:9 (selftest+0x1617f9) (BuildId: 423c6eaf015a868fa13b869229bb2c33c5c5a7f2)
    #8 test_call_hold_resume_base /home/runner/work/baresip/baresip/test/call.c:3136:8 (selftest+0x122e25) (BuildId: 423c6eaf015a868fa13b869229bb2c33c5c5a7f2)
    #9 test_call_hold_resume /home/runner/work/baresip/baresip/test/call.c:3351:8 (selftest+0x121726) (BuildId: 423c6eaf015a868fa13b869229bb2c33c5c5a7f2)
    #10 run_tests /home/runner/work/baresip/baresip/test/main.c:167:9 (selftest+0x145d25) (BuildId: 423c6eaf015a868fa13b869229bb2c33c5c5a7f2)
    #11 run_tests_rxmode /home/runner/work/baresip/baresip/test/main.c:200:9 (selftest+0x145aec) (BuildId: 423c6eaf015a868fa13b869229bb2c33c5c5a7f2)
    #12 main /home/runner/work/baresip/baresip/test/main.c:386:9 (selftest+0x1454f3) (BuildId: 423c6eaf015a868fa13b869229bb2c33c5c5a7f2)

  Location is heap block of size 360 at 0x7b4800032100 allocated by main thread:
    #0 malloc <null> (selftest+0x70efc) (BuildId: 423c6eaf015a868fa13b869229bb2c33c5c5a7f2)
    #1 mem_alloc /home/runner/work/baresip/baresip/re/src/mem/mem.c:166:6 (libre.so.28+0x715eb) (BuildId: 43a29f9d5d2b96b1a8b8b93a4a64c4b9cf7aec79)
    #2 mem_zalloc /home/runner/work/baresip/baresip/re/src/mem/mem.c:198:6 (libre.so.28+0x719e5) (BuildId: 43a29f9d5d2b96b1a8b8b93a4a64c4b9cf7aec79)
    #3 rtcp_sess_alloc /home/runner/work/baresip/baresip/re/src/rtp/sess.c:249:9 (libre.so.28+0x82640) (BuildId: 43a29f9d5d2b96b1a8b8b93a4a64c4b9cf7aec79)
    #4 rtp_listen /home/runner/work/baresip/baresip/re/src/rtp/rtp.c:329:9 (libre.so.28+0x7fc15) (BuildId: 43a29f9d5d2b96b1a8b8b93a4a64c4b9cf7aec79)
    #5 stream_sock_alloc /home/runner/work/baresip/baresip/src/stream.c:376:8 (selftest+0x182534) (BuildId: 423c6eaf015a868fa13b869229bb2c33c5c5a7f2)
    #6 stream_alloc /home/runner/work/baresip/baresip/src/stream.c:586:9 (selftest+0x181938) (BuildId: 423c6eaf015a868fa13b869229bb2c33c5c5a7f2)
    #7 audio_alloc /home/runner/work/baresip/baresip/src/audio.c:737:8 (selftest+0x14dd4b) (BuildId: 423c6eaf015a868fa13b869229bb2c33c5c5a7f2)
    #8 call_streams_alloc /home/runner/work/baresip/baresip/src/call.c:744:8 (selftest+0x15c652) (BuildId: 423c6eaf015a868fa13b869229bb2c33c5c5a7f2)
    #9 sipsess_desc_handler /home/runner/work/baresip/baresip/src/call.c:2395:9 (selftest+0x16745b) (BuildId: 423c6eaf015a868fa13b869229bb2c33c5c5a7f2)
    #10 send_handler /home/runner/work/baresip/baresip/re/src/sipsess/connect.c:36:9 (libre.so.28+0xfa630) (BuildId: 43a29f9d5d2b96b1a8b8b93a4a64c4b9cf7aec79)
    #11 connect_handler /home/runner/work/baresip/baresip/re/src/sip/request.c:180:21 (libre.so.28+0xe28af) (BuildId: 43a29f9d5d2b96b1a8b8b93a4a64c4b9cf7aec79)
    #12 connect_handler /home/runner/work/baresip/baresip/re/src/sip/ctrans.c:188:10 (libre.so.28+0xd6f53) (BuildId: 43a29f9d5d2b96b1a8b8b93a4a64c4b9cf7aec79)
    #13 conn_send /home/runner/work/baresip/baresip/re/src/sip/transp.c:838:9 (libre.so.28+0xe952c) (BuildId: 43a29f9d5d2b96b1a8b8b93a4a64c4b9cf7aec79)
    #14 sip_transp_send /home/runner/work/baresip/baresip/re/src/sip/transp.c:[158](https://github.com/baresip/baresip/actions/runs/12154138484/job/33893418988?pr=3232#step:11:159)6:10 (libre.so.28+0xe8750) (BuildId: 43a29f9d5d2b96b1a8b8b93a4a64c4b9cf7aec79)
    #15 sip_ctrans_request /home/runner/work/baresip/baresip/re/src/sip/ctrans.c:357:8 (libre.so.28+0xd6bcc) (BuildId: 43a29f9d5d2b96b1a8b8b93a4a64c4b9cf7aec79)
    #16 request /home/runner/work/baresip/baresip/re/src/sip/request.c:240:9 (libre.so.28+0xe1f62) (BuildId: 43a29f9d5d2b96b1a8b8b93a4a64c4b9cf7aec79)
    #17 sip_request_send /home/runner/work/baresip/baresip/re/src/sip/request.c:736:9 (libre.so.28+0xe0630) (BuildId: 43a29f9d5d2b96b1a8b8b93a4a64c4b9cf7aec79)
    #18 sip_drequestf /home/runner/work/baresip/baresip/re/src/sip/request.c:950:8 (libre.so.28+0xe10de) (BuildId: 43a29f9d5d2b96b1a8b8b93a4a64c4b9cf7aec79)
    #19 invite /home/runner/work/baresip/baresip/re/src/sipsess/connect.c:272:9 (libre.so.28+0xfa4cb) (BuildId: 43a29f9d5d2b96b1a8b8b93a4a64c4b9cf7aec79)
    #20 sipsess_connect /home/runner/work/baresip/baresip/re/src/sipsess/connect.c:377:8 (libre.so.28+0xfa18e) (BuildId: 43a29f9d5d2b96b1a8b8b93a4a64c4b9cf7aec79)
    #21 send_invite /home/runner/work/baresip/baresip/src/call.c:2435:8 (selftest+0x15fe18) (BuildId: 423c6eaf015a868fa13b869229bb2c33c5c5a7f2)
    #22 call_connect /home/runner/work/baresip/baresip/src/call.c:1062:9 (selftest+0x15f6f5) (BuildId: 423c6eaf015a868fa13b869229bb2c33c5c5a7f2)
    #23 ua_connect_dir /home/runner/work/baresip/baresip/src/ua.c:1386:8 (selftest+0x18c60f) (BuildId: 423c6eaf015a868fa13b869229bb2c33c5c5a7f2)
    #24 ua_connect /home/runner/work/baresip/baresip/src/ua.c:1415:9 (selftest+0x18caa2) (BuildId: 423c6eaf015a868fa13b869229bb2c33c5c5a7f2)
    #25 test_call_hold_resume_base /home/runner/work/baresip/baresip/test/call.c:3108:8 (selftest+0x122643) (BuildId: 423c6eaf015a868fa13b869229bb2c33c5c5a7f2)
    #26 test_call_hold_resume /home/runner/work/baresip/baresip/test/call.c:3351:8 (selftest+0x121726) (BuildId: 423c6eaf015a868fa13b869229bb2c33c5c5a7f2)
    #27 run_tests /home/runner/work/baresip/baresip/test/main.c:167:9 (selftest+0x145d25) (BuildId: 423c6eaf015a868fa13b869229bb2c33c5c5a7f2)
    #28 run_tests_rxmode /home/runner/work/baresip/baresip/test/main.c:200:9 (selftest+0x145aec) (BuildId: 423c6eaf015a868fa13b869229bb2c33c5c5a7f2)
    #29 main /home/runner/work/baresip/baresip/test/main.c:386:9 (selftest+0x1454f3) (BuildId: 423c6eaf015a868fa13b869229bb2c33c5c5a7f2)

  Mutex M0 (0x7b3c00043140) created at:
    #0 pthread_mutex_init <null> (selftest+0x744c0) (BuildId: 423c6eaf015a868fa13b869229bb2c33c5c5a7f2)
    #1 mtx_init /home/runner/work/baresip/baresip/re/src/thread/posix.c:169:2 (libre.so.28+0x110208) (BuildId: 43a29f9d5d2b96b1a8b8b93a4a64c4b9cf7aec79)
    #2 _mutex_alloc /home/runner/work/baresip/baresip/re/src/thread/thread.c:52:8 (libre.so.28+0xa5c21) (BuildId: 43a29f9d5d2b96b1a8b8b93a4a64c4b9cf7aec79)
    #3 mutex_alloc_tp /home/runner/work/baresip/baresip/re/src/thread/thread.c:78:9 (libre.so.28+0xa5ce1) (BuildId: 43a29f9d5d2b96b1a8b8b93a4a64c4b9cf7aec79)
    #4 re_alloc /home/runner/work/baresip/baresip/re/src/main/main.c:161:8 (libre.so.28+0x6b594) (BuildId: 43a29f9d5d2b96b1a8b8b93a4a64c4b9cf7aec79)
    #5 re_thread_init /home/runner/work/baresip/baresip/re/src/main/main.c:1258:8 (libre.so.28+0x6e17b) (BuildId: 43a29f9d5d2b96b1a8b8b93a4a64c4b9cf7aec79)
    #6 rtprecv_thread /home/runner/work/baresip/baresip/src/rtprecv.c:207:2 (selftest+0x1aca29) (BuildId: 423c6eaf015a868fa13b869229bb2c33c5c5a7f2)
    #7 handler /home/runner/work/baresip/baresip/re/src/thread/thread.c:105:9 (libre.so.28+0xa5ef1) (BuildId: 43a29f9d5d2b96b1a8b8b93a4a64c4b9cf7aec79)
    #8 handler /home/runner/work/baresip/baresip/re/src/thread/posix.c:21:12 (libre.so.28+0x10fcab) (BuildId: 43a29f9d5d2b96b1a8b8b93a4a64c4b9cf7aec79)

  Mutex M1 (0x7b3c0003ea00) created at:
    #0 pthread_mutex_init <null> (selftest+0x744c0) (BuildId: 423c6eaf015a868fa13b869229bb2c33c5c5a7f2)
    #1 mtx_init /home/runner/work/baresip/baresip/re/src/thread/posix.c:163:3 (libre.so.28+0x1101d8) (BuildId: 43a29f9d5d2b96b1a8b8b93a4a64c4b9cf7aec79)
    #2 _mutex_alloc /home/runner/work/baresip/baresip/re/src/thread/thread.c:52:8 (libre.so.28+0xa5c21) (BuildId: 43a29f9d5d2b96b1a8b8b93a4a64c4b9cf7aec79)
    #3 mutex_alloc /home/runner/work/baresip/baresip/re/src/thread/thread.c:72:9 (libre.so.28+0xa5b97) (BuildId: 43a29f9d5d2b96b1a8b8b93a4a64c4b9cf7aec79)
    #4 rtcp_sess_alloc /home/runner/work/baresip/baresip/re/src/rtp/sess.c:258:8 (libre.so.28+0x826ba) (BuildId: 43a29f9d5d2b96b1a8b8b93a4a64c4b9cf7aec79)
    #5 rtp_listen /home/runner/work/baresip/baresip/re/src/rtp/rtp.c:329:9 (libre.so.28+0x7fc15) (BuildId: 43a29f9d5d2b96b1a8b8b93a4a64c4b9cf7aec79)
    #6 stream_sock_alloc /home/runner/work/baresip/baresip/src/stream.c:376:8 (selftest+0x182534) (BuildId: 423c6eaf015a868fa13b869229bb2c33c5c5a7f2)
    #7 stream_alloc /home/runner/work/baresip/baresip/src/stream.c:586:9 (selftest+0x181938) (BuildId: 423c6eaf015a868fa13b869229bb2c33c5c5a7f2)
    #8 audio_alloc /home/runner/work/baresip/baresip/src/audio.c:737:8 (selftest+0x14dd4b) (BuildId: 423c6eaf015a868fa13b869229bb2c33c5c5a7f2)
    #9 call_streams_alloc /home/runner/work/baresip/baresip/src/call.c:744:8 (selftest+0x15c652) (BuildId: 423c6eaf015a868fa13b869229bb2c33c5c5a7f2)
    #10 sipsess_desc_handler /home/runner/work/baresip/baresip/src/call.c:2395:9 (selftest+0x16745b) (BuildId: 423c6eaf015a868fa13b869229bb2c33c5c5a7f2)
    #11 send_handler /home/runner/work/baresip/baresip/re/src/sipsess/connect.c:36:9 (libre.so.28+0xfa630) (BuildId: 43a29f9d5d2b96b1a8b8b93a4a64c4b9cf7aec79)
    #12 connect_handler /home/runner/work/baresip/baresip/re/src/sip/request.c:180:21 (libre.so.28+0xe28af) (BuildId: 43a29f9d5d2b96b1a8b8b93a4a64c4b9cf7aec79)
    #13 connect_handler /home/runner/work/baresip/baresip/re/src/sip/ctrans.c:188:10 (libre.so.28+0xd6f53) (BuildId: 43a29f9d5d2b96b1a8b8b93a4a64c4b9cf7aec79)
    #14 conn_send /home/runner/work/baresip/baresip/re/src/sip/transp.c:838:9 (libre.so.28+0xe952c) (BuildId: 43a29f9d5d2b96b1a8b8b93a4a64c4b9cf7aec79)
    #15 sip_transp_send /home/runner/work/baresip/baresip/re/src/sip/transp.c:1586:10 (libre.so.28+0xe8750) (BuildId: 43a29f9d5d2b96b1a8b8b93a4a64c4b9cf7aec79)
    #16 sip_ctrans_request /home/runner/work/baresip/baresip/re/src/sip/ctrans.c:357:8 (libre.so.28+0xd6bcc) (BuildId: 43a29f9d5d2b96b1a8b8b93a4a64c4b9cf7aec79)
    #17 request /home/runner/work/baresip/baresip/re/src/sip/request.c:240:9 (libre.so.28+0xe1f62) (BuildId: 43a29f9d5d2b96b1a8b8b93a4a64c4b9cf7aec79)
    #18 sip_request_send /home/runner/work/baresip/baresip/re/src/sip/request.c:736:9 (libre.so.28+0xe0630) (BuildId: 43a29f9d5d2b96b1a8b8b93a4a64c4b9cf7aec79)
    #19 sip_drequestf /home/runner/work/baresip/baresip/re/src/sip/request.c:950:8 (libre.so.28+0xe10de) (BuildId: 43a29f9d5d2b96b1a8b8b93a4a64c4b9cf7aec79)
    #20 invite /home/runner/work/baresip/baresip/re/src/sipsess/connect.c:272:9 (libre.so.28+0xfa4cb) (BuildId: 43a29f9d5d2b96b1a8b8b93a4a64c4b9cf7aec79)
    #21 sipsess_connect /home/runner/work/baresip/baresip/re/src/sipsess/connect.c:377:8 (libre.so.28+0xfa18e) (BuildId: 43a29f9d5d2b96b1a8b8b93a4a64c4b9cf7aec79)
    #22 send_invite /home/runner/work/baresip/baresip/src/call.c:2435:8 (selftest+0x15fe18) (BuildId: 423c6eaf015a868fa13b869229bb2c33c5c5a7f2)
    #23 call_connect /home/runner/work/baresip/baresip/src/call.c:1062:9 (selftest+0x15f6f5) (BuildId: 423c6eaf015a868fa13b869229bb2c33c5c5a7f2)
    #24 ua_connect_dir /home/runner/work/baresip/baresip/src/ua.c:1386:8 (selftest+0x18c60f) (BuildId: 423c6eaf015a868fa13b869229bb2c33c5c5a7f2)
    #25 ua_connect /home/runner/work/baresip/baresip/src/ua.c:1415:9 (selftest+0x18caa2) (BuildId: 423c6eaf015a868fa13b869229bb2c33c5c5a7f2)
    #26 test_call_hold_resume_base /home/runner/work/baresip/baresip/test/call.c:3108:8 (selftest+0x122643) (BuildId: 423c6eaf015a868fa13b869229bb2c33c5c5a7f2)
    #27 test_call_hold_resume /home/runner/work/baresip/baresip/test/call.c:3351:8 (selftest+0x121726) (BuildId: 423c6eaf015a868fa13b869229bb2c33c5c5a7f2)
    #28 run_tests /home/runner/work/baresip/baresip/test/main.c:167:9 (selftest+0x145d25) (BuildId: 423c6eaf015a868fa13b869229bb2c33c5c5a7f2)
    #29 run_tests_rxmode /home/runner/work/baresip/baresip/test/main.c:200:9 (selftest+0x145aec) (BuildId: 423c6eaf015a868fa13b869229bb2c33c5c5a7f2)
    #30 main /home/runner/work/baresip/baresip/test/main.c:386:9 (selftest+0x1454f3) (BuildId: 423c6eaf015a868fa13b869229bb2c33c5c5a7f2)

  Thread T289 'RX thread' (tid=5771, running) created by main thread at:
    #0 pthread_create <null> (selftest+0x72adb) (BuildId: 423c6eaf015a868fa13b869229bb2c33c5c5a7f2)
    #1 thrd_create /home/runner/work/baresip/baresip/re/src/thread/posix.c:43:8 (libre.so.28+0x10fc0c) (BuildId: 43a29f9d5d2b96b1a8b8b93a4a64c4b9cf7aec79)
    #2 thread_create_name /home/runner/work/baresip/baresip/re/src/thread/thread.c:127:8 (libre.so.28+0xa5e43) (BuildId: 43a29f9d5d2b96b1a8b8b93a4a64c4b9cf7aec79)
    #3 rtprecv_start_thread /home/runner/work/baresip/baresip/src/rtprecv.c:769:8 (selftest+0x1ac967) (BuildId: 423c6eaf015a868fa13b869229bb2c33c5c5a7f2)
    #4 stream_start_receiver /home/runner/work/baresip/baresip/src/stream.c:231:2 (selftest+0x180918) (BuildId: 423c6eaf015a868fa13b869229bb2c33c5c5a7f2)
    #5 tmr_poll /home/runner/work/baresip/baresip/re/src/tmr/tmr.c:[160](https://github.com/baresip/baresip/actions/runs/12154138484/job/33893418988?pr=3232#step:11:161):3 (libre.so.28+0xa623e) (BuildId: 43a29f9d5d2b96b1a8b8b93a4a64c4b9cf7aec79)
    #6 re_main /home/runner/work/baresip/baresip/re/src/main/main.c:1084:3 (libre.so.28+0x6ca19) (BuildId: 43a29f9d5d2b96b1a8b8b93a4a64c4b9cf7aec79)
    #7 re_main_timeout /home/runner/work/baresip/baresip/test/test.c:39:2 (selftest+0x144a54) (BuildId: 423c6eaf015a868fa13b869229bb2c33c5c5a7f2)
    #8 test_call_hold_resume_base /home/runner/work/baresip/baresip/test/call.c:3113:8 (selftest+0x1226db) (BuildId: 423c6eaf015a868fa13b869229bb2c33c5c5a7f2)
    #9 test_call_hold_resume /home/runner/work/baresip/baresip/test/call.c:3351:8 (selftest+0x121726) (BuildId: 423c6eaf015a868fa13b869229bb2c33c5c5a7f2)
    #10 run_tests /home/runner/work/baresip/baresip/test/main.c:167:9 (selftest+0x145d25) (BuildId: 423c6eaf015a868fa13b869229bb2c33c5c5a7f2)
    #11 run_tests_rxmode /home/runner/work/baresip/baresip/test/main.c:200:9 (selftest+0x145aec) (BuildId: 423c6eaf015a868fa13b869229bb2c33c5c5a7f2)
    #12 main /home/runner/work/baresip/baresip/test/main.c:386:9 (selftest+0x1454f3) (BuildId: 423c6eaf015a868fa13b869229bb2c33c5c5a7f2)

SUMMARY: ThreadSanitizer: data race /home/runner/work/baresip/baresip/re/src/rtp/sess.c:136:12 in handle_rr_block

ThreadSanitizer: reported 2 warnings
[ RUN ] test_call_mediaenc (rx thread)

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions