I took a look at the locking problem, and I think it can be fixed rather
trivially. This is a minor problem in that it only affects the case where the
child doesn't share memory addresses - such as when happens by using
apr_proc_create. Hence, adding an 'apr_*_mutex_join' could solve the problem.
Here's my 2am approach for solving this - now the testglobalmutex passes for
FCNTL on Solaris. The others would need 'stub' implementations for join
implemented - or their join could call create if no special work is needed.
But, now that I understand the problem, I still don't see why this would be
considered a 1.0 showstopper. It can be fixed in 1.1 quite easily without
breaking any existing API calls. I will leave it to those who care to finish
this patch, if they so desire... -- justin
|