[mythtv] Core dump in CVS
Brian Foddy
bfoddy at visi.com
Wed Mar 5 23:04:15 EST 2003
Well some intense retesting finally produced a few repeatable coredumps.
The attached file shows the bt with listing and variable prints.
Seems its in
203 usleep(50000);
204
205 int avail = sock->bytesAvailable();
206 char *trash = new char[avail + 1];
207 sock->readBlock(trash, avail);
208 delete [] trash;
209
210 strlist = QString(query).arg(recordernum);
211 strlist << "SEEK" + append;
dieing in readBlock with avail usually in the range of 118000.
There are still others that look quite random so far, but at least
I've got 4 that look the same.
Hope this helps. I have the full core files if you want one.
Brian
On Wednesday 05 March 2003 10:11 am, Isaac Richards wrote:
> On Tuesday 04 March 2003 10:45 pm, Brian Foddy wrote:
> > I'm starting to wonder if this might be some reentrant / multi-threaded
> > bad behavior. The machine is a 2 cpu Pentium II-450. Will I get
> > enough debug info if I turn on the full optimization with the -g flag?
> > I'd really like to get the resolution back up a bit.
>
> Hmm.. what version of Qt are you using? It could very well be a
> concurrancy issue in the QSocket stuff.
>
> Isaac
>
> _______________________________________________
> mythtv-dev mailing list
> mythtv-dev at snowman.net
> http://www.snowman.net/mailman/listinfo/mythtv-dev
-------------- next part --------------
core.7140
#0 0x405b6f13 in QSocket::consumeReadBuf(unsigned long, char*) () from /usr/lib/qt3/lib/libqt-mt.so.3
(gdb) bt
#0 0x405b6f13 in QSocket::consumeReadBuf(unsigned long, char*) () from /usr/lib/qt3/lib/libqt-mt.so.3
#1 0x405b777f in QSocket::readBlock(char*, unsigned long) () from /usr/lib/qt3/lib/libqt-mt.so.3
#2 0x40089a48 in RemoteFile::Seek(long long, int, long long) (this=0x83a48e8, pos=-12, whence=1, curpos=13961886)
at remotefile.cpp:207
#3 0x0810c643 in RingBuffer::Seek(long long, int) (this=0x83c7bd8, pos=-12, whence=1) at RingBuffer.cpp:638
#4 0x080c85e1 in NuppelVideoPlayer::GetFrame(int, bool) (this=0x42a00008, onlyvideo=0, unsafe=false) at NuppelVideoPlayer.cpp:1133
#5 0x080ca97f in NuppelVideoPlayer::StartPlaying() (this=0x42a00008) at NuppelVideoPlayer.cpp:2162
#6 0x0811cf8f in SpawnDecode(void*) (param=0x42a00008) at tv_play.cpp:49
#7 0x408176c1 in pthread_exit () from /lib/i686/libpthread.so.0
202
203 usleep(50000);
204
205 int avail = sock->bytesAvailable();
206 char *trash = new char[avail + 1];
207 sock->readBlock(trash, avail);
208 delete [] trash;
209
210 strlist = QString(query).arg(recordernum);
211 strlist << "SEEK" + append;
(gdb) print avail
$1 = 118710
(gdb) print trash
$2 = 0x84b2188 "EÀ"
core.7209
#0 0x405b6f13 in QSocket::consumeReadBuf(unsigned long, char*) () from /usr/lib/qt3/lib/libqt-mt.so.3
(gdb) bt
#0 0x405b6f13 in QSocket::consumeReadBuf(unsigned long, char*) () from /usr/lib/qt3/lib/libqt-mt.so.3
#1 0x405b777f in QSocket::readBlock(char*, unsigned long) () from /usr/lib/qt3/lib/libqt-mt.so.3
#2 0x40089a48 in RemoteFile::Seek(long long, int, long long) (this=0x83b9018, pos=-12, whence=1, curpos=322856321)
at remotefile.cpp:207
#3 0x0810c643 in RingBuffer::Seek(long long, int) (this=0x83bfa10, pos=-12, whence=1) at RingBuffer.cpp:638
#4 0x080c85e1 in NuppelVideoPlayer::GetFrame(int, bool) (this=0x428e7008, onlyvideo=0, unsafe=false) at NuppelVideoPlayer.cpp:1133
#5 0x080ca97f in NuppelVideoPlayer::StartPlaying() (this=0x428e7008) at NuppelVideoPlayer.cpp:2162
#6 0x0811cf8f in SpawnDecode(void*) (param=0x428e7008) at tv_play.cpp:49
#7 0x408176c1 in pthread_exit () from /lib/i686/libpthread.so.0
(gdb) up
#1 0x405b777f in QSocket::readBlock(char*, unsigned long) () from /usr/lib/qt3/lib/libqt-mt.so.3
(gdb) up
#2 0x40089a48 in RemoteFile::Seek(long long, int, long long) (this=0x83b9018, pos=-12, whence=1, curpos=322856321)
at remotefile.cpp:207
207 sock->readBlock(trash, avail);
(gdb) list
202
203 usleep(50000);
204
205 int avail = sock->bytesAvailable();
206 char *trash = new char[avail + 1];
207 sock->readBlock(trash, avail);
208 delete [] trash;
209
210 strlist = QString(query).arg(recordernum);
211 strlist << "SEEK" + append;
(gdb) print avail
$1 = 122949
(gdb) print trash
$2 = 0x45800018 "\b1"
core.428
#0 0x405b6f13 in QSocket::consumeReadBuf(unsigned long, char*) () from /usr/lib/qt3/lib/libqt-mt.so.3
(gdb) bt
#0 0x405b6f13 in QSocket::consumeReadBuf(unsigned long, char*) () from /usr/lib/qt3/lib/libqt-mt.so.3
#1 0x405b777f in QSocket::readBlock(char*, unsigned long) () from /usr/lib/qt3/lib/libqt-mt.so.3
#2 0x40089a48 in RemoteFile::Seek(long long, int, long long) (this=0x83ab3e8, pos=-12, whence=1, curpos=113420074)
at remotefile.cpp:207
#3 0x0810c643 in RingBuffer::Seek(long long, int) (this=0x83be340, pos=-12, whence=1) at RingBuffer.cpp:638
#4 0x080c85e1 in NuppelVideoPlayer::GetFrame(int, bool) (this=0x430e7008, onlyvideo=0, unsafe=false) at NuppelVideoPlayer.cpp:1133
#5 0x080ca97f in NuppelVideoPlayer::StartPlaying() (this=0x430e7008) at NuppelVideoPlayer.cpp:2162
#6 0x0811cf8f in SpawnDecode(void*) (param=0x430e7008) at tv_play.cpp:49
#7 0x408176c1 in pthread_exit () from /lib/i686/libpthread.so.0
(gdb) up
#1 0x405b777f in QSocket::readBlock(char*, unsigned long) () from /usr/lib/qt3/lib/libqt-mt.so.3
(gdb) up
#2 0x40089a48 in RemoteFile::Seek(long long, int, long long) (this=0x83ab3e8, pos=-12, whence=1, curpos=113420074)
at remotefile.cpp:207
207 sock->readBlock(trash, avail);
(gdb) list
202
203 usleep(50000);
204
205 int avail = sock->bytesAvailable();
206 char *trash = new char[avail + 1];
207 sock->readBlock(trash, avail);
208 delete [] trash;
209
210 strlist = QString(query).arg(recordernum);
211 strlist << "SEEK" + append;
(gdb) print avail
$1 = 116522
(gdb) print trash
$2 = 0x44760de0 "iü\017þ\017þó\001ó\001(\004(\004¯\001¯\001týtý-ý-ý§ÿ§ÿ2"
core.7459
#0 0x405b6f13 in QSocket::consumeReadBuf(unsigned long, char*) () from /usr/lib/qt3/lib/libqt-mt.so.3
(gdb) bt
#0 0x405b6f13 in QSocket::consumeReadBuf(unsigned long, char*) () from /usr/lib/qt3/lib/libqt-mt.so.3
#1 0x405b777f in QSocket::readBlock(char*, unsigned long) () from /usr/lib/qt3/lib/libqt-mt.so.3
#2 0x40089a48 in RemoteFile::Seek(long long, int, long long) (this=0x83ab510, pos=-12, whence=1, curpos=131978392)
at remotefile.cpp:207
#3 0x0810c643 in RingBuffer::Seek(long long, int) (this=0x83c7bd8, pos=-12, whence=1) at RingBuffer.cpp:638
#4 0x080c85e1 in NuppelVideoPlayer::GetFrame(int, bool) (this=0x42a00008, onlyvideo=0, unsafe=false) at NuppelVideoPlayer.cpp:1133
#5 0x080ca97f in NuppelVideoPlayer::StartPlaying() (this=0x42a00008) at NuppelVideoPlayer.cpp:2162
#6 0x0811cf8f in SpawnDecode(void*) (param=0x42a00008) at tv_play.cpp:49
#7 0x408176c1 in pthread_exit () from /lib/i686/libpthread.so.0
(gdb) up
#1 0x405b777f in QSocket::readBlock(char*, unsigned long) () from /usr/lib/qt3/lib/libqt-mt.so.3
(gdb) up
#2 0x40089a48 in RemoteFile::Seek(long long, int, long long) (this=0x83ab510, pos=-12, whence=1, curpos=131978392)
at remotefile.cpp:207
207 sock->readBlock(trash, avail);
(gdb) list
202
203 usleep(50000);
204
205 int avail = sock->bytesAvailable();
206 char *trash = new char[avail + 1];
207 sock->readBlock(trash, avail);
208 delete [] trash;
209
210 strlist = QString(query).arg(recordernum);
211 strlist << "SEEK" + append;
(gdb) print avail
$1 = 118204
(gdb) print trash
$2 = 0x84d2350 "ÿ;%4c\037<]øà\001"
More information about the mythtv-dev
mailing list