linphone-developers
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [Linphone-developers] /0 bug in ortp


From: Yuri Arabadji
Subject: Re: [Linphone-developers] /0 bug in ortp
Date: Mon, 23 May 2011 23:04:20 +0300
User-agent: KMail/1.12.4 (Linux/2.6.36-tuxonice-r3-core2-x86_64-tux; KDE/4.4.5; x86_64; ; )

Hello.

Yep.

Program received signal SIGFPE, Arithmetic exception.
[Switching to Thread 0x7fffe7fff700 (LWP 6423)]
0x00007ffff775e9e6 in jitter_control_set_payload (ctl=0x88b480, pt=0x9f36d0) at 
jitterctl.c:62
62              ctl->corrective_step=(160 * 8000 )/pt->clock_rate; /* This 
formula got to me after some beers */

(gdb) bt
#0  0x00007ffff775e9e6 in jitter_control_set_payload (ctl=0x88b480, 
pt=0x9f36d0) at jitterctl.c:62
#1  0x00007ffff77595c8 in payload_type_changed (session=0x88af00, pt=0x9f36d0) 
at rtpsession.c:49
#2  0x00007ffff775a69c in rtp_session_update_payload_type (session=0x88af00, 
paytype=112) at rtpsession.c:608
#3  0x00007ffff77592ab in rtp_session_rtp_parse (session=0x88af00, 
mp=0x7fffe8005500, local_str_ts=127680, addr=0x7fffe7ffec60, addrlen=16) at 
rtpparse.c:200
#4  0x00007ffff775e480 in rtp_session_rtp_recv (session=0x88af00, 
user_ts=127680) at rtpsession_inet.c:992
#5  0x00007ffff775af9e in rtp_session_recvm_with_ts (session=0x88af00, 
user_ts=127680) at rtpsession.c:1006
#6  0x00007ffff7987368 in ?? () from /usr/lib/libmediastreamer.so.1
#7  0x00007ffff79847f6 in ms_filter_process () from 
/usr/lib/libmediastreamer.so.1
#8  0x00007ffff798553f in ?? () from /usr/lib/libmediastreamer.so.1
#9  0x00007ffff79855c8 in ?? () from /usr/lib/libmediastreamer.so.1
#10 0x00007ffff79859bf in ms_ticker_run () from /usr/lib/libmediastreamer.so.1
#11 0x00007ffff5db4537 in start_thread () from /lib/libpthread.so.0
#12 0x00007ffff5b247bd in clone () from /lib/libc.so.6

(gdb) p *ctl
$1 = {count = 0, jitt_comp = 60, jitt_comp_ts = 0, adapt_jitt_comp_ts = 1920, 
slide = 0, prev_slide = 0, jitter = 0, olddiff = 0, inter_jitter = 0, 
corrective_step = 40, corrective_slide = 0, 
  adaptive = 1 '\001', enabled = 1 '\001'}
(gdb) p *pt
$2 = {type = 8871712, clock_rate = 0, bits_per_sample = -16 '\360', 
zero_pattern = 0x7ffff62de540 "\320", <incomplete sequence \317>, 
pattern_length = 1, normal_bitrate = 0, mime_type = 0x65d7d0 "", 
  channels = 0, recv_fmtp = 0xac <Address 0xac out of bounds>, send_fmtp = 0x0, 
flags = 8131472, user_data = 0x0}
(gdb) f 1
#1  0x00007ffff77595c8 in payload_type_changed (session=0x88af00, pt=0x9f36d0) 
at rtpsession.c:49
49              jitter_control_set_payload(&session->rtp.jittctl,pt);
(gdb) p *session
$3 = {next = 0x0, mask_pos = 0, snd = {profile = 0x9f3140, pt = 99, ssrc = 
1240024518, wp = {lock = {__data = {__lock = 0, __count = 0, __owner = 0, 
__nusers = 0, __kind = 0, __spins = 0, __list = {
            __prev = 0x0, __next = 0x0}}, __size = '\000' <repeats 39 times>, 
__align = 0}, cond = {__data = {__lock = 0, __futex = 0, __total_seq = 0, 
__wakeup_seq = 0, __woken_seq = 0, __mutex = 0x0, 
          __nwaiters = 0, __broadcast_seq = 0}, __size = '\000' <repeats 47 
times>, __align = 0}, time = 0, wakeup = 0 '\000'}, telephone_events_pt = -1}, 
rcv = {profile = 0x9f3140, pt = 99, 
    ssrc = 3730246695, wp = {lock = {__data = {__lock = 0, __count = 0, __owner 
= 0, __nusers = 0, __kind = 0, __spins = 0, __list = {__prev = 0x0, __next = 
0x0}}, __size = '\000' <repeats 39 times>, 
        __align = 0}, cond = {__data = {__lock = 0, __futex = 0, __total_seq = 
0, __wakeup_seq = 0, __woken_seq = 0, __mutex = 0x0, __nwaiters = 0, 
__broadcast_seq = 0}, __size = '\000' <repeats 47 times>, 
        __align = 0}, time = 0, wakeup = 0 '\000'}, telephone_events_pt = -1}, 
inc_ssrc_candidate = 0, inc_same_ssrc_count = 0, hw_recv_pt = 112, 
recv_buf_size = 1500, on_ssrc_changed = {callback = {
      0x7ffff775bd09 <rtp_session_resync>, 0, 0, 0, 0}, user_data = {0, 0, 0, 
0, 0}, session = 0x88af00, signal_name = 0x7ffff776c1ac "ssrc_changed", count = 
1}, on_payload_type_changed = {callback = {
      0x7ffff79914cd, 0, 0, 0, 0}, user_data = {8375392, 0, 0, 0, 0}, session = 
0x88af00, signal_name = 0x7ffff776c1b9 "payload_type_changed", count = 1}, 
on_telephone_event_packet = {callback = {0, 0, 0, 
      0, 0}, user_data = {0, 0, 0, 0, 0}, session = 0x88af00, signal_name = 
0x7ffff776c1de "telephone-event_packet", count = 0}, on_telephone_event = 
{callback = {0x7ffff7990a24, 0, 0, 0, 0}, user_data = {
      8375392, 0, 0, 0, 0}, session = 0x88af00, signal_name = 0x7ffff776c1ce 
"telephone-event", count = 1}, on_timestamp_jump = {callback = {0x7ffff775bd09 
<rtp_session_resync>, 0, 0, 0, 0}, user_data = {
      0, 0, 0, 0, 0}, session = 0x88af00, signal_name = 0x7ffff776c1f5 
"timestamp_jump", count = 1}, on_network_error = {callback = {0, 0, 0, 0, 0}, 
user_data = {0, 0, 0, 0, 0}, session = 0x88af00, 
    signal_name = 0x7ffff776c204 "network_error", count = 0}, on_rtcp_bye = 
{callback = {0, 0, 0, 0, 0}, user_data = {0, 0, 0, 0, 0}, session = 0x88af00, 
signal_name = 0x7ffff776c212 "rtcp_bye", 
    count = 0}, signal_tables = 0x88b900, eventqs = 0x86fe10, allocator = {q = 
{_q_stopper = {b_prev = 0x7fffe8006e70, b_next = 0x7fffe8006e70, b_cont = 0x0, 
b_datap = 0x0, b_rptr = 0x0, b_wptr = 0x0, 
        reserved1 = 0, reserved2 = 0}, q_mcount = 1}}, rtp = {socket = 13, tr = 
0x0, sockfamily = 2, max_rq_size = 100, time_jump = 5000, ts_jump = 160000, rq 
= {_q_stopper = {b_prev = 0x88b358, 
        b_next = 0x88b358, b_cont = 0x0, b_datap = 0x0, b_rptr = 0x0, b_wptr = 
0x0, reserved1 = 0, reserved2 = 0}, q_mcount = 0}, tev_rq = {_q_stopper = 
{b_prev = 0x88b398, b_next = 0x88b398, b_cont = 0x0, 
        b_datap = 0x0, b_rptr = 0x0, b_wptr = 0x0, reserved1 = 0, reserved2 = 
0}, q_mcount = 0}, cached_mp = 0x7fffe8005500, loc_port = 7080, rem_addr = 
{ss_family = 2, __ss_align = 0, 
      __ss_padding = '\000' <repeats 111 times>}, rem_addrlen = 16, QoSHandle = 
0x0, QoSFlowID = 0, jittctl = {count = 0, jitt_comp = 60, jitt_comp_ts = 0, 
adapt_jitt_comp_ts = 1920, slide = 0, 
      prev_slide = 0, jitter = 0, olddiff = 0, inter_jitter = 0, 
corrective_step = 40, corrective_slide = 0, adaptive = 1 '\001', enabled = 1 
'\001'}, snd_time_offset = 0, snd_ts_offset = 1280, 
    snd_rand_offset = 0, snd_last_ts = 128000, rcv_time_offset = 0, 
rcv_ts_offset = 0, rcv_query_ts_offset = 0, rcv_last_ts = 0, rcv_last_app_ts = 
127680, rcv_last_ret_ts = 0, hwrcv_extseq = 1, 
    hwrcv_seq_at_last_SR = 0, hwrcv_since_last_SR = 1, last_rcv_SR_ts = 0, 
last_rcv_SR_time = {tv_sec = 0, tv_usec = 0}, snd_seq = 199, 
last_rtcp_report_snt_r = 0, last_rtcp_report_snt_s = 0, 
    rtcp_report_snt_interval = 160000, last_rtcp_packet_count = 0, 
sent_payload_bytes = 12736, sent_bytes = 832, send_bw_start = {tv_sec = 
1306180584, tv_usec = 9856}, recv_bytes = 0, recv_bw_start = {
      tv_sec = 0, tv_usec = 0}, stats = {packet_sent = 199, sent = 15124, recv 
= 0, hw_recv = 122, packet_recv = 1, unavaillable = 399, outoftime = 0, 
cum_packet_loss = 0, bad = 0, discarded = 0}, 
    recv_errno = 0, send_errno = 0, snd_socket_size = 0, rcv_socket_size = 0, 
ssrc_changed_thres = 0}, rtcp = {socket = 14, sockfamily = 2, tr = 0x0, 
cached_mp = 0x7fffe8009320, rem_addr = {ss_family = 2, 
      __ss_align = 0, __ss_padding = '\000' <repeats 111 times>}, rem_addrlen = 
16, enabled = 1 '\001'}, mode = RTP_SESSION_SENDRECV, sched = 0x0, flags = 1, 
dscp = 0, multicast_ttl = 5, 
  multicast_loopback = 0, user_data = 0x0, last_recv_time = {tv_sec = 
1306180584, tv_usec = 149949}, pending = 0x0, current_tev = 0x0, sd = 0x9f7d60, 
contributing_sources = {_q_stopper = {
      b_prev = 0x88b6a0, b_next = 0x88b6a0, b_cont = 0x0, b_datap = 0x0, b_rptr 
= 0x0, b_wptr = 0x0, reserved1 = 0, reserved2 = 0}, q_mcount = 0}, 
symmetric_rtp = 1 '\001', permissive = 0 '\000', 
  use_connect = 0 '\000', ssrc_set = 1 '\001'}
(gdb) f 2
#2  0x00007ffff775a69c in rtp_session_update_payload_type (session=0x88af00, 
paytype=112) at rtpsession.c:608
608                     payload_type_changed(session,pt);
(gdb) f 3
#3  0x00007ffff77592ab in rtp_session_rtp_parse (session=0x88af00, 
mp=0x7fffe8005500, local_str_ts=127680, addr=0x7fffe7ffec60, addrlen=16) at 
rtpparse.c:200
200                     rtp_session_update_payload_type(session,rtp->paytype);
(gdb) p *mp
$4 = {b_prev = 0x0, b_next = 0x0, b_cont = 0x0, b_datap = 0x7fffe80089b0, 
b_rptr = 0x7fffe80089d0 "\200\360\001", 
  b_wptr = 0x7fffe8008a4a 
"099-192.168.40.72.dialog.cgatepro;lr>\r\nRecord-Route: 
<sip:192.168.40.72:5060;lr>\r\nRecord-Route: 
<sip:212.53.40.40:5060;lr>\r\nFrom: <sip:address@hidden>;tag=1187115752\r\nTo: 
<sip:address@hidden>;tag="..., reserved1 = 0, reserved2 = 0}
(gdb) p *addr
$5 = {sa_family = 2, sa_data = "H.\324\065(H\000\000\000\000\000\000\000"}


Tell me if you need anything else. You can get a free acc from sipnet.ru or I 
can provide you with one.

Thanks.


On Wednesday 18 May 2011, Simon Morlat wrote:
> HI,
> 
> Can you please show the full backtrace ?
> 
> 
> Simon
> 
> Le lundi 16 mai 2011 à 16:02 +0300, Yuri Arabadji a écrit :
> > Hi.
> >
> > Here you go:
> >
> > Program received signal SIGFPE, Arithmetic exception.
> > [Switching to Thread 0x7fffe7fff700 (LWP 21846)]
> > 0x00007ffff775ed7f in jitter_control_set_payload (ctl=0x8afe80,
> > pt=0xa0f900) at jitterctl.c:62
> >
> >
> > 59 void jitter_control_set_payload(JitterControl *ctl, PayloadType
> > *pt){
> >
> > 60 ctl->jitt_comp_ts =
> >
> > 61 (int) (((double) ctl->jitt_comp / 1000.0) * (pt->clock_rate));
> >
> > 62 ctl->corrective_step=(160 * 8000 )/pt->clock_rate; /* This formula
> > got to me after some beers */
> >
> > 63 ctl->adapt_jitt_comp_ts=ctl->jitt_comp_ts;
> >
> > 64 }
> >
> > (gdb) p pt->clock_rate
> >
> > $4 = 0
> >
> > Happening with speex/32000 and sipnet.ru.
> >

-- 
Best regards,
 Yuri Arabadji -- Systems Engineer



reply via email to

[Prev in Thread] Current Thread [Next in Thread]