[mythtv-users] Is this normal?

John Goerzen jgoerzen at complete.org
Tue Oct 19 23:58:40 UTC 2004


On Tue, Oct 19, 2004 at 03:13:12PM -0700, Bruce Markey wrote:
> I always get a chuckle out of this type of reply. Michael's
> message was accurate as usual. The same can not be said of
> anything in your reply other than perhaps you didn't make
> any spelling errors.

That's not true at all (well, maybe the spelling part, but I haven't
checked <g>)

> John Goerzen wrote:
> >On Monday 18 October 2004 11:37 pm, Michael T. Dean wrote:
> >
> >No, you're confusing the issue.  A distinct PID is a distinct PID, no 
> >matter what.
> 
> And each thread has a distinct PID Linux 2.4 or earlier no
> matter what.

OK, and the point is...?

> >  How do you know, anyway, that mythfrontend is 
> >multithreaded?
> 
> Um, because it is? There are 32 "pthread_create"s in the source

OK, fair enough.

> >In my experience, when mythfrontend apepars to crash, it often leaves 
> >behind some processes that must be manually killed.
> 
> Uh-huh. Nice try. Even if this were true, failure to reap
> zombie PIDs would be a kernel bug. More likely, your "crash"

I'm not talking about a zombie PID, and that would be an init bug
anyway.

> is really hung and killing the one process will remove all
> the thread PIDs from the process table.

Yes, it is true that killing one will get them all, but on the other
hand, it exhibits all the symptoms of a crash (interface disappears, X
background reappears, etc.) without actually dying at times.  I've
seen that in 0.15 and 0.16.  And what's more, regardless of whether
killing one would remove them all, it doesn't mean that what I said
was wrong.

> >>Therefore, it's completely normal.
> >>
> >>You'll see the same thing with mysqld, httpd, and many other
> >>processes on the system.
> >
> >
> >httpd, for one, uses fork.
> 
> httpd != mythfrontend . In fact, httpd != httpd . Lots of web

Yes, I'm aware of that.  It was his example.

> servers daemons use the process name "httpd". There have been
> multi-threaded web servers dating back to 1994.

I'm aware of that, but by far the most popular webserver that gets
installed as httpd is Apache, which until Apache2 (*very* recently in
Apache terms) used only fork().

> >It is *not* what you have described; these 
> >are separate processes.
> 
> They are threads within the mythfrontend process. As always,
> putting asterisks around a word does not make the statement
> correct. More often, it indicates the author can not be sure
> of something they are trying to impose and emphasis would
> make it seen as if it should not be questioned.

Attacking asterisks does not mean that Apache (or any other common
httpd) happens to be multithreaded, or that mysql happens to be (I
don't know aht the situation is there, but I don't think it is).  Or
that my mythfrontend doesn't occasionally die.  Really, how could you
know that anyway?

Everything I said was correct.  It is possible that he had a
mythfrontend crash.  It is possible that he didn't, too.  The original
reply didn't even contemplate that possibility, and moreover, confused
the issue by lumping programs not normally multithreaded in with the
multithreaded discussion.

-- John


More information about the mythtv-users mailing list