[mythtv-users] defunct mythfrontend children processes
Johnny Walker
johnnyjboss at gmail.com
Wed Nov 18 21:28:16 UTC 2009
I'm still in the middle of the 1st compile.
do you think I should kill it and try this instead?
On Wed, Nov 18, 2009 at 3:23 PM, Michael T. Dean
<mtdean at thirdcontact.com> wrote:
> On 11/18/2009 03:40 PM, Michael T. Dean wrote:
>>
>> On 11/18/2009 03:33 PM, Johnny Walker wrote:
>>>
>>> On Wed, Nov 18, 2009 at 2:25 PM, Michael T. Dean wrote:
>>>>
>>>> On 11/18/2009 03:18 PM, Johnny Walker wrote:
>>>>>
>>>>> My 3 zombie pids appear wihout me actually doing anything. It's
>>>>> immediately after boot.
>>>>
>>>> You know, Paul wasn't lying when he told you it's a) a known issue and
>>>> b)
>>>> due to problems with the media monitor code, as discussed in
>>>> http://svn.mythtv.org/trac/ticket/7135 .
>>>>
>>>> We don't have a fix for it, yet. If you're interested in fixing it,
>>>> please
>>>> read that ticket so you're not wasting time looking at MythWeather. :)
>>>
>>> I had discounted that answer since when i read the open ticket it
>>> appeared the patch didn't work for Bill Meek when he applied it 11
>>> days ago.
>>>
>>> I suppose I'll go apply the patch too...
>>
>> Discount the patch, not the answer. :) We need someone who can actually
>> reproduce the issue to fix it.
>
> Heh, though, now I think I know exactly what's happening (and why the first
> patch I had Bill try didn't work). Would you care to apply this completely
> untested patch and see what it does? (Only needs applied to the frontend
> system.)
>
> Testing would be so much easier if I could actually reproduce the issue. :)
>
> Mike
>
> Index: mythtv/libs/libmyth/mediamonitor-unix.cpp
> ===================================================================
> --- mythtv.orig/libs/libmyth/mediamonitor-unix.cpp 2009-09-19
> 13:56:48.000000000 -0400
> +++ mythtv/libs/libmyth/mediamonitor-unix.cpp 2009-11-18
> 16:01:06.000000000 -0500
> @@ -219,35 +219,34 @@
> ret.replace(QRegExp(".*/"), "/dev/");
>
> #ifdef linux
> - QProcess *udevinfo = new QProcess();
> - QTextStream stream(udevinfo);
> + QProcess udevinfo;
> + QTextStream stream(&udevinfo);
> QStringList args;
>
> args << "-q";
> args << "name";
> args << "-rp";
> args << sysfs;
> - udevinfo->start("udevinfo", args);
> + udevinfo.start("udevinfo", args);
>
> - if (!udevinfo->waitForStarted(2000 /*ms*/))
> + if (!udevinfo.waitForStarted(2000 /*ms*/))
> {
> VERBOSE(VB_MEDIA, msg + ", Error - udevinfo failed to start!");
> - udevinfo->deleteLater();
> return ret;
> }
>
> - if (!udevinfo->waitForFinished(2000 /*ms*/))
> + if (!udevinfo.waitForFinished(2000 /*ms*/))
> {
> VERBOSE(VB_MEDIA,
> msg + ", Error - udevinfo failed to end! Terminating");
> - udevinfo->kill();
> - udevinfo->deleteLater();
> + udevinfo.kill();
> + udevinfo.waitForFinished(2000 /*ms*/);
> return ret;
> }
>
> if ((print_verbose_messages & (VB_MEDIA|VB_EXTRA)) ==
> (VB_MEDIA|VB_EXTRA))
> {
> - udevinfo->setReadChannel(QProcess::StandardError);
> + udevinfo.setReadChannel(QProcess::StandardError);
>
> while (!stream.atEnd())
> {
> @@ -256,13 +255,12 @@
> }
> }
>
> - udevinfo->setReadChannel(QProcess::StandardOutput);
> + udevinfo.setReadChannel(QProcess::StandardOutput);
>
> ret = stream.readLine();
> if (ret.startsWith("device not found in database"))
> return ret;
>
> - udevinfo->deleteLater();
> #endif // linux
>
> VERBOSE(VB_MEDIA, msg + "->'" + ret + "'");
>
> _______________________________________________
> mythtv-users mailing list
> mythtv-users at mythtv.org
> http://mythtv.org/cgi-bin/mailman/listinfo/mythtv-users
>
>
More information about the mythtv-users
mailing list