[mythtv-users] MythMusic problems

Jeremy Green jag at brownout.com
Thu May 15 01:26:35 EDT 2003


So, even when it is behaving normally and playing fine it is using 82 
megs of ram.  It seems like there must be a memory leak somewhere that 
is making it hog up all the memory until it starts thrashing and dies.

It never happens in the middle of a song.  Only when starting a new 
song.

Here's the whole backtrace:

GNU gdb 5.3-debian
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 "i386-linux"...
(gdb) run
Starting program: /home/jag/mythtv/mythmusic/mythmusic/mythmusic
[New Thread 16384 (LWP 833)]
[New Thread 32769 (LWP 836)]
[New Thread 16386 (LWP 837)]
[New Thread 32771 (LWP 838)]
[New Thread 49156 (LWP 839)]
[New Thread 65541 (LWP 840)]
[New Thread 81926 (LWP 841)]
[New Thread 98311 (LWP 842)]
[New Thread 114696 (LWP 843)]
[New Thread 131081 (LWP 844)]
[New Thread 147466 (LWP 845)]
[New Thread 163851 (LWP 851)]

Program received signal SIGINT, Interrupt.
[Switching to Thread 163851 (LWP 851)]
0x40a8aad2 in sigsuspend () from /lib/libc.so.6
(gdb) thread apply all bt full

Thread 12 (Thread 163851 (LWP 851)):
#0  0x40a8aad2 in sigsuspend () from /lib/libc.so.6
No symbol table info available.
#1  0x40948f35 in __pthread_wait_for_restart_signal ()
    from /lib/libpthread.so.0
No symbol table info available.
#2  0x40945f05 in pthread_cond_wait () from /lib/libpthread.so.0
No symbol table info available.
#3  0x40701b61 in QWaitCondition::wait(QMutex*, unsigned long) ()
    from /usr/lib/libqt-mt.so.3
No symbol table info available.
#4  0x08074a2c in MadDecoder::flush(bool) (this=0x82bf9c8, final=false)
     at maddecoder.cpp:293
         min = 2048
#5  0x0807536b in MadDecoder::madOutput() (this=0x82bf9c8)
     at maddecoder.cpp:500
         sample = 110
         samples = 382
         channels = 2
         left = (const mad_fixed_t *) 0x82c3bdc
         right = (const mad_fixed_t *) 0x82c4ddc
#6  0x0807507d in MadDecoder::run() (this=0x82bf9c8) at 
maddecoder.cpp:409
---Type <return> to continue, or q <return> to quit---
No locals.
#7  0x40499e3e in QProc::~QProc() () from /usr/lib/libqt-mt.so.3
No symbol table info available.
#8  0x40946d53 in pthread_start_thread () from /lib/libpthread.so.0
No symbol table info available.
#9  0x40946d99 in pthread_start_thread_event () from 
/lib/libpthread.so.0
No symbol table info available.

Thread 10 (Thread 131081 (LWP 844)):
#0  0x40b1ba04 in write () from /lib/libc.so.6
No symbol table info available.
#1  0x4094fb50 in __JCR_LIST__ () from /lib/libpthread.so.0
No symbol table info available.
#2  0x0805f05f in AudioOutput::run() (this=0x81be600) at 
audiooutput.cpp:345
         afd = {fds_bits = {32768, 0 <repeats 31 times>}}
         tv = {tv_sec = 5, tv_usec = 0}
         b = (Buffer *) 0x818dac0
         done = false
         n = 4294911965
         m = 4294967295
         l = 2048
#3  0x40499e3e in QProc::~QProc() () from /usr/lib/libqt-mt.so.3
No symbol table info available.
---Type <return> to continue, or q <return> to quit---
#4  0x40946d53 in pthread_start_thread () from /lib/libpthread.so.0
No symbol table info available.
#5  0x40946d99 in pthread_start_thread_event () from 
/lib/libpthread.so.0
No symbol table info available.

Thread 2 (Thread 32769 (LWP 836)):
#0  0x40b20248 in poll () from /lib/libc.so.6
No symbol table info available.
#1  0x40946a8e in __pthread_manager () from /lib/libpthread.so.0
No symbol table info available.
#2  0x40946c55 in __pthread_manager_event () from /lib/libpthread.so.0
No symbol table info available.

Thread 1 (Thread 16384 (LWP 833)):
#0  0x40b21a9e in select () from /lib/libc.so.6
No symbol table info available.
#1  0x4086c544 in typeinfo for QCommonStyle () from 
/usr/lib/libqt-mt.so.3
No symbol table info available.
#2  0x404b57c7 in QEventLoop::enterLoop() () from /usr/lib/libqt-mt.so.3
No symbol table info available.
#3  0x404a4454 in QApplication::enter_loop() () from 
/usr/lib/libqt-mt.so.3
No symbol table info available.
#4  0x40633dae in QDialog::exec() () from /usr/lib/libqt-mt.so.3
---Type <return> to continue, or q <return> to quit---
No symbol table info available.
#5  0x08077ace in startPlayback(PlaylistsContainer*, AllMusic*) (
     all_playlists=0x8169750, all_music=0x8169780) at main.cpp:238
         pbb = (class PlaybackBox *) 0x81c1318
#6  0x08077d16 in MusicCallback(void*, QString&) (data=0xbffff930,
     selection=@0x816a5e0) at main.cpp:285
         mdata = (MusicData *) 0xbffff930
         sel = {static null = {
     static null = <same as static member of an already seen type>,
     d = 0x8140278, static shared_null = 0x8140278}, d = 0x81bc8a8,
   static shared_null = 0x8140278}
#7  0x4022c5e2 in ThemedMenu::handleAction(QString&) ()
    from /usr/local/lib/libmyth-0.9.so.0
No symbol table info available.
#8  0x4022bbc4 in ThemedMenu::keyPressEvent(QKeyEvent*) ()
    from /usr/local/lib/libmyth-0.9.so.0
No symbol table info available.
#9  0x4052562b in QWidget::event(QEvent*) () from /usr/lib/libqt-mt.so.3
No symbol table info available.
#10 0x404a4206 in QApplication::internalNotify(QObject*, QEvent*) ()
    from /usr/lib/libqt-mt.so.3
No symbol table info available.
#11 0x404a3def in QApplication::notify(QObject*, QEvent*) ()
---Type <return> to continue, or q <return> to quit---
    from /usr/lib/libqt-mt.so.3
No symbol table info available.
#12 0x404542af in QETWidget::translateKeyEvent(_XEvent const*, bool) ()
    from /usr/lib/libqt-mt.so.3
No symbol table info available.
#13 0x4045095a in QApplication::x11ProcessEvent(_XEvent*) ()
    from /usr/lib/libqt-mt.so.3
No symbol table info available.
#14 0x404636cd in QEventLoop::processEvents(unsigned) ()
    from /usr/lib/libqt-mt.so.3
No symbol table info available.
#15 0x404b57c7 in QEventLoop::enterLoop() () from /usr/lib/libqt-mt.so.3
No symbol table info available.
#16 0x404a4454 in QApplication::enter_loop() () from 
/usr/lib/libqt-mt.so.3
No symbol table info available.
#17 0x40633dae in QDialog::exec() () from /usr/lib/libqt-mt.so.3
No symbol table info available.
#18 0x08078144 in runMenu(QString, QSqlDatabase*, QString, QString, 
PlaylistsContainer*, AllMusic*) (themedir=
       {static null = {static null = <same as static member of an 
already seen type>, d = 0x8140278, static shared_null = 0x8140278}, d = 
0x8169d10, static shared_null = 0x8140278}, db=0x8163208, paths=
       {static null = {static null = <same as static member of an 
already seen ty---Type <return> to continue, or q <return> to quit---
pe>, d = 0x8140278, static shared_null = 0x8140278}, d = 0x8169ae8, 
static shared_null = 0x8140278}, startdir=
       {static null = {static null = <same as static member of an 
already seen type>, d = 0x8140278, static shared_null = 0x8140278}, d = 
0x81691b0, static shared_null = 0x8140278}, all_playlists=0x8169750, 
all_music=0x8169780)
     at main.cpp:338
         diag = (struct ThemedMenu *) 0x816a4a8
         data = {paths = {static null = {
       static null = <same as static member of an already seen type>,
       d = 0x8140278, static shared_null = 0x8140278}, d = 0x8169ae8,
     static shared_null = 0x8140278}, db = 0x8163208, startdir = {
     static null = {
       static null = <same as static member of an already seen type>,
       d = 0x8140278, static shared_null = 0x8140278}, d = 0x81691b0,
     static shared_null = 0x8140278}, all_playlists = 0x8169750,
   all_music = 0x8169780}
#19 0x08078dfc in main (argc=1, argv=0xbffffb64) at main.cpp:414
         a = <incomplete type>
         db = (struct QSqlDatabase *) 0x8163208
         lcd_host = {static null = {
     static null = <same as static member of an already seen type>,
     d = 0x8140278, static shared_null = 0x8140278}, d = 0x8168f38,
   static shared_null = 0x8140278}
---Type <return> to continue, or q <return> to quit---
         lcd_port = {static null = {
     static null = <same as static member of an already seen type>,
     d = 0x8140278, static shared_null = 0x8140278}, d = 0x8168fd8,
   static shared_null = 0x8140278}
         lcd_port_number = 0
         count_query = <incomplete type>
         musicdata_exists = true
         startdir = {static null = {
     static null = <same as static member of an already seen type>,
     d = 0x8140278, static shared_null = 0x8140278}, d = 0x81691b0,
   static shared_null = 0x8140278}
         paths = {static null = {
     static null = <same as static member of an already seen type>,
     d = 0x8140278, static shared_null = 0x8140278}, d = 0x8169ae8,
   static shared_null = 0x8140278}
         all_music = (AllMusic *) 0x8169780
         themename = {static null = {
     static null = <same as static member of an already seen type>,
     d = 0x8140278, static shared_null = 0x8140278}, d = 0x8169c58,
   static shared_null = 0x8140278}
         themedir = {static null = {
     static null = <same as static member of an already seen type>,
     d = 0x8140278, static shared_null = 0x8140278}, d = 0x8169d10,
---Type <return> to continue, or q <return> to quit---
   static shared_null = 0x8140278}
         all_playlists = (PlaylistsContainer *) 0x8169750
#0  0x40a8aad2 in sigsuspend () from /lib/libc.so.6


On Wednesday, May 14, 2003, at 11:35 PM, Isaac Richards wrote:

> On Wednesday 14 May 2003 11:27 pm, Jeremy Green wrote:
>> Ok,
>>
>> You'll have to excuse me, it's been a while since I've used a 
>> debugger.
>> I ran mythmusic with the debugger, it got stuck at the beginning of 
>> the
>> second song.  The elapsed time never changes from zero.  The interface
>> is working although to terrible quick.  When I look in top it shows
>> that mythmusic is using a lot of resources:
>>
>>    775 mythtv    15   0  343m 143m 1416 R 19.2 83.7   0:52.69 
>> mythmusic
>>
>> 343 megs of swap?
>
> Yeah, that's not quite normal =)
>
>> The backtrace gave me this:
>
> Could you get the rest of the threads?  Instructions are:
> http://www.mythtv.org/docs/mythtv-HOWTO-18.html#ss18.9
>
> Isaac
> _______________________________________________
> mythtv-users mailing list
> mythtv-users at snowman.net
> http://lists.snowman.net/cgi-bin/mailman/listinfo/mythtv-users



More information about the mythtv-users mailing list