Stas Bekman wrote: > > > > Well, the pid change is already out there in perl 5.8.1, so we need to > > make it more friendly for applications that embed perl on Linux. I think > > the fix should go both in blead and maint. > > Seeing the rush of restoring some things as they were in 5.8.0 for 5.8.2, I > just thought that this could be one of the things that needs to be reverted as > well. Of course if the patch that we discussed does the trick, than it's fine.
Haven't we another similar (but more general) problem with $$ ? While the PPID is cached in PL_ppid on Linux and for perl >= 5.8.1 with ithreads, the PID is cached, for all perl versions I know of, and on all platforms, in $$ (which is a regular SV). That means that if an application that embeds perl forks, $$ is not going to be updated. As far as I can tell this doesn't impact mod_perl 1, because of mod_perl_init_ids() in perl_util.c (called at child init time). I don't think this happens on mod_perl 2 with prefork MPM, but I'm not sure why. Could someone try with mod_perl 2 / threaded or prefork MPM to see if the problem on $$ exists ? (Sorry, lacking time to test this myself now) I see that mod_perl 2 has a function modperl_perl_init_ids() in modperl_perl.c. That would probably a good place to reinit PL_ppid as well. (I tend to think that the best way to handle this in the general case is to provide from perl a public API to reset $$ and ppid.) --------------------------------------------------------------------- To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]