OT: changes to wait() in later 2.4.x kernels?
dhubbard at dino.hostasaurus.com
Mon Jun 24 21:33:01 CDT 2002
Sorry for the OT post, didn't really know where to ask.
The problem happens on my Dell servers though. :-)
I run web sites off of Dell servers with a variety of
RedHat versions. They run an ecommerce application called
Empresa written by Miva (http://www.miva.com). This
Empresa program is built to be used out of cgi-bin as
a handler for .mv files. So in Apache you add a handler
for .mv to call the Empresa binary sitting in your
cgi-bin. This is the same way PHP works when installed
in cgi mode, it gets called for every request.
On RedHat 7.3 (2.4.18), I am seeing noticeable pauses in
client download when viewing pages generated by this
program. I've discovered that the problem is that the
program does it's job, spits out the content, and then
gets stuck in a defunct state for maybe 1/2 to 1 second.
During this pause, apache doesn't serve the client any of
the images it's requested that were referred to in the
html output from this program, so the client 'sees' a pause.
This behavior never happened on older RedHat installs on a
wide variety of Dell servers. I put 7.3 on another box,
same results. So then I put the 7.2 kernel on these 7.3
boxes, problem goes away!! I built a 2.4.18 kernel from
kernel.org, problem comes back. So it definitely seems to
be something relating to the kernel that has changed from
redhat 2.4.9 to any high kernel. The company says their
program is not at fault since it's in defunct state and
that means it has already exited, it's Apache or the kernel
not cleaning up with a wait() soon enough. Since Apache
doesn't exhibit this behavior on older kernels, that is
when I started blaming the kernel.
So, does anyone know where I'd look for more information
on what has changed in the kernel with regard to wait()
or if this has been seen with other apps, etc.?
Thanks a lot,
More information about the Linux-PowerEdge