我得到一個崩潰(即中止),如下所示,並想知道是否有任何我可以從提供的內存映射信息中獲得有用的信息?崩潰後內存映射中是否有任何有用的信息
___________
*** glibc detected *** free(): invalid pointer: 0x000000000070f0c0 ***
======= Backtrace: =========
/lib64/libc.so.6[0x7f4f2ee88cb8]
/lib64/libc.so.6(cfree+0x76)[0x7f4f2ee8b276]
/home/bbazso/usr/local/lib/rtmpserver/libvanrtmpstreamer.so(_ZN12VANSProtocol15SignalInputDataEPv+0x10d0)[0x7f4f2a29de60]
/opt/trx-HEAD/crtmpserver/20091229/lib/libthelib.so(_ZN11TCPProtocol15SignalInputDataEPv+0x1d)[0x7f4f2fba27dd]
/opt/trx-HEAD/crtmpserver/20091229/lib/libthelib.so(_ZN10TCPCarrier7OnEventER11epoll_event+0x1b1)[0x7f4f2fb86cc1]
/opt/trx-HEAD/crtmpserver/20091229/lib/libthelib.so(_ZN16IOHandlerManager5PulseEv+0x21c)[0x7f4f2fb8919c]
/home/bbazso/workspace/trx-live/trx-libs/VanRtmp/.libs/libvanrtmp.so.0(_ZN3van15cRtmpServerLoop19RtmpProtocolHandlerEv+0x55)[0x7f4f370b5365]
/home/bbazso/workspace/trx-live/trx-libs/VanRtmp/.libs/libvanrtmp.so.0(_Z19HandleTrafficThreadPv+0x9)[0x7f4f370b5429]
/opt/trx-HEAD/glib/2.18.0/lib/libglib-2.0.so.0[0x7f4f3125e344]
/lib64/libpthread.so.0[0x7f4f2f18a3ba]
/lib64/libc.so.6(clone+0x6d)[0x7f4f2eef6fcd]
======= Memory map: ========
00400000-0050e000 r-xp 00000000 08:01 8421382 /home/bbazso/workspace/trx-live/StreamingServer/.libs/lt-vanstreamingserver
0070d000-0070f000 rw-p 0010d000 08:01 8421382 /home/bbazso/workspace/trx-live/StreamingServer/.libs/lt-vanstreamingserver
0070f000-00713000 rw-p 0070f000 00:00 0
01e7f000-02520000 rw-p 01e7f000 00:00 0 [heap]
7f4f18000000-7f4f18026000 rw-p 7f4f18000000 00:00 0
7f4f18026000-7f4f1c000000 ---p 7f4f18026000 00:00 0
7f4f1d8a9000-7f4f1d8aa000 ---p 7f4f1d8a9000 00:00 0
7f4f1d8aa000-7f4f1e0aa000 rwxp 7f4f1d8aa000 00:00 0
7f4f1e0aa000-7f4f1e0ab000 ---p 7f4f1e0aa000 00:00 0
7f4f1e0ab000-7f4f1e8ab000 rwxp 7f4f1e0ab000 00:00 0
7f4f1e8ab000-7f4f1e8ac000 ---p 7f4f1e8ab000 00:00 0
7f4f1e8ac000-7f4f1f0ac000 rwxp 7f4f1e8ac000 00:00 0
7f4f1f0ac000-7f4f1f0ad000 ---p 7f4f1f0ac000 00:00 0
7f4f1f0ad000-7f4f1f8ad000 rwxp 7f4f1f0ad000 00:00 0
7f4f1f8ad000-7f4f1f8ae000 ---p 7f4f1f8ad000 00:00 0
7f4f1f8ae000-7f4f200ae000 rwxp 7f4f1f8ae000 00:00 0
7f4f200ae000-7f4f200b4000 r-xp 00000000 08:01 4121121 /home/bbazso/usr/local/lib/gstreamer-0.10/libgstvanaudio.so
7f4f200b4000-7f4f202b3000 ---p 00006000 08:01 4121121 /home/bbazso/usr/local/lib/gstreamer-0.10/libgstvanaudio.so
7f4f202b3000-7f4f202b4000 rw-p 00005000 08:01 4121121 /home/bbazso/usr/local/lib/gstreamer-0.10/libgstvanaudio.so
7f4f202b4000-7f4f202c3000 r-xp 00000000 08:01 7627054 /opt/trx-HEAD/gstreamer/gst-plugins-base/0.10.20/lib/gstreamer-0.10/libgstaudioconvert.so
7f4f202c3000-7f4f204c3000 ---p 0000f000 08:01 7627054 /opt/trx-HEAD/gstreamer/gst-plugins-base/0.10.20/lib/gstreamer-0.10/libgstaudioconvert.so
7f4f204c3000-7f4f204c4000 rw-p 0000f000 08:01 7627054 /opt/trx-HEAD/gstreamer/gst-plugins-base/0.10.20/lib/gstreamer-0.10/libgstaudioconvert.so
7f4f204c4000-7f4f204c8000 r-xp 00000000 08:01 7627057 /opt/trx-HEAD/gstreamer/gst-plugins-base/0.10.20/lib/gstreamer-0.10/libgstaudiorate.so
7f4f204c8000-7f4f206c8000 ---p 00004000 08:01 7627057 /opt/trx-HEAD/gstreamer/gst-plugins-base/0.10.20/lib/gstreamer-0.10/libgstaudiorate.so
7f4f206c8000-7f4f206c9000 rw-p 00004000 08:01 7627057 /opt/trx-HEAD/gstreamer/gst-plugins-base/0.10.20/lib/gstreamer-0.10/libgstaudiorate.so
7f4f206c9000-7f4f2077b000 r-xp 00000000 08:01 4121119 /home/bbazso/usr/local/lib/gstreamer-0.10/libgstvanaac.so
7f4f2077b000-7f4f2097b000 ---p 000b2000 08:01 4121119 /home/bbazso/usr/local/lib/gstreamer-0.10/libgstvanaac.so
7f4f2097b000-7f4f20980000 rw-p 000b2000 08:01 4121119 /home/bbazso/usr/local/lib/gstreamer-0.10/libgstvanaac.so
7f4f20980000-7f4f2098a000 rw-p 7f4f20980000 00:00 0
7f4f2098a000-7f4f209c3000 r-xp 00000000 08:01 7250237 /opt/intel/ipp/5.3.3.075/em64t/sharedlib/libippdcy8.so.5.3
7f4f209c3000-7f4f20ac2000 ---p 00039000 08:01 7250237 /opt/intel/ipp/5.3.3.075/em64t/sharedlib/libippd[INFO] VanStreamingServer - Caught signal: 6
[INFO] VanStreamingServer - Aborting
Aborted (core dumped)
通常情況下,你只應該以釋放內存堆中吧?所以這是一個問題!試圖找出爲什麼我會非法地在堆上釋放東西的任何好建議? – bbazso 2010-02-15 18:59:38
可能是由於多種原因 - 邏輯錯誤(例如,將堆類實例的地址並將其提供給shared_ptr),緩衝區溢出等。如果它是您的代碼 - 您有堆棧跟蹤 - 不應該是發現錯誤的問題。如果沒有 - 錯誤的供應商。無論如何,在** valgrind **下運行這個東西可能有助於縮小範圍。 – 2010-02-15 19:27:35