signalwire / freeswitch

FreeSWITCH is a Software Defined Telecom Stack enabling the digital transformation from proprietary telecom switches to a versatile software implementation that runs on any commodity hardware. From a Raspberry PI to a multi-core server, FreeSWITCH can unlock the telecommunications potential of any device.
https://freeswitch.com/#getting-started
Other
3.32k stars 1.38k forks source link

segfault on video_bug_thread #2500

Open wmasilva opened 1 week ago

wmasilva commented 1 week ago

Describe the bug got a segfault in freeswitch Version 1.10.11-dev git c26b5cd 2023-12-14 11:01:57Z 64bit

Program terminated with signal SIGSEGV, Segmentation fault.
#0  video_bug_thread (thread=<optimized out>, obj=0x55e74dd7c028) at src/switch_core_media_bug.c:683
683 src/switch_core_media_bug.c: No such file or directory.
[Current thread is 1 (Thread 0x7fc25d293700 (LWP 2996710))]
(gdb) bt
#0  video_bug_thread (thread=<optimized out>, obj=0x55e74dd7c028) at src/switch_core_media_bug.c:683
#1  0x00007fc269087ea7 in start_thread (arg=<optimized out>) at pthread_create.c:477
#2  0x00007fc268da3a2f in ?? () from /lib/x86_64-linux-gnu/libc.so.6
#3  0x0000000000000000 in ?? ()
(gdb) bt full
#0  video_bug_thread (thread=<optimized out>, obj=0x55e74dd7c028) at src/switch_core_media_bug.c:683
        w = 640
        ok = 1
        new_main = 1
        new_other = 0
        h = 720
        new_canvas = 0
        bug = 0x55e74dd7c028
        main_q = 0x55e74dd823e0
        other_q = 0x55e722279548
        IMG = 0x55e7819f55f0
        img = 0x55e770dd57a0
        other_img = 0x0
        pop = 0x55e770dd57a0
        other_pop = 0x0
        buf = <optimized out>
        buflen = 16384
        frame = {codec = 0x0, source = 0x0, packet = 0x55e729966028, packetlen = 16384, extra_data = 0x0, data = 0x55e729966034, datalen = 0, buflen = 16372, samples = 0, rate = 0, channels = 0, payload = 0 '\000', timestamp = 0, 
          seq = 0, ssrc = 0, m = SWITCH_FALSE, flags = 2, user_data = 0x0, pmap = 0x0, img = 0x55e7819f55f0, geometry = {w = 0, h = 0, x = 0, y = 0, z = 0, M = 0, X = 0}}
        timer = {interval = 66, flags = 1, samples = 5940, samplecount = 540540, last_samplecount = 0, timer_interface = 0x55e7115e42b0, memory_pool = 0x55e72b9ce028, private_info = 0x55e72b9ce110, diff = 0, start = 1718983947753515, 
          tick = 91}
        mm = {samplerate = 44100, channels = 1, keyint = 60, ab = 128, vb = 0, vw = 0, vh = 0, cbr = 0, fps = 0, source_fps = 0, source_kps = 0, vbuf = 0, vprofile = SWITCH_VIDEO_PROFILE_BASELINE, 
          vencspd = SWITCH_VIDEO_ENCODE_SPEED_DEFAULT, try_hardware_encoder = 1 '\001', scale_w = 0, scale_h = 0, fmt = VPX_IMG_FMT_NONE, auth_username = 0x0, auth_password = 0x0}
        vw = 1280
        vh = 720
        last_w = 352
        last_h = 288
        other_last_w = 352
        other_last_h = 288
        fps_data = {fps = <optimized out>, ms = <optimized out>, samples = <optimized out>}
        fps = <optimized out>
        color = {b = 0 '\000', g = 0 '\000', r = 0 '\000', a = 255 '\377'}
        __func__ = "video_bug_thread"
#1  0x00007fc269087ea7 in start_thread (arg=<optimized out>) at pthread_create.c:477
        ret = <optimized out>
        pd = <optimized out>
        unwind_buf = {cancel_jmp_buf = {{jmp_buf = {140472763365120, 7269576137023444948, 140472732182830, 140472732182831, 140472763362432, 94451296913680, -7249103624168515628, -7248988988656429100}, mask_was_saved = 0}}, priv = {
            pad = {0x0, 0x0, 0x0, 0x0}, data = {prev = 0x0, cleanup = 0x0, canceltype = 0}}}
        not_first_call = 0
#2  0x00007fc268da3a2f in ?? () from /lib/x86_64-linux-gnu/libc.so.6
No symbol table info available.
#3  0x0000000000000000 in ?? ()
No symbol table info available.