<html xmlns:v="urn:schemas-microsoft-com:vml" xmlns:o="urn:schemas-microsoft-com:office:office" xmlns:w="urn:schemas-microsoft-com:office:word" xmlns:m="http://schemas.microsoft.com/office/2004/12/omml" xmlns="http://www.w3.org/TR/REC-html40">

<head>
<meta http-equiv=Content-Type content="text/html; charset=us-ascii">
<meta name=Generator content="Microsoft Word 12 (filtered medium)">
<style>
<!--
 /* Font Definitions */
 @font-face
        {font-family:"Cambria Math";
        panose-1:2 4 5 3 5 4 6 3 2 4;}
@font-face
        {font-family:Calibri;
        panose-1:2 15 5 2 2 2 4 3 2 4;}
 /* Style Definitions */
 p.MsoNormal, li.MsoNormal, div.MsoNormal
        {margin:0in;
        margin-bottom:.0001pt;
        font-size:11.0pt;
        font-family:"Calibri","sans-serif";}
a:link, span.MsoHyperlink
        {mso-style-priority:99;
        color:blue;
        text-decoration:underline;}
a:visited, span.MsoHyperlinkFollowed
        {mso-style-priority:99;
        color:purple;
        text-decoration:underline;}
span.EmailStyle17
        {mso-style-type:personal-compose;
        font-family:"Calibri","sans-serif";
        color:windowtext;}
.MsoChpDefault
        {mso-style-type:export-only;}
@page Section1
        {size:8.5in 11.0in;
        margin:1.0in 1.0in 1.0in 1.0in;}
div.Section1
        {page:Section1;}
-->
</style>
<!--[if gte mso 9]><xml>
 <o:shapedefaults v:ext="edit" spidmax="1026" />
</xml><![endif]--><!--[if gte mso 9]><xml>
 <o:shapelayout v:ext="edit">
  <o:idmap v:ext="edit" data="1" />
 </o:shapelayout></xml><![endif]-->
</head>

<body lang=EN-US link=blue vlink=purple>

<div class=Section1>

<p class=MsoNormal>I&#8217;m replying to myself, trying to collect more
data.&nbsp; As I said, I&#8217;m watching an .ISO that is on an NFS mount from
a NAS box over gigabit Ethernet.<o:p></o:p></p>

<p class=MsoNormal><o:p>&nbsp;</o:p></p>

<p class=MsoNormal>Although some content seems to work for awhile, eventually
things bog down, especially on menus.<o:p></o:p></p>

<p class=MsoNormal><o:p>&nbsp;</o:p></p>

<p class=MsoNormal>In this particular example, someone tried to watch a video a
couple of hours ago.&nbsp; When I checked on the system it was hung.&nbsp; I
looked at the frontend log and saw that it was just writing this message over
and over:<o:p></o:p></p>

<p class=MsoNormal><o:p>&nbsp;</o:p></p>

<p class=MsoNormal>2010-05-05 21:21:00.001 AFD Error: Unknown decoding error<o:p></o:p></p>

<p class=MsoNormal>2010-05-05 21:21:00.002 [mpeg2video @ 0x8564960]get_buffer()
failed (stride changed)<o:p></o:p></p>

<p class=MsoNormal><o:p>&nbsp;</o:p></p>

<p class=MsoNormal>Here&#8217;s a backtrace:<o:p></o:p></p>

<p class=MsoNormal><o:p>&nbsp;</o:p></p>

<p class=MsoNormal>#0&nbsp; 0x0039c422 in __kernel_vsyscall ()<o:p></o:p></p>

<p class=MsoNormal>#1&nbsp; 0x003cab5d in pthread_join () from
/lib/tls/i686/cmov/libpthread.so.0<o:p></o:p></p>

<p class=MsoNormal>#2&nbsp; 0x013c8396 in
PlayerContext::SetNVP(NuppelVideoPlayer*) ()<o:p></o:p></p>

<p class=MsoNormal>&nbsp;&nbsp; from /usr/lib/libmythtv-0.23.so.0<o:p></o:p></p>

<p class=MsoNormal>#3&nbsp; 0x013c4a79 in PlayerContext::TeardownPlayer() ()<o:p></o:p></p>

<p class=MsoNormal>&nbsp;&nbsp; from /usr/lib/libmythtv-0.23.so.0<o:p></o:p></p>

<p class=MsoNormal>#4&nbsp; 0x013c48a7 in PlayerContext::~PlayerContext() ()<o:p></o:p></p>

<p class=MsoNormal>&nbsp;&nbsp; from /usr/lib/libmythtv-0.23.so.0<o:p></o:p></p>

<p class=MsoNormal>#5&nbsp; 0x012f1f8c in TV::~TV() () from
/usr/lib/libmythtv-0.23.so.0<o:p></o:p></p>

<p class=MsoNormal>#6&nbsp; 0x012d996d in TV::StartTV(ProgramInfo*, bool, bool,
bool) ()<o:p></o:p></p>

<p class=MsoNormal>&nbsp;&nbsp; from /usr/lib/libmythtv-0.23.so.0<o:p></o:p></p>

<p class=MsoNormal>#7&nbsp; 0x0807ce74 in ?? ()<o:p></o:p></p>

<p class=MsoNormal>#8&nbsp; 0x00a93be6 in MythMainWindow::HandleMedia(QString
const&amp;, QString const&amp;, QString const&amp;, QString const&amp;, QString
const&amp;, QString const&amp;, int, int, int, QString const&amp;) () from
/usr/lib/libmythui-0.23.so.0<o:p></o:p></p>

<p class=MsoNormal>#9&nbsp; 0x04df3fe0 in VideoPlayHandleMedia::Play() const ()<o:p></o:p></p>

<p class=MsoNormal>&nbsp;&nbsp; from /usr/lib/mythtv/plugins/libmythvideo.so<o:p></o:p></p>

<p class=MsoNormal>#10 0x04df53ea in VideoPlayerCommandPrivate::Play() const ()<o:p></o:p></p>

<p class=MsoNormal>&nbsp;&nbsp; from /usr/lib/mythtv/plugins/libmythvideo.so<o:p></o:p></p>

<p class=MsoNormal>#11 0x04df3aa7 in VideoPlayerCommand::Play() const ()<o:p></o:p></p>

<p class=MsoNormal>&nbsp;&nbsp; from /usr/lib/mythtv/plugins/libmythvideo.so<o:p></o:p></p>

<p class=MsoNormal>#12 0x04d9d118 in ?? () from
/usr/lib/mythtv/plugins/libmythvideo.so<o:p></o:p></p>

<p class=MsoNormal>#13 0x04dbc0f1 in ItemDetailPopup::OnPlay() ()<o:p></o:p></p>

<p class=MsoNormal>&nbsp;&nbsp; from /usr/lib/mythtv/plugins/libmythvideo.so<o:p></o:p></p>

<p class=MsoNormal>#14 0x04dba159 in
ItemDetailPopup::qt_metacall(QMetaObject::Call, int, void**)<o:p></o:p></p>

<p class=MsoNormal>&nbsp;&nbsp;&nbsp; () from /usr/lib/mythtv/plugins/libmythvideo.so<o:p></o:p></p>

<p class=MsoNormal>#15 0x01c14c9a in QMetaObject::metacall(QObject*,
QMetaObject::Call, int, void**) () from /usr/lib/libQtCore.so.4<o:p></o:p></p>

<p class=MsoNormal>#16 0x01c233d5 in QMetaObject::activate(QObject*,
QMetaObject const*, int, void**) () from /usr/lib/libQtCore.so.4<o:p></o:p></p>

<p class=MsoNormal>#17 0x00bb986b in MythUIButton::Clicked() () from
/usr/lib/libmythui-0.23.so.0<o:p></o:p></p>

<p class=MsoNormal>#18 0x00aee886 in MythUIButton::Push(bool) () from
/usr/lib/libmythui-0.23.so.0<o:p></o:p></p>

<p class=MsoNormal>#19 0x00aee6b7 in MythUIButton::keyPressEvent(QKeyEvent*) ()<o:p></o:p></p>

<p class=MsoNormal>&nbsp;&nbsp; from /usr/lib/libmythui-0.23.so.0<o:p></o:p></p>

<p class=MsoNormal>#20 0x00ad0cf3 in MythScreenType::keyPressEvent(QKeyEvent*)
()<o:p></o:p></p>

<p class=MsoNormal><o:p>&nbsp;</o:p></p>

<p class=MsoNormal>But here&#8217;s something else curious.&nbsp; I looked at
/proc/1661/fd to see what file descriptors were open.&nbsp; There were lots and
lots of them&#8230;<o:p></o:p></p>

<p class=MsoNormal><o:p>&nbsp;</o:p></p>

<p class=MsoNormal>lrwx------ 1 user group 64 2010-05-05 23:22 /proc/1661/fd/83
-&gt; /dev/snd/controlC0<o:p></o:p></p>

<p class=MsoNormal>lrwx------ 1 user group 64 2010-05-05 23:22 /proc/1661/fd/84
-&gt; /dev/snd/controlC0<o:p></o:p></p>

<p class=MsoNormal>lrwx------ 1 user group 64 2010-05-05 23:22 /proc/1661/fd/85
-&gt; /dev/snd/controlC0<o:p></o:p></p>

<p class=MsoNormal>lrwx------ 1 user group 64 2010-05-05 23:22 /proc/1661/fd/86
-&gt; /dev/snd/controlC0<o:p></o:p></p>

<p class=MsoNormal>lrwx------ 1 user group 64 2010-05-05 23:22 /proc/1661/fd/87
-&gt; /dev/snd/controlC0<o:p></o:p></p>

<p class=MsoNormal>lrwx------ 1 user group 64 2010-05-05 23:22 /proc/1661/fd/88
-&gt; /dev/snd/controlC0<o:p></o:p></p>

<p class=MsoNormal>lrwx------ 1 user group 64 2010-05-05 23:22 /proc/1661/fd/89
-&gt; /dev/snd/controlC0<o:p></o:p></p>

<p class=MsoNormal>l-wx------ 1 user group 64 2010-05-05 23:22 /proc/1661/fd/9
-&gt; pipe:[9058]<o:p></o:p></p>

<p class=MsoNormal>lrwx------ 1 user group 64 2010-05-05 23:22 /proc/1661/fd/90
-&gt; /dev/snd/controlC0<o:p></o:p></p>

<p class=MsoNormal>lrwx------ 1 user group 64 2010-05-05 23:22 /proc/1661/fd/91
-&gt; /dev/snd/controlC0<o:p></o:p></p>

<p class=MsoNormal>lrwx------ 1 user group 64 2010-05-05 23:22 /proc/1661/fd/92
-&gt; /dev/snd/controlC0<o:p></o:p></p>

<p class=MsoNormal>lrwx------ 1 user group 64 2010-05-05 23:22 /proc/1661/fd/93
-&gt; /dev/snd/controlC0<o:p></o:p></p>

<p class=MsoNormal>lrwx------ 1 user group 64 2010-05-05 23:22 /proc/1661/fd/94
-&gt; /dev/snd/controlC0<o:p></o:p></p>

<p class=MsoNormal>lrwx------ 1 user group 64 2010-05-05 23:22 /proc/1661/fd/95
-&gt; /dev/snd/controlC0<o:p></o:p></p>

<p class=MsoNormal>lrwx------ 1 user group 64 2010-05-05 23:22 /proc/1661/fd/96
-&gt; /dev/snd/controlC0<o:p></o:p></p>

<p class=MsoNormal>lrwx------ 1 user group 64 2010-05-05 23:22 /proc/1661/fd/97
-&gt; /dev/snd/controlC0<o:p></o:p></p>

<p class=MsoNormal>lrwx------ 1 user group 64 2010-05-05 23:22 /proc/1661/fd/98
-&gt; /dev/snd/controlC0<o:p></o:p></p>

<p class=MsoNormal>lrwx------ 1 user group 64 2010-05-05 23:22 /proc/1661/fd/99
-&gt; /dev/snd/controlC0<o:p></o:p></p>

<p class=MsoNormal><o:p>&nbsp;</o:p></p>

<p class=MsoNormal>That&#8217;s a lot of snd devices, why so many?&nbsp; I have
over 160 of these things open.<o:p></o:p></p>

<p class=MsoNormal><o:p>&nbsp;</o:p></p>

<p class=MsoNormal>If I excise those (and the sockets and pipes, which I&#8217;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.)<o:p></o:p></p>

<p class=MsoNormal><o:p>&nbsp;</o:p></p>

<p class=MsoNormal>lr-x------ 1 user group 64 2010-05-05 23:22 /proc/1661/fd/0
-&gt; /dev/null<o:p></o:p></p>

<p class=MsoNormal>l-wx------ 1 user group 64 2010-05-05 23:22 /proc/1661/fd/1
-&gt; /var/log/mythtv/mythfrontend.log<o:p></o:p></p>

<p class=MsoNormal>lr-x------ 1 user group 64 2010-05-05 23:22
/proc/1661/fd/149 -&gt; /mnt/nas1/ISO/video.ISO<o:p></o:p></p>

<p class=MsoNormal>lrwx------ 1 user group 64 2010-05-05 23:22
/proc/1661/fd/151 -&gt; /dev/dri/card0<o:p></o:p></p>

<p class=MsoNormal>lr-x------ 1 user group 64 2010-05-05 23:22
/proc/1661/fd/157 -&gt; /dev/snd/timer<o:p></o:p></p>

<p class=MsoNormal>lrwx------ 1 user group 64 2010-05-05 23:22
/proc/1661/fd/158 -&gt; /dev/snd/pcmC0D0p<o:p></o:p></p>

<p class=MsoNormal>l-wx------ 1 user group 64 2010-05-05 23:22 /proc/1661/fd/2
-&gt; /var/log/mythtv/mythfrontend.log<o:p></o:p></p>

<p class=MsoNormal>lr-x------ 1 user group 64 2010-05-05 23:22 /proc/1661/fd/30
-&gt; /tmp/mythtv_media<o:p></o:p></p>

<p class=MsoNormal><o:p>&nbsp;</o:p></p>

<p class=MsoNormal><o:p>&nbsp;</o:p></p>

</div>

</body>

</html>