[mythtv-users] Exiting playback is very slow

Jim Stichnoth stichnot at gmail.com
Wed Nov 11 19:44:02 UTC 2009


For quite a while I have noticed that exiting playback and returning
to the menu is very slow, usually 10-15 seconds.  This has been the
case in both 0.21 and 0.22, and for both VDPAU and Slim profiles.

I added some extra logging to my own build to find out where the
slowness is happening.  Here are the last few calls leading to the big
pause:

TV::~TV()
  delete player.back();
PlayerContext::~PlayerContext()
PlayerContext::TeardownPlayer()
PlayerContext::SetNVP(NULL)
pthread_join(decode, NULL)

The pthread_join call takes about 11-12 seconds to complete.  Running
strace shows tons of system calls leading up to pthread_join, but the
logging output pauses for several seconds at the pthread_join call
with this line:
  futex(0xad249bd8, FUTEX_WAIT, 13506, NULL) = 0

(The first and third parameters of course change each run.)

Interestingly, I tried running "top -d .25" to see what was going on
with the CPU during the long pause, but top refuses to update the
screen during this period.

Any ideas what the problem might be?  The possibilities seem to be
Myth code, the pthreads library, or the kernel.  My kernel is
2.6.27.9-159.fc10.i686 from MythDora 10.21.

Jim


More information about the mythtv-users mailing list