[mythtv] mythfrontend freeze with backtrace

Chris D cd4bp at comcast.net
Tue Dec 30 19:51:57 EST 2003


This is my first post to not only this news group, but any news group.
I am for the most part a happy mythtv user - thanks to Mr. Richards and
the rest of the developers that have contributed.
 
I am writing to request help in narrowing the source of a problem.
I believe the problem I am experiencing is the same as was reported in
this thread (Waited 2 Seconds... Still... Anymore ideas?):
 
http://www.gossamer-threads.com/perl/mailarc/gforum.cgi?post=97753;search_string=freeze;guest=1905806&t=search_engine#97753
 
My system has mythfrontend and mythbackend running on the same machine.
I am using a CVS version from 12/24/03, but this problem occurs in 0.12
as well. My V4L live-tv profile is set for 640x480 MPEG4 at 4592Mbps.
While watching live-tv, the CPU utilization is near 50%.
 
To obtain the information below, the frontend and backend were compiled
for debug and run in shells with all tracing enabled. After starting
live-tv, I attached gdb to both the frontend and backend processes. When
mythfrontend froze (i.e. no sound and video image is frozen on the
screen) I sent the interrupt signal through gdb to the frontend and
dumped a backtrace on all threads. I think mythbackend crashed when I
did this - had I not been using gdb, mythbackend would not have crashed.
 
I am looking for feedback as to what code in the frontend and backend is
exchanging data over the socket that seem to be having trouble. I am
also very interested in your interpretation of the information below. I
will appriciate any feedback you can provide. If other information would
be helpful I will do my best to provide it.
 
Thanks in advance for you help. I look forward to helping crush what
seems to me to be the most troublesome bug in mythtv.
 
Chris
 
=======================================================================
------------------------ mythfrontned stdout --------------------
2003-12-28 16:38:11 Error writing stringlist
ASSERT: "i <= nodes" in ../../../../../../../include/qt3/qvaluelist.h
(372)
2003-12-28 16:38:11 RemoteFile::Read() failed in
RingBuffer::safe_read().
2003-12-28 16:38:11 71      QUERY_RECORDER
3[]:[]SEEK_RINGBUF[]:[]0[]:[]185...
QSocketDevice::writeBlock: Invalid socket
2003-12-28 16:38:11 Error writing stringlist
ASSERT: "i <= nodes" in ../../../../../../../include/qt3/qvaluelist.h
(372)
2003-12-28 16:38:11 RemoteFile::Read() failed in
RingBuffer::safe_read().
2003-12-28 16:38:11 71      QUERY_RECORDER
3[]:[]SEEK_RINGBUF[]:[]0[]:[]185...
QSocketDevice::writeBlock: Invalid socket
2003-12-28 16:38:11 Error writing stringlist
ASSERT: "i <= nodes" in ../../../../../../../include/qt3/qvaluelist.h
(372)
------------------------------------------------------------------
 
------------------------ mythfrontend gdb backtrace ---------------
Program received signal SIGINT, Interrupt.
[Switching to Thread 16384 (LWP 13519)]
0x40c2bac6 in nanosleep () from /lib/libc.so.6
(gdb) thread apply all bt
  
Thread 7 (Thread 81926 (LWP 13532)):
#0  0x40a5b426 in nanosleep () from /lib/libpthread.so.0
#1  0x00000001 in ?? ()
#2  0xbefff7fc in ?? ()
  
Thread 6 (Thread 65541 (LWP 13531)):
#0  0x40a5aa0b in write () from /lib/libpthread.so.0
#1  0x401a1fb8 in __JCR_LIST__ () from /usr/local/lib/libmyth-0.13.so.0
  
Thread 5 (Thread 49156 (LWP 13530)):
#0  0x40c461c7 in sched_yield () from /lib/libc.so.6
#1  0x0817ba27 in RingBuffer::ReadAheadThread() (this=0x85a7920)
    at RingBuffer.cpp:777
#2  0x0817b103 in RingBuffer::startReader(void*) (type=0x85a7920)
    at RingBuffer.cpp:639
#3  0x40a54e31 in pthread_start_thread () from /lib/libpthread.so.0
#4  0x40c5b30a in clone () from /lib/libc.so.6
  
Thread 4 (Thread 32771 (LWP 13529)):
#0  0x40a5b426 in nanosleep () from /lib/libpthread.so.0
#1  0x00000001 in ?? ()
#2  0xbf5ff65c in ?? ()
  
Thread 3 (Thread 16386 (LWP 13523)):
#0  0x40c2bac6 in nanosleep () from /lib/libc.so.6
#1  0x00000001 in ?? ()
#2  0xbf7ffa24 in ?? ()
  
Thread 2 (Thread 32769 (LWP 13522)):
#0  0x40c5261a in poll () from /lib/libc.so.6
#1  0x40a54b30 in __pthread_manager () from /lib/libpthread.so.0
#2  0x40c5b30a in clone () from /lib/libc.so.6
  
Thread 1 (Thread 16384 (LWP 13519)):
#0  0x40c2bac6 in nanosleep () from /lib/libc.so.6
#1  0xfffffff4 in ?? ()
#2  0x40c5537a in usleep () from /lib/libc.so.6
#3  0x0806b3c2 in startTV() () at main.cpp:202
#4  0x0806c51b in TVMenuCallback(void*, QString&) (data=0x8562948,
    selection=@0x85a21fc) at main.cpp:305
#5  0x400e8e6a in ThemedMenu::handleAction(QString&) (this=0x85a2050,
    action=@0x8593e74) at themedmenu.cpp:1880
#6  0x400e767f in ThemedMenu::keyPressEvent(QKeyEvent*) (this=0x85a2050,
    e=0xbffff350) at themedmenu.cpp:1710
#7  0x4055f975 in QWidget::event(QEvent*) () from /usr/lib/libqt-mt.so.3
#8  0x404ceeaf in QApplication::internalNotify(QObject*, QEvent*) ()
   from /usr/lib/libqt-mt.so.3
#9  0x404ce9ae in QApplication::notify(QObject*, QEvent*) ()
   from /usr/lib/libqt-mt.so.3
#10 0x4046961d in QETWidget::translateKeyEvent(_XEvent const*, bool) ()
   from /usr/lib/libqt-mt.so.3
#11 0x404658c5 in QApplication::x11ProcessEvent(_XEvent*) ()
   from /usr/lib/libqt-mt.so.3
#12 0x4047b951 in QEventLoop::processEvents(unsigned) ()
   from /usr/lib/libqt-mt.so.3
#13 0x404e2698 in QEventLoop::enterLoop() () from /usr/lib/libqt-mt.so.3
#14 0x404cf161 in QApplication::enter_loop() () from
/usr/lib/libqt-mt.so.3
#15 0x4013b4a7 in MythDialog::exec() (this=0x85a2050) at
mythdialogs.cpp:642
#16 0x0806d4e0 in RunMenu(QString) (themedir=
      {static null = {static null = <same as static member of an already
seen type>, d = 0x851c018, static shared_null = 0x851c018}, d =
0x857ff00, static shared_null = 0x851c018}) at main.cpp:433
#17 0x08070e69 in main (argc=3, argv=0xbffff9e4) at main.cpp:789
---------------------------------------------------------------
 
-------------------------- mythbackend stdout --------------------
Starting up as the master server.
2003-12-28 16:31:45 Probed: /dev/video - Television
2003-12-28 16:31:45 Probed: /dev/video - Composite1
2003-12-28 16:31:45 Probed: /dev/video - S-Video
2003-12-28 16:31:45 Probed: /dev/video - Composite3
2003-12-28 16:31:46 Probed: /dev/video - Television
2003-12-28 16:31:46 Probed: /dev/video - Composite1
2003-12-28 16:31:46 Probed: /dev/video - S-Video
2003-12-28 16:31:46 Probed: /dev/video - Composite3
2003-12-28 16:31:46 mythbackend version: 0.13.12252003-1 www.mythtv.org
2003-12-28 16:31:46 Enabled verbose msgs :all
--- print list start ---
... < removed > ...
---  print list end  ---
2003-12-28 16:31:48 Found changes in the todo list.
2003-12-28 16:32:02 MainServer::HandleAnnounce Playback
2003-12-28 16:32:02 adding: host as a client (events: 0)
2003-12-28 16:32:02 2       OK
2003-12-28 16:32:02 24      3[]:[]127.0.0.1[]:[]6543
2003-12-28 16:32:02 MainServer::HandleAnnounce Playback
2003-12-28 16:32:02 adding: host as a client (events: 0)
2003-12-28 16:32:02 2       OK
2003-12-28 16:32:02 MainServer::HandleAnnounce Playback
2003-12-28 16:32:02 adding: host as a client (events: 1)
2003-12-28 16:32:02 2       OK
2003-12-28 16:32:02 85     
rbuf://127.0.0.1:6543/mnt/store//ringbuf3.nuv[]...
2003-12-28 16:32:02 MainServer::HandleAnnounce Playback
2003-12-28 16:32:02 adding: host as a client (events: 0)
2003-12-28 16:32:02 2       OK
2003-12-28 16:32:02 adding: host as a remote ringbuffer
2003-12-28 16:32:02 2       OK
2003-12-28 16:32:02 Changing from None to WatchingLiveTV
2003-12-28 16:32:02 Using profile 'Live TV' to record
2003-12-28 16:32:02 2       ok
cannot open vbi device
Can't open vbi device: /dev/vbi
2003-12-28 16:32:02 1       1
2003-12-28 16:32:02 5       29.97
2003-12-28 16:32:02 6       128000
2003-12-28 16:32:02 7       0[]:[]0
2003-12-28 16:32:02 6       128000
2003-12-28 16:32:02 8       0[]:[]84
2003-12-28 16:32:02 6       128000
2003-12-28 16:32:03 6       128000
2003-12-28 16:32:03 2       ok
2003-12-28 16:32:03 6       128000
2003-12-28 16:32:03 6       128000
... < last line repeats many times > ...
2003-12-28 16:32:04 1       1
2003-12-28 16:32:05 6       128000
2003-12-28 16:32:05 6       128000
2003-12-28 16:32:05 231     TV Guide: Greatest Moments 2003[]:[] []:[]A
cou...
2003-12-28 16:32:05 2       ok
2003-12-28 16:32:05 2       ok
2003-12-28 16:32:05 242     Midnight Run[]:[] []:[]A scruffy bounty
hunter ...
2003-12-28 16:32:05 6       128000
2003-12-28 16:32:05 6       128000
... < last line repeats many times > ...
2003-12-28 16:34:00 6       128000
2003-12-28 16:34:00 6       128000
only read 4096 from 8192 bytes from '/dev/dsp'
read audio: Success
VIDIOCSYNC: Interrupted system call
VIDIOCMCAPTURE1: Device or resource busy
2003-12-28 16:34:03 6       128000
2003-12-28 16:34:03 6       128000
... < last line repeats many times > ...
-------------------------------------------------------------------
 
-------------------- mythbackend backtrace ----------------------
Cannot find user-level thread for LWP 13501: generic error
(gdb) thread apply all bt
Cannot find new threads: generic error
(gdb) bt
#0  0x40c54aa1 in select () from /lib/libc.so.6
Couldn't get registers: No such process.
-------------------------------------------------------------------
=========================================================================




More information about the mythtv-dev mailing list