memory corruption in conf bridge?

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

 



Hi,

Agree, threre may be memory corruption. Since it involves
external/custom code, it seems even harder for others to reproduce &
debug :)  Just a common hint, please try to put more and more
checks/assertions to help locating bug. And if it's possible, please
use the latest revision instead.

Regards,
nanang


On Wed, Sep 24, 2008 at 7:50 PM, Anshuman S. Rawat <arawat at 3clogic.com> wrote:
>
> Hi,
>
> I see a crash in pjsip which isn't easy to reproduce. I ran an instance with
> windbg attached and got this trace.
>
>
> 04abfee8 10080e0e sipPhone!sink_put_frame(struct pjmedia_port * this_port =
> <Memory access error>, struct pjmedia_frame * frame = <Memory access
> error>)+0x6b
> [d:\pjsip7_latest\src\pjsip\pjmedia\src\pjmedia\mediaprocessor_port.c @ 847]
> 04abff20 100810a4 sipPhone!write_port(struct pjmedia_conf * conf =
> 0x034eb06c, struct conf_port * cport = 0x0491e00c, union pj_timestamp *
> timestamp = <Memory access error>, pjmedia_frame_type * frm_type = <Memory
> access error>)+0x31e
> [d:\pjsip7_latest\src\pjsip\pjmedia\src\pjmedia\conference.c @ 1433]
> 04abff54 10087989 sipPhone!get_frame(struct pjmedia_port * this_port =
> 0x00000012, struct pjmedia_frame * frame = 0x047e85ec)+0x264
> [d:\pjsip7_latest\src\pjsip\pjmedia\src\pjmedia\conference.c @ 1807]
> 04abff88 1008b72e sipPhone!clock_callback(union pj_timestamp * ts =
> 0x1001493b, void * user_data = 0x04818528)+0xb9
> [d:\pjsip7_latest\src\pjsip\pjmedia\src\pjmedia\master_port.c @ 173]
> 04abffa8 1001493b sipPhone!clock_thread(void * arg = 0x04818528)+0xde
> [d:\pjsip7_latest\src\pjsip\pjmedia\src\pjmedia\clock_thread.c @ 252]
> 04abffb4 7c80b6a3 sipPhone!thread_main(void * param = 0x00000000)+0x4b
> [d:\pjsip7_latest\src\pjsip\pjlib\src\pj\os_core_win32.c @ 373]
> 04abffec 00000000 kernel32!BaseThreadStart+0x37
>
> sink_put_frame() is my custom function where I perform answering machine
> detection.
>
> Watch for cport (argument in write_port) gave this-
>
> dt cport
> Local var @ 0 Type conf_port*
>   +0x000 name             : pj_str_t
>   +0x008 port             : ????
>   +0x00c rx_setting       : ??
>   +0x010 tx_setting       : ??
>   +0x014 listener_cnt     : ??
>   +0x018 listener_slots   : ????
>   +0x01c transmitter_cnt  : ??
>   +0x020 vad              : ????
>   +0x024 clock_rate       : ??
>   +0x028 samples_per_frame : ??
>   +0x02c tx_level         : ??
>   +0x030 rx_level         : ??
>   +0x034 tx_adj_level     : ??
>   +0x038 rx_adj_level     : ??
>   +0x03c rx_resample      : ????
>   +0x040 tx_resample      : ????
>   +0x044 rx_buf           : ????
>   +0x048 rx_buf_cap       : ??
>   +0x04c rx_buf_count     : ??
>   +0x050 mix_adj          : ??
>   +0x054 last_mix_adj     : ??
>   +0x058 mix_buf          : ????
>   +0x05c tx_buf           : ????
>   +0x060 tx_buf_cap       : ??
>   +0x064 tx_buf_count     : ??
>   +0x068 tx_heart_beat    : ??
>   +0x06c delay_buf        : ????
> Memory read error 0491e078
>
> Dump for this memory location gave nothing.
>
> Dump for variable this_port (argument for get_frame) returned:
>
> dt this_port
> Local var @ 0x4855040 Type pjmedia_port*
> 0x00000012
>   +0x000 info             : pjmedia_port_info
>   +0x038 port_data        : port_data
>   +0x040 put_frame        : ????
>   +0x044 get_frame        : ????
>   +0x048 on_destroy       : ????
> Memory read error 0000005a
>
> It seems like memory corruption to me but can't figure out why and where.
> Any pointers on this? Please let me know if you need more information.
>
> Btw, I am at rev 1846.
>
> Thanks,
> Anshuman
>
>
> _______________________________________________
> Visit our blog: http://blog.pjsip.org
>
> pjsip mailing list
> pjsip at lists.pjsip.org
> http://lists.pjsip.org/mailman/listinfo/pjsip_lists.pjsip.org



[Index of Archives]     [Asterisk Users]     [Asterisk App Development]     [Linux ARM Kernel]     [Linux ARM]     [Linux Omap]     [Fedora ARM]     [IETF Annouce]     [Security]     [Bugtraq]     [Linux]     [Linux OMAP]     [Linux MIPS]     [Linux API]
  Powered by Linux