On Fri, 16 Jun 2006, Torsten Foertsch wrote:

Yes, since 5.8.1. The problem is that the now old linux-threads implementation
returns different values for getpid() and getppid() for different threads.
Hence Perl decides better to cache these values and update the cache on
fork() to make it more compatible with other thread implementations. Since
Apache does its own fork the cache is not updated. Mp2 contains code that
handles the situation but mp1 does not.

For more information see also

http://www.gossamer-threads.com/lists/perl/porters/193162
http://www.gossamer-threads.com/lists/perl/porters/175806

Dave, have you tried the proposed approach from the thread you mentioned?

Requiring syscall.ph seems like a nasty hack to me. That _is_ what we've done with our local version here at Socialtext, but I was planning to use Linux::Pid for a CPAN version, since it seems cleaners.

If you are working on Apache::SizeLimit maybe you could incorporate also
Linux::Smaps for newer kernels. Also the problem of counting out of core
pages could be addressed at least in the docs, see

http://www.gossamer-threads.com/lists/modperl/dev/84375

Yeah, I noticed that Apache2::SizeLimit had a bunch of changes. I was thinking I could incorporate those too.


-dave

/*===================================================
VegGuide.Org                        www.BookIRead.com
Your guide to all that's veg.       My book blog
===================================================*/

Reply via email to