[mythtv] EPG/LiveTV/ivtv problem with backtraces
Lee Marlow
lmarlow at yahoo.com
Thu Oct 16 08:26:18 EDT 2003
I can lockup the frontend while in the EPG by quickly scrolling through the
channel lineup, I have 291 channels. The same symptoms occur sporadically
when watching LiveTV too. The frontend will freeze and will start printing
"Waited 2 seconds for data to become available, waiting again..." to the
console. The backend will printout "IOBOUND - blocking in
ThreadedFileWriter::Write()." dmesg will show the following:
Oct 15 22:41:48 [kernel] Unable to handle kernel paging request at virtual
address 16808210 Oct 15 22:41:54 [kernel] ivtv: Not enough free buffers,
stream 0 Oct 15 22:41:54 [kernel] ivtv: Not enough free buffers, stream 0
Oct 15 22:41:54 [kernel] ivtv: Not enough free buffers, stream 0
(repeats)
The backtrace from the backend seems useless, all I get is this:
Thread 20 (Thread 294931 (LWP 2737)):
#0 0x40be0486 in nanosleep () from /lib/libc.so.6
No symbol table info available.
#1 0x00000000 in ?? ()
No symbol table info available.
Couldn't get registers: Operation not permitted.
#0 0x40be0486 in nanosleep () from /lib/libc.so.6
I'm attaching the frontend backtrace. How can I get a more useful backend
backtrace? Is this a myth problem, an ivtv problem, or maybe even a
hardware problem? Note that I have mpg_buffers=100 when loading ivtv. I'm
running against CVS and have been updating regularly. This problem has been
happening for a month or two now and is keeping me from using myth fulltime
for all my TV activities.
Thanks for any guidance.
-Lee
-------------- next part --------------
Waited 2 seconds for data to become available, waiting again...
Program received signal SIGINT, Interrupt.
[Switching to Thread 573476 (LWP 2741)]
0x40be0486 in nanosleep () from /lib/libc.so.6
(gdb) thread apply all bt full
Thread 37 (Thread 573476 (LWP 2741)):
#0 0x40be0486 in nanosleep () from /lib/libc.so.6
No symbol table info available.
#1 0x00000000 in ?? ()
No symbol table info available.
Thread 36 (Thread 557091 (LWP 2740)):
#0 0x40be0486 in nanosleep () from /lib/libc.so.6
No symbol table info available.
#1 0x00000000 in ?? ()
No symbol table info available.
Thread 35 (Thread 540706 (LWP 2739)):
#0 0x40c07ab1 in select () from /lib/libc.so.6
No symbol table info available.
#1 0x409e1244 in __JCR_LIST__ () from /usr/qt/3/lib/libqt-mt.so.3
No symbol table info available.
#2 0x407b2a9c in QSocket::waitForMore(int, bool*) const () from /usr/qt/3/lib/libqt-mt.so.3
No symbol table info available.
#3 0x407b2aee in QSocket::waitForMore(int) const () from /usr/qt/3/lib/libqt-mt.so.3
No symbol table info available.
#4 0x400e5c4b in ReadStringList(QSocket*, QStringList&) (socket=0x871d790, list=@0x51e318bc)
at util.cpp:93
sizestr = <incomplete type>
size = 0
utf8 = <incomplete type>
read = 61
zerocnt = 0
str = {static null = {static null = <same as static member of an already seen type>,
d = 0x84c6b50, static shared_null = 0x84c6b50}, d = 0x409bfc20, static shared_null = 0x84c6b50}
#5 0x400bf56d in RemoteFile::RequestBlock(int) (this=0x86eae88, size=256000) at remotefile.cpp:203
strlist = {<QValueList<QString>> = {sh = 0x871b000}, <No data fields>}
#6 0x0815c199 in RingBuffer::safe_read(RemoteFile*, void*, unsigned) (this=0x88a1b30,
rf=0x86eae88, data=0x42ccb808, sz=256000) at RingBuffer.cpp:490
ret = 0
tot = 0
zerocnt = 0
hiteof = false
reqsize = 256000
sock = (struct QSocket *) 0x85373c0
available = 0
#7 0x0815cdda in RingBuffer::ReadAheadThread() (this=0x88a1b30) at RingBuffer.cpp:753
totfree = 256000
ret = 256000
used = 2279425
#8 0x0815cb2f in RingBuffer::startReader(void*) (type=0x88a1b30) at RingBuffer.cpp:692
rbuffer = (RingBuffer *) 0x88a1b30
#9 0x409f2d40 in pthread_start_thread () from /lib/libpthread.so.0
---Type <return> to continue, or q <return> to quit---
No symbol table info available.
#10 0x409f2e42 in pthread_start_thread_event () from /lib/libpthread.so.0
No symbol table info available.
Thread 34 (Thread 524321 (LWP 2738)):
#0 0x409f8a46 in nanosleep () from /lib/libpthread.so.0
No symbol table info available.
#1 0x00000001 in ?? ()
No symbol table info available.
#2 0x409f1ec9 in pthread_cond_timedwait_relative () from /lib/libpthread.so.0
No symbol table info available.
#3 0x40831be3 in QWaitCondition::wait(QMutex*, unsigned long) () from /usr/qt/3/lib/libqt-mt.so.3
No symbol table info available.
#4 0x0815d535 in RingBuffer::ReadFromBuf(void*, int) (this=0x88a1b30, buf=0x86e14d0, count=32768)
at RingBuffer.cpp:862
readone = false
avail = 18432
#5 0x0815d811 in RingBuffer::Read(void*, int) (this=0x88a1b30, buf=0x86e14d0, count=32768)
at RingBuffer.cpp:932
ret = -1
#6 0x08195384 in read_avf(URLContext*, unsigned char*, int) (h=0x8569b14, buf=0x86e14d0 "",
buf_size=32768) at avformatdecoder.cpp:148
dec = (AvFormatDecoder *) 0x8569ac8
#7 0x081db6af in url_read ()
FALSE = false
TRUE = true
#8 0x0819542f in avf_read_packet (opaque=0x8569b14, buf=0x86e14d0 "", buf_size=32768)
at avformatdecoder.cpp:191
h = (URLContext *) 0x8569b14
#9 0x081dc081 in fill_buffer ()
FALSE = false
TRUE = true
#10 0x081dc0fb in get_byte ()
FALSE = false
TRUE = true
#11 0x081e083c in find_start_code ()
FALSE = false
TRUE = true
#12 0x081e0982 in mpegps_read_packet ()
FALSE = false
TRUE = true
#13 0x081e67c8 in av_read_packet ()
FALSE = false
TRUE = true
#14 0x08196a07 in AvFormatDecoder::GetFrame(int) (this=0x8569ac8, onlyvideo=0)
at avformatdecoder.cpp:788
curstream = (AVStream *) 0x85798c0
pkt = (AVPacket *) 0x86f8530
len = 2012
---Type <return> to continue, or q <return> to quit---
ret = 2012
ptr = (unsigned char *) 0x8850640 ""
samples = {-316, -261, -153, -98, 16, 31, 135, 113, 184, 163, 245, 220, 319, 277, 286,
253, 159, 155, 93, 111, 131, 139, 144, 122, 21, 3, -189, -173, -359, -327, -429, -386, -386,
-329, -247, -200, -87, -65, 23, 13, 60, 31, 14, 12, -99, -77, -211, -214, -248, -266, -200,
-206, -126, -133, -49, -60, 84, 66, 240, 219, 338, 333, 383, 367, 337, 299, 157, 154, -68, -28,
-331, -288, -711, -655, -1071, -986, -1211, -1096, -1157, -1018, -1010, -889, -790, -707, -486,
-413, -126, -84, 135, 127, 179, 158, 96, 74, -53, -81, -305, -331, -580, -608, -789, -788, -895,
-857, -793, -782, -477, -503, -124, -139, 199, 178, 529, 479, 792, 723, 892, 799, 851, 751, 759,
665, 656, 551, 490, 404, 232, 189, -58, -92, -343, -356, -577, -549, -663, -624, -622, -575,
-589, -549, -624, -627, -696, -685, -740, -673, -679, -616, -494, -460, -262, -234, -63, -66,
84, 32, 200, 132, 298, 245, 374, 342, 491, 432, 677, 565, 773, 671, 622, 560, 339, 266, 121, 47,
9, -25, -12, -37, 69, 22, 227, 181, 410, 371, 573, 518, 651, 580, 654, 580, 650, 569, 578, 498,
328, 263, -34, -90, -305, -357...}
data_size = 0
temppts = 17470
gotvideo = true
allowedquit = false
storevideoframes = true
#15 0x080f93b8 in NuppelVideoPlayer::GetFrame(int, bool) (this=0x88a5788, onlyvideo=0,
unsafe=false) at NuppelVideoPlayer.cpp:592
No locals.
#16 0x080fc0be in NuppelVideoPlayer::StartPlaying() (this=0x88a5788) at NuppelVideoPlayer.cpp:1554
output_video = 573476
pausecheck = 0
#17 0x08172aab in SpawnDecode(void*) (param=0x88a5788) at tv_play.cpp:68
nvp = (NuppelVideoPlayer *) 0x88a5788
#18 0x409f2d40 in pthread_start_thread () from /lib/libpthread.so.0
No symbol table info available.
#19 0x409f2e42 in pthread_start_thread_event () from /lib/libpthread.so.0
No symbol table info available.
Thread 33 (Thread 507936 (LWP 2735)):
#0 0x40be0486 in nanosleep () from /lib/libc.so.6
No symbol table info available.
#1 0x00000000 in ?? ()
No symbol table info available.
Thread 3 (Thread 16386 (LWP 2674)):
#0 0x409f823b in read () from /lib/libpthread.so.0
No symbol table info available.
#1 0x402ed42c in __JCR_LIST__ () from /usr/lib/liblirc_client.so.0
No symbol table info available.
Thread 2 (Thread 32769 (LWP 2673)):
#0 0x40c061c7 in poll () from /lib/libc.so.6
No symbol table info available.
#1 0x409f294e in __pthread_manager () from /lib/libpthread.so.0
No symbol table info available.
---Type <return> to continue, or q <return> to quit---
#2 0x409f2b9a in __pthread_manager_event () from /lib/libpthread.so.0
No symbol table info available.
Thread 1 (Thread 16384 (LWP 2670)):
#0 0x40b5cf68 in sigsuspend () from /lib/libc.so.6
No symbol table info available.
#1 0x409f5238 in __pthread_wait_for_restart_signal () from /lib/libpthread.so.0
No symbol table info available.
#2 0x409f69c0 in __pthread_alt_lock () from /lib/libpthread.so.0
No symbol table info available.
#3 0x409f3c37 in pthread_mutex_lock () from /lib/libpthread.so.0
No symbol table info available.
#4 0x40830c0c in QRecursiveMutexPrivate::lock() () from /usr/qt/3/lib/libqt-mt.so.3
No symbol table info available.
#5 0x40831014 in QMutex::lock() () from /usr/qt/3/lib/libqt-mt.so.3
No symbol table info available.
#6 0x40585094 in QApplication::lock() () from /usr/qt/3/lib/libqt-mt.so.3
No symbol table info available.
#7 0x08070d1f in startTV() () at main.cpp:200
db = (struct QSqlDatabase *) 0x853b1a8
tv = (class TV *) 0x86eb178
timeout = {d = {jd = 2452928}, t = {ds = 81690572}}
tryTV = false
tryRecorder = false
quitAll = false
showDialogs = true
#8 0x08070d9f in TVMenuCallback(void*, QString&) (data=0x85283a8, selection=@0x856532c)
at main.cpp:221
sel = {static null = {static null = <same as static member of an already seen type>,
d = 0x84c6b50, static shared_null = 0x84c6b50}, d = 0x86f41f8, static shared_null = 0x84c6b50}
#9 0x400dd92f in ThemedMenu::handleAction(QString&) (this=0x8565180, action=@0x857a934)
at themedmenu.cpp:1871
No locals.
#10 0x400dc22f in ThemedMenu::keyPressEvent(QKeyEvent*) (this=0x8565180, e=0xbffff100)
at themedmenu.cpp:1701
handled = false
lastbutton = (ThemedButton *) 0x857a8f8
oldrow = 0
#11 0x4061557c in QWidget::event(QEvent*) () from /usr/qt/3/lib/libqt-mt.so.3
No symbol table info available.
#12 0x405834c4 in QApplication::internalNotify(QObject*, QEvent*) ()
from /usr/qt/3/lib/libqt-mt.so.3
No symbol table info available.
#13 0x40582e3c in QApplication::notify(QObject*, QEvent*) () from /usr/qt/3/lib/libqt-mt.so.3
No symbol table info available.
#14 0x400b5182 in QApplication::sendEvent(QObject*, QEvent*) (receiver=0x8565180, event=0xbffff100)
at qapplication.h:478
No locals.
#15 0x4012691e in MythMainWindow::customEvent(QCustomEvent*) (this=0x854edf0, ce=0x4431de58)
---Type <return> to continue, or q <return> to quit---
at mythdialogs.cpp:157
k = 32
ascii = 0
key = {<> = {<No data fields>}, txt = {static null = {
static null = <same as static member of an already seen type>, d = 0x84c6b50,
static shared_null = 0x84c6b50}, d = 0x84c6b50, static shared_null = 0x84c6b50}, k = 32,
s = 0, a = 0 '\0', accpt = 1, autor = 0, c = 1}
mod = 0
text = {static null = {static null = <same as static member of an already seen type>,
d = 0x84c6b50, static shared_null = 0x84c6b50}, d = 0x84c6b50, static shared_null = 0x84c6b50}
key_target = (struct QObject *) 0x8565180
lke = (class LircKeycodeEvent *) 0x4431de58
keycode = 32
#16 0x405dee9c in QObject::event(QEvent*) () from /usr/qt/3/lib/libqt-mt.so.3
No symbol table info available.
#17 0x4061549c in QWidget::event(QEvent*) () from /usr/qt/3/lib/libqt-mt.so.3
No symbol table info available.
#18 0x405834c4 in QApplication::internalNotify(QObject*, QEvent*) ()
from /usr/qt/3/lib/libqt-mt.so.3
No symbol table info available.
#19 0x40582a3b in QApplication::notify(QObject*, QEvent*) () from /usr/qt/3/lib/libqt-mt.so.3
No symbol table info available.
#20 0x4058425a in QApplication::sendPostedEvents(QObject*, int) () from /usr/qt/3/lib/libqt-mt.so.3
No symbol table info available.
#21 0x405840d8 in QApplication::sendPostedEvents() () from /usr/qt/3/lib/libqt-mt.so.3
No symbol table info available.
#22 0x4053bb15 in QEventLoop::processEvents(unsigned) () from /usr/qt/3/lib/libqt-mt.so.3
No symbol table info available.
#23 0x405972c6 in QEventLoop::enterLoop() () from /usr/qt/3/lib/libqt-mt.so.3
No symbol table info available.
#24 0x40583751 in QApplication::enter_loop() () from /usr/qt/3/lib/libqt-mt.so.3
No symbol table info available.
#25 0x4012750f in MythDialog::exec() (this=0x8565180) at mythdialogs.cpp:280
res = 0
#26 0x08071c64 in RunMenu(QString) (themedir=
{static null = {static null = <same as static member of an already seen type>, d = 0x84c6b50, static shared_null = 0x84c6b50}, d = 0x855ac40, static shared_null = 0x84c6b50}) at main.cpp:342
exitstatus = 0
#27 0x08074785 in main (argc=1, argv=0xbffff824) at main.cpp:663
lcd_host = {static null = {static null = <same as static member of an already seen type>,
d = 0x84c6b50, static shared_null = 0x84c6b50}, d = 0x8563d88, static shared_null = 0x84c6b50}
lcd_port = 0
a = <incomplete type>
translator = <incomplete type>
logfile = {static null = {static null = <same as static member of an already seen type>,
d = 0x84c6b50, static shared_null = 0x84c6b50}, d = 0x85282f0, static shared_null = 0x84c6b50}
verboseString = {static null = {
static null = <same as static member of an already seen type>, d = 0x84c6b50,
static shared_null = 0x84c6b50}, d = 0x8528330, static shared_null = 0x84c6b50}
---Type <return> to continue, or q <return> to quit---
pluginname = {static null = {
static null = <same as static member of an already seen type>, d = 0x84c6b50,
static shared_null = 0x84c6b50}, d = 0x8528358, static shared_null = 0x84c6b50}
binname = {static null = {static null = <same as static member of an already seen type>,
d = 0x84c6b50, static shared_null = 0x84c6b50}, d = 0x8528390, static shared_null = 0x84c6b50}
logfd = -1
db = (struct QSqlDatabase *) 0x853b1a8
themename = {static null = {static null = <same as static member of an already seen type>,
d = 0x84c6b50, static shared_null = 0x84c6b50}, d = 0x855c330, static shared_null = 0x84c6b50}
randomtheme = false
themedir = {static null = {static null = <same as static member of an already seen type>,
d = 0x84c6b50, static shared_null = 0x84c6b50}, d = 0x855ac40, static shared_null = 0x84c6b50}
mainWindow = (class MythMainWindow *) 0x854edf0
exitstatus = 1
#28 0x40b497a7 in __libc_start_main () from /lib/libc.so.6
No symbol table info available.
#0 0x40be0486 in nanosleep () from /lib/libc.so.6
More information about the mythtv-dev
mailing list