[mythtv-users] Upgrade to 0.23 menu navigation and content playback of .ISO DVD images seems to hang frontend
Michael T. Dean
mtdean at thirdcontact.com
Thu May 6 03:48:47 UTC 2010
On 05/05/2010 11:42 PM, Rick Nickle wrote:
>
> I’m replying to myself, trying to collect more data. As I said, I’m
> watching an .ISO that is on an NFS mount from a NAS box over gigabit
> Ethernet.
>
First, are you using current 0.23-fixes? If not, please upgrade. There
are a lot of DVD fixes in 0.23-fixes that aren't in (and won't be put
in) 0.22-fixes.
> Although some content seems to work for awhile, eventually things bog
> down, especially on menus.
>
> In this particular example, someone tried to watch a video a couple of
> hours ago. When I checked on the system it was hung. I looked at the
> frontend log and saw that it was just writing this message over and over:
>
> 2010-05-05 21:21:00.001 AFD Error: Unknown decoding error
>
> 2010-05-05 21:21:00.002 [mpeg2video @ 0x8564960]get_buffer() failed
> (stride changed)
>
> Here’s a backtrace:
>
> #0 0x0039c422 in __kernel_vsyscall ()
>
> #1 0x003cab5d in pthread_join () from /lib/tls/i686/cmov/libpthread.so.0
>
> #2 0x013c8396 in PlayerContext::SetNVP(NuppelVideoPlayer*) ()
>
> from /usr/lib/libmythtv-0.23.so.0
>
> #3 0x013c4a79 in PlayerContext::TeardownPlayer() ()
>
> from /usr/lib/libmythtv-0.23.so.0
>
> #4 0x013c48a7 in PlayerContext::~PlayerContext() ()
>
> from /usr/lib/libmythtv-0.23.so.0
>
> #5 0x012f1f8c in TV::~TV() () from /usr/lib/libmythtv-0.23.so.0
>
> #6 0x012d996d in TV::StartTV(ProgramInfo*, bool, bool, bool) ()
>
> from /usr/lib/libmythtv-0.23.so.0
>
> #7 0x0807ce74 in ?? ()
>
> #8 0x00a93be6 in MythMainWindow::HandleMedia(QString const&, QString
> const&, QString const&, QString const&, QString const&, QString
> const&, int, int, int, QString const&) () from
> /usr/lib/libmythui-0.23.so.0
>
> #9 0x04df3fe0 in VideoPlayHandleMedia::Play() const ()
>
> from /usr/lib/mythtv/plugins/libmythvideo.so
>
> #10 0x04df53ea in VideoPlayerCommandPrivate::Play() const ()
>
> from /usr/lib/mythtv/plugins/libmythvideo.so
>
> #11 0x04df3aa7 in VideoPlayerCommand::Play() const ()
>
> from /usr/lib/mythtv/plugins/libmythvideo.so
>
> #12 0x04d9d118 in ?? () from /usr/lib/mythtv/plugins/libmythvideo.so
>
> #13 0x04dbc0f1 in ItemDetailPopup::OnPlay() ()
>
> from /usr/lib/mythtv/plugins/libmythvideo.so
>
> #14 0x04dba159 in ItemDetailPopup::qt_metacall(QMetaObject::Call, int,
> void**)
>
> () from /usr/lib/mythtv/plugins/libmythvideo.so
>
> #15 0x01c14c9a in QMetaObject::metacall(QObject*, QMetaObject::Call,
> int, void**) () from /usr/lib/libQtCore.so.4
>
> #16 0x01c233d5 in QMetaObject::activate(QObject*, QMetaObject const*,
> int, void**) () from /usr/lib/libQtCore.so.4
>
> #17 0x00bb986b in MythUIButton::Clicked() () from
> /usr/lib/libmythui-0.23.so.0
>
> #18 0x00aee886 in MythUIButton::Push(bool) () from
> /usr/lib/libmythui-0.23.so.0
>
> #19 0x00aee6b7 in MythUIButton::keyPressEvent(QKeyEvent*) ()
>
> from /usr/lib/libmythui-0.23.so.0
>
> #20 0x00ad0cf3 in MythScreenType::keyPressEvent(QKeyEvent*) ()
>
> But here’s something else curious. I looked at /proc/1661/fd to see
> what file descriptors were open. There were lots and lots of them…
>
> lrwx------ 1 user group 64 2010-05-05 23:22 /proc/1661/fd/83 ->
> /dev/snd/controlC0
>
> lrwx------ 1 user group 64 2010-05-05 23:22 /proc/1661/fd/84 ->
> /dev/snd/controlC0
>
> lrwx------ 1 user group 64 2010-05-05 23:22 /proc/1661/fd/85 ->
> /dev/snd/controlC0
>
> lrwx------ 1 user group 64 2010-05-05 23:22 /proc/1661/fd/86 ->
> /dev/snd/controlC0
>
> lrwx------ 1 user group 64 2010-05-05 23:22 /proc/1661/fd/87 ->
> /dev/snd/controlC0
>
> lrwx------ 1 user group 64 2010-05-05 23:22 /proc/1661/fd/88 ->
> /dev/snd/controlC0
>
> lrwx------ 1 user group 64 2010-05-05 23:22 /proc/1661/fd/89 ->
> /dev/snd/controlC0
>
> l-wx------ 1 user group 64 2010-05-05 23:22 /proc/1661/fd/9 -> pipe:[9058]
>
> lrwx------ 1 user group 64 2010-05-05 23:22 /proc/1661/fd/90 ->
> /dev/snd/controlC0
>
> lrwx------ 1 user group 64 2010-05-05 23:22 /proc/1661/fd/91 ->
> /dev/snd/controlC0
>
> lrwx------ 1 user group 64 2010-05-05 23:22 /proc/1661/fd/92 ->
> /dev/snd/controlC0
>
> lrwx------ 1 user group 64 2010-05-05 23:22 /proc/1661/fd/93 ->
> /dev/snd/controlC0
>
> lrwx------ 1 user group 64 2010-05-05 23:22 /proc/1661/fd/94 ->
> /dev/snd/controlC0
>
> lrwx------ 1 user group 64 2010-05-05 23:22 /proc/1661/fd/95 ->
> /dev/snd/controlC0
>
> lrwx------ 1 user group 64 2010-05-05 23:22 /proc/1661/fd/96 ->
> /dev/snd/controlC0
>
> lrwx------ 1 user group 64 2010-05-05 23:22 /proc/1661/fd/97 ->
> /dev/snd/controlC0
>
> lrwx------ 1 user group 64 2010-05-05 23:22 /proc/1661/fd/98 ->
> /dev/snd/controlC0
>
> lrwx------ 1 user group 64 2010-05-05 23:22 /proc/1661/fd/99 ->
> /dev/snd/controlC0
>
> That’s a lot of snd devices, why so many? I have over 160 of these
> things open.
>
> If I excise those (and the sockets and pipes, which I’ll omit for
> brevity, I had 15 sockets and 22 pipes associated with the frontend, a
> lot of them easy to account for, like connections to SQL, etc.)
>
> lr-x------ 1 user group 64 2010-05-05 23:22 /proc/1661/fd/0 -> /dev/null
>
> l-wx------ 1 user group 64 2010-05-05 23:22 /proc/1661/fd/1 ->
> /var/log/mythtv/mythfrontend.log
>
> lr-x------ 1 user group 64 2010-05-05 23:22 /proc/1661/fd/149 ->
> /mnt/nas1/ISO/video.ISO
>
> lrwx------ 1 user group 64 2010-05-05 23:22 /proc/1661/fd/151 ->
> /dev/dri/card0
>
> lr-x------ 1 user group 64 2010-05-05 23:22 /proc/1661/fd/157 ->
> /dev/snd/timer
>
> lrwx------ 1 user group 64 2010-05-05 23:22 /proc/1661/fd/158 ->
> /dev/snd/pcmC0D0p
>
> l-wx------ 1 user group 64 2010-05-05 23:22 /proc/1661/fd/2 ->
> /var/log/mythtv/mythfrontend.log
>
> lr-x------ 1 user group 64 2010-05-05 23:22 /proc/1661/fd/30 ->
> /tmp/mythtv_media
>
>
Yeah, there may be a leak that occurs in certain circumstances
(seemingly always during catastrophic errors). If you can find the leak,
we'd be happy to fix it. It may have also disappeared in 0.23-fixes or
in trunk due to JYA's audio refactoring.
Mike
More information about the mythtv-users
mailing list