[mythtv] segfault...appears to be libddmpeg.so related.GDBoutput: (fwd)

martin north martin at chipsandpeas.com
Mon Jan 5 11:48:00 EST 2004


 

 

> Hi,   
> 
> martin north wrote:
>> Kenneth Aafløy writes: 
>> > martin north wrote:
>> > > i'm attempting to run mythtv on a MPIA-M6000 running gentoo, 
>> > > making use of the CLE266 and a DVB card (running epia-kernel,
>> > > and xfree-epia and the DVB drivers from cvs).
>> > > [snip]
>> > > #0  0x402e2a3d in VIA_MPEGSliceReceiveData () from 
>> > > [snip]
>> > 
>> > There are some pre-.13 fixes in cvs for via decoding of 
>> > choppy streams. Does it fix it for you?    
>> 
>> I'm already running 0.13 (mythtv-0.13-r1.ebuild to be exact). 
>> Or are you suggesting i take a copy of the current CVS and give
>> that a go???    
>> 
> 
> Dunno what the difference between .13 and .13-r1 is, but I assume
> it's the patch/fix released a day or so after .13?   
> 
> Grab the cvs version, and test that, it's working very well here.   
> 
> Kenneth
 

I have tried the latest CVS and it is more stable than the 0.13-r1 release 
for DVB/CLE266. The performance of the DVB/CLE266 combination is still quite 
poor...quite stilted, frequent picture break ups and corruption etc. 

(i've tested the DVB without using the CLE266, and performance is still 
quite stilted with some corruption. But the corruption is less than the 
CLE266 - I guess DVB support is still quite raw, and the CPU deals with a 
rather bad stream better than the CLE266 does). 

Anyway, I've also noticed that a segfault occurs when using the CLE266 when 
changing channels. This doesn't happen using the CPU. Here is the gdb trace 
of the segfault after a channel change. 

 

bash-2.05b# gdb mythfrontend
GNU gdb 5.3
Copyright 2002 Free Software Foundation, Inc.
GDB is free software, covered by the GNU General Public License, and you are
welcome to change it and/or distribute copies of it under certain 
conditions.
Type "show copying" to see the conditions.
There is absolutely no warranty for GDB.  Type "show warranty" for details.
This GDB was configured as "i586-pc-linux-gnu"...
(gdb) run
Starting program: /usr/local/bin/mythfrontend
[New Thread 16384 (LWP 8787)]
Xlib:  extension "GLX" missing on display ":0.0".
Xlib:  extension "GLX" missing on display ":0.0".
2004-01-04 17:39:32 mythfrontend version: 0.14.20040102-1 www.mythtv.org
2004-01-04 17:39:32 Enabled verbose msgs : important general
[New Thread 32769 (LWP 8790)]
[New Thread 16386 (LWP 8791)]
mythtv: could not open config file
mythtv: No such file or directory
Failed to init /root/.mythtv/lircrc for mythtv
[New Thread 32771 (LWP 8792)]
2004-01-04 17:39:43 Connecting to backend server: 127.0.0.1:6543 (try 1 of 
5)
[New Thread 49156 (LWP 8795)]
[New Thread 65541 (LWP 8796)]
Input #0, mpeg, from 'rbuf://127.0.0.1:6543/var/video/ringbuf4.nuv':
Stream #0.0: Video: mpegvideo_via, 720x576, 25.00 fps
Stream #0.1: Audio: mp2, 48000 Hz, stereo, 256 kb/s
2004-01-04 17:39:49 Opening OSS audio device '/dev/dsp'.
[New Thread 81926 (LWP 8797)]
Using VIA CLE266 Hardware Decoding
[New Thread 98311 (LWP 8798)]
2004-01-04 17:39:52 Changing from None to WatchingLiveTV
2004-01-04 17:39:52 prebuffering pause
2004-01-04 17:39:53 prebuffering pause
2004-01-04 17:39:55 prebuffering pause
2004-01-04 17:39:56 prebuffering pause
2004-01-04 17:39:57 prebuffering pause
2004-01-04 17:39:58 prebuffering pause
2004-01-04 17:39:59 prebuffering pause
2004-01-04 17:40:00 prebuffering pause
2004-01-04 17:40:00 prebuffering pause
2004-01-04 17:40:00 prebuffering pause
2004-01-04 17:40:01 prebuffering pause
2004-01-04 17:40:02 prebuffering pause
2004-01-04 17:40:02 prebuffering pause
2004-01-04 17:40:03 prebuffering pause
2004-01-04 17:40:04 prebuffering pause
2004-01-04 17:40:05 prebuffering pause
2004-01-04 17:40:06 prebuffering pause
[mpegvideo_via @ 0x81cd598]warning: first frame is no keyframe 

Program received signal SIGSEGV, Segmentation fault.
[Switching to Thread 98311 (LWP 8798)]
0x411fee9d in memset () from /lib/libc.so.6
(gdb) thread apply all bt full 

Thread 8 (Thread 98311 (LWP 8798)):
#0  0x411fee9d in memset () from /lib/libc.so.6
No symbol table info available.
#1  0x00000000 in ?? ()
No symbol table info available. 

Thread 7 (Thread 81926 (LWP 8797)):
#0  0x4122f166 in nanosleep () from /lib/libc.so.6
No symbol table info available.
#1  0x00000000 in ?? ()
No symbol table info available. 

Thread 6 (Thread 65541 (LWP 8796)):
#0  0x412546f1 in select () from /lib/libc.so.6
No symbol table info available.
#1  0x41051c68 in __JCR_LIST__ () from /usr/qt/3//lib/libqt-mt.so.3
No symbol table info available.
#2  0x406ec836 in RemoteFile::Read(void*, int) (this=0x81d2058,
data=0x41866808, size=256000) at remotefile.cpp:234
   recv = 0
   sent = 256000
   zerocnt = 1
 ---Type <return> to continue, or q <return> to quit---
   error = false
   response = false
   strlist = {<QValueList<QString>> = {sh = 0x44300520}, <No data fields>}
#3  0x40213b86 in RingBuffer::safe_read(RemoteFile*, void*, unsigned) (
this=0x81d0fa8, rf=0x81d2058, data=0x41866808, sz=256000)
at RingBuffer.cpp:484
   ret = 0
#4  0x40214615 in RingBuffer::ReadAheadThread() (this=0x81d0fa8)
at RingBuffer.cpp:702
   totfree = 256000
   ret = 256000
   used = 256001
#5  0x40214350 in RingBuffer::startReader(void*) (type=0x81d0fa8)
at RingBuffer.cpp:641
   rbuffer = (RingBuffer *) 0x81d0fa8
#6  0x41064b02 in pthread_start_thread () from /lib/libpthread.so.0
No symbol table info available.
#7  0x41064b7a in pthread_start_thread_event () from /lib/libpthread.so.0
No symbol table info available. 

Thread 5 (Thread 49156 (LWP 8795)):
#0  0x40548190 in synth_filter (s1=0x83ef220, ch=1, samples=0xbf3dff56,
incr=2, sb_samples=0x83f3c00) at mpegaudiodec.c:887
 ---Type <return> to continue, or q <return> to quit---
   tmp = 576425
   tmp = {98898, 77797, 40144, 12106, -18626, -54540, -75189, -82458,
 -94598, -114014, -142591, -190051, -246433, -287754, -311239, -334939,
 -369156, -404935, -426519, -429100, -417603, -392831, -357147, -324573,
 -303962, -289644, -278625, -268817, -245755, -200841, -143092, -76822}
   synth_buf = (MPA_INT *) 0x83f14f0
   w = (const MPA_INT *) 0x4063f308
   w2 = (const MPA_INT *) 0x4063f378
   p = (const MPA_INT *) 0x83f1538
   j = 2
   offset = 32
   v = 10
   samples2 = (int16_t *) 0xbf3dffc6
   sum = -3615781777
   sum2 = -22748386962
#1  0x4054ce19 in mp_decode_frame (s=0x83ef220, samples=0xbf3df9cc)
at mpegaudiodec.c:2409
   i = 11
   nb_frames = 36
   ch = 1
   samples_ptr = (short int *) 0xbf3dff4e
#2  0x4054d291 in decode_frame (avctx=0x81d25c8, data=0xbf3df9cc,
data_size=0xbf3df9c8,
 ---Type <return> to continue, or q <return> to quit---
buf=0x83d4ea0 "ÿüÄ\004\210ÆÌfUwUUUU333$\222I$\222I$", buf_size=0)
at mpegaudiodec.c:2568
   s = (MPADecodeContext *) 0x83ef220
   header = 4294755332
   buf_ptr = (uint8_t *) 0x83d51a0 ""
   len = 764
   out_size = 10
   out_samples = (short int *) 0xbf3df9cc
#3  0x404a83a9 in avcodec_decode_audio (avctx=0x81d25c8, samples=0xbf3df9cc,
frame_size_ptr=0xbf3df9c8,
buf=0x83d4ea0 "ÿüÄ\004\210ÆÌfUwUUUU333$\222I$\222I$", buf_size=768)
at utils.c:471
   ret = 199196840
#4  0x4029568f in AvFormatDecoder::GetFrame(int) (this=0x81d1d60, 
onlyvideo=0)
at avformatdecoder.cpp:1091
   temppts = 60734883
   curstream = (AVStream *) 0x81d25c0
   pkt = (AVPacket *) 0x8467968
   len = 768
   ret = 12373
   ptr = (
unsigned char *) 0x83d4ea0 "ÿüÄ\004\210ÆÌfUwUUUU333$\222I$\222I$"
   samples = {896, 1537, 206, 873, -480, 150, -1185, -609, -1779, -1309,
 ---Type <return> to continue, or q <return> to quit---
 -2191, -1917, -2482, -2469, -2615, -2919, -2502, -3198, -2280, -3373, -2141,
 -3568, -2049, -3811, -1899, -4056, -1719, -4259, -1532, -4367, -1254, -4318,
 -852, -4064, -368, -3610, 179, -3019, 779, -2342, 1380, -1567, 1936, -671,
2420, 296, 2747, 1214, 2802, 1947, 2571, 2437, 2170, 2725, 1710, 2841, 1226,
2769, 739, 2551, 330, 2297, 85, 2073, 19, 1891, 79, 1759, 187, 1660, 314,
1576, 540, 1546, 959, 1632, 1546, 1821, 2145, 2022, 2590, 2124, 2795, 2061,
2769, 1881, 2593, 1665, 2374, 1422, 2168, 1134, 1937, 823, 1620, 490, 1249,
120, 925, -237, 692, -514, 534, -718, 443, -889, 400, -1044, 350, -1185,
272, -1250, 220, -1140, 259, -848, 416, -474, 674, -93, 962, 274, 1217, 607,
1445, 912, 1663, 1220, 1825, 1508, 1887, 1708, 1850, 1777, 1701, 1730, 1433,
1626, 1134, 1521, 967, 1443, 1041, 1409, 1372, 1433, 1916, 1508, 2589, 1609,
3252, 1689, 3722, 1658, 3844, 1431, 3567, 1028, 2925, 521, 2007, -46, 989,
 -622, 91, -1137, -533, -1560, -847, -1872, -892, -2044, -762, -2122, -532,
 -2178, -217, -2167, 150, -2035, 471, -1862, 686, -1715, 785, -1535, 675,
 -1336, 225, -1249, -543, -1327, -1466, -1539, -2428, -1881, -3362, -2315,
 -4164, -2753...}
   data_size = 0
   pts = 60734810
   firstloop = true
   allowedquit = false
   storevideoframes = true
#5  0x4019795d in NuppelVideoPlayer::GetFrame(int, bool) (this=0x81be848,
onlyvideo=0, unsafe=false) at NuppelVideoPlayer.cpp:617
 ---Type <return> to continue, or q <return> to quit---
No locals.
#6  0x4019bbc6 in NuppelVideoPlayer::StartPlaying() (this=0x81be848)
at NuppelVideoPlayer.cpp:1847
   output_video = 98311
   pausecheck = 6
#7  0x40231cf8 in SpawnDecode(void*) (param=0x81be848) at tv_play.cpp:140
   nvp = (NuppelVideoPlayer *) 0x81be848
#8  0x41064b02 in pthread_start_thread () from /lib/libpthread.so.0
No symbol table info available.
#9  0x41064b7a in pthread_start_thread_event () from /lib/libpthread.so.0
No symbol table info available.
Current language:  auto; currently c 

Thread 4 (Thread 32771 (LWP 8792)):
#0  0x4122f166 in nanosleep () from /lib/libc.so.6
No symbol table info available.
#1  0x00000001 in ?? ()
No symbol table info available.
#2  0x40236ca5 in TV::RunTV() (this=0x81cc708) at tv_play.cpp:853
   keypressed = (QKeyEvent *) 0x81d1818
   updatecheck = 2
#3  0x40236a4e in TV::EventThread(void*) (param=0x81cc708) at 
tv_play.cpp:821
   thetv = (class TV *) 0x81cc708
#4  0x41064b02 in pthread_start_thread () from /lib/libpthread.so.0
 ---Type <return> to continue, or q <return> to quit---
No symbol table info available.
#5  0x41064b7a in pthread_start_thread_event () from /lib/libpthread.so.0
No symbol table info available. 

Thread 2 (Thread 32769 (LWP 8790)):
#0  0x41252f9b in poll () from /lib/libc.so.6
No symbol table info available.
#1  0x41064844 in __pthread_manager () from /lib/libpthread.so.0
No symbol table info available.
#2  0x41064a12 in __pthread_manager_event () from /lib/libpthread.so.0
No symbol table info available. 

Thread 1 (Thread 16384 (LWP 8787)):
#0  0x4122f166 in nanosleep () from /lib/libc.so.6
No symbol table info available.
#1  0xffffffa0 in ?? ()
No symbol table info available.
#2  0x08066956 in startTV() () at main.cpp:202
   db = (struct QSqlDatabase *) 0x81aa1a0
   tv = (class TV *) 0x81cc708
   timer = {ds = 63583366}
   tryTV = false
   tryRecorder = false
 ---Type <return> to continue, or q <return> to quit---
   quitAll = false
   showDialogs = true
#3  0x08067b0d in TVMenuCallback(void*, QString&) (data=0x8196638,
selection=@0x81c3ee4) at main.cpp:305
   sel = {static null = {
static null = <same as static member of an already seen type>,
d = 0x8180c30, static shared_null = 0x8180c30}, d = 0x81cf328,
static shared_null = 0x8180c30}
#4  0x4070d7ac in ThemedMenu::handleAction(QString&) (this=0x81c3d38,
action=@0x81d0014) at themedmenu.cpp:1883
No locals.
#5  0x4070bf1b in ThemedMenu::keyPressEvent(QKeyEvent*) (this=0x81c3d38,
e=0xbffff4c0) at themedmenu.cpp:1713
   action = {static null = {
static null = <same as static member of an already seen type>,
d = 0x8180c30, static shared_null = 0x8180c30}, d = 0x81b8a50,
static shared_null = 0x8180c30}
   i = 0
   lastbutton = (ThemedButton *) 0x81cffd8
   oldrow = 0
   handled = true
   actions = {<QValueList<QString>> = {sh = 0x81c4260}, <No data fields>}
#6  0x40c7daf6 in QWidget::event(QEvent*) () from 
/usr/qt/3//lib/libqt-mt.so.3
 ---Type <return> to continue, or q <return> to quit---
No symbol table info available.
#7  0x40bf6ce3 in QApplication::internalNotify(QObject*, QEvent*) ()
from /usr/qt/3//lib/libqt-mt.so.3
No symbol table info available.
#8  0x40bf65d0 in QApplication::notify(QObject*, QEvent*) ()
from /usr/qt/3//lib/libqt-mt.so.3
No symbol table info available.
#9  0x40762ee4 in MythMainWindow::keyPressEvent(QKeyEvent*) (this=0x81bb710,
e=0xbffff4c0) at mythdialogs.cpp:450
   current = (struct QWidget *) 0x81c3d38
#10 0x40c7daf6 in QWidget::event(QEvent*) () from 
/usr/qt/3//lib/libqt-mt.so.3
No symbol table info available.
#11 0x40bf6ce3 in QApplication::internalNotify(QObject*, QEvent*) ()
from /usr/qt/3//lib/libqt-mt.so.3
No symbol table info available.
#12 0x40bf65d0 in QApplication::notify(QObject*, QEvent*) ()
from /usr/qt/3//lib/libqt-mt.so.3
No symbol table info available.
#13 0x40b967d7 in QETWidget::translateKeyEvent(_XEvent const*, bool) ()
from /usr/qt/3//lib/libqt-mt.so.3
No symbol table info available.
#14 0x40b9270b in QApplication::x11ProcessEvent(_XEvent*) ()
from /usr/qt/3//lib/libqt-mt.so.3
 ---Type <return> to continue, or q <return> to quit---
No symbol table info available.
#15 0x40ba7bc8 in QEventLoop::processEvents(unsigned) ()
from /usr/qt/3//lib/libqt-mt.so.3
No symbol table info available.
#16 0x40c0891f in QEventLoop::enterLoop() () from 
/usr/qt/3//lib/libqt-mt.so.3
No symbol table info available.
#17 0x40bf6f80 in QApplication::enter_loop() ()
from /usr/qt/3//lib/libqt-mt.so.3
No symbol table info available.
#18 0x40763f8f in MythDialog::exec() (this=0x81c3d38) at mythdialogs.cpp:650
   res = 1081491220
#19 0x08068bc4 in RunMenu(QString) (themedir=
 {static null = {static null = <same as static member of an already seen 
type>, d = 0x8180c30, static shared_null =
0x8180c30}, d = 0x81c8cc8, static shared_null = 0x8180c30}) at main.cpp:433
   exitstatus = 0
#20 0x0806c712 in main (argc=1, argv=0xbffffba4) at main.cpp:789
   lcd_host = {static null = {
static null = <same as static member of an already seen type>,
d = 0x8180c30, static shared_null = 0x8180c30}, d = 0x81c3368,
static shared_null = 0x8180c30}
   lcd_port = 13666
   a = <incomplete type>
 ---Type <return> to continue, or q <return> to quit---
   translator = <incomplete type>
   logfile = {static null = {
static null = <same as static member of an already seen type>,
d = 0x8180c30, static shared_null = 0x8180c30}, d = 0x81965d8,
static shared_null = 0x8180c30}
   verboseString = {static null = {
static null = <same as static member of an already seen type>,
d = 0x8180c30, static shared_null = 0x8180c30}, d = 0x81965f0,
static shared_null = 0x8180c30}
   pluginname = {static null = {
static null = <same as static member of an already seen type>,
d = 0x8180c30, static shared_null = 0x8180c30}, d = 0x8196608,
static shared_null = 0x8180c30}
   binname = {static null = {
static null = <same as static member of an already seen type>,
d = 0x8180c30, static shared_null = 0x8180c30}, d = 0x8196620,
static shared_null = 0x8180c30}
   logfd = -1
   db = (struct QSqlDatabase *) 0x81aa1a0
   themename = {static null = {
static null = <same as static member of an already seen type>,
d = 0x8180c30, static shared_null = 0x8180c30}, d = 0x81c8e18,
static shared_null = 0x8180c30}
 ---Type <return> to continue, or q <return> to quit---
   randomtheme = false
   themedir = {static null = {
static null = <same as static member of an already seen type>,
d = 0x8180c30, static shared_null = 0x8180c30}, d = 0x81c8cc8,
static shared_null = 0x8180c30}
   mainWindow = (class MythMainWindow *) 0x81bb710
   exitstatus = 135808656
#21 0x4119b8d1 in __libc_start_main () from /lib/libc.so.6
No symbol table info available.
#0  0x411fee9d in memset () from /lib/libc.so.6
(gdb) exit
Undefined command: "exit".  Try "help".
(gdb) quit 



More information about the mythtv-dev mailing list