[mythtv] [mythtv-commits] Ticket #1381: Slow keyboard response over
mythtv at zacglen.com.au
mythtv at zacglen.com.au
Sun Feb 26 03:48:55 UTC 2006
>> >We might be waiting for a while. There's no such select() (or similar
>> > stuff)
>> >
>> >in the code that could be causing that. =)
>>
>> Yes, there is.
>> Try an strace and find out the *truth*.
>>
>> Anyone who has done any programming (like myself) will know
>> that QEventLoop()::exec invokes select().
>
>I didn't realize that I had to specifically put "in mythtv" in that sentenc
>e,
>
>since this is the mythtv mailing list & bug tracker and not the Qt one.
>
>Silly me.
>
>> This is probably a major top-level design error.
>
>That only happens to a few people? That's highly doubtful.
>
Really? So top level design flaws always immediate manifest themselves
and are instantly corrected?
Anyhow, for all those doubters out there, here are some stack traces.
A)
#0 0x05449490 in select () from /lib/libc.so.6
#1 0x07173b68 in QEventLoop::processEvents () from /usr/lib/qt-3.3/lib/libqt-mt.so.3
#2 0x071e222b in QEventLoop::enterLoop () from /usr/lib/qt-3.3/lib/libqt-mt.so.3
#3 0x071c94cf in QApplication::enter_loop () from /usr/lib/qt-3.3/lib/libqt-mt.so.3
#4 0x045a750d in MythDialog::exec () from /usr/lib/libmyth-0.19.so.0
#5 0x0806497d in RunMenu (themedir=@0xbfd2b100) at main.cpp:498
#6 0x0806c93a in main (argc=1, argv=0xbfd2b1b4) at main.cpp:1062
B)
> #0 0x05449490 in select () from /lib/libc.so.6
> #1 0x07450f48 in QSocketDevice::waitForMore () from /usr/lib/qt-3.3/lib/libqt-mt.so.3
> #2 0x0478db0d in SipFsm::CheckRxEvent () from /usr/lib/mythtv/plugins/libmythphone.so
> #3 0x047911e2 in SipThread::CheckNetworkEvents () from /usr/lib/mythtv/plugins/libmythphone.so
> #4 0x04792b27 in SipThread::SipThreadWorker () from /usr/lib/mythtv/plugins/libmythphone.so
> #5 0x04792fbb in SipThread::run () from /usr/lib/mythtv/plugins/libmythphone.so
> #6 0x071c2378 in QThreadInstance::start () from /usr/lib/qt-3.3/lib/libqt-mt.so.3
> #7 0x00373947 in start_thread () from /lib/libpthread.so.0
> #8 0x054502ce in clone () from /lib/libc.so.6
Goodness knows what the 'mythphone' stuff is trying to do - call home
I suppose. I have it disabled so why doesn't it just close itself and die?
Anyhow I figure that there might be excessive traffic from creating
new pixmaps when a menu selection highlighting needs to change.
But shouldn't they already exist as offscreen pixmaps?
That would certainly be much more efficient, not to mention faster.
More information about the mythtv-dev
mailing list