Joe Orton wrote: > On Mon, May 14, 2007 at 09:54:10AM -0300, Davi Arnaut wrote: >> Joe Orton wrote: >>> On Fri, May 11, 2007 at 10:38:01PM -0300, Davi Arnaut wrote: >>>> The patches improves the locking interaction with buffering. But, quite >>>> frankly, the unix file_io locking and buffering is a bit messed. There >>>> is no clear indication which functions are protected by APR_XTHREAD, >>>> checks for partial writes on flushing are missing, buffering and file >>>> positioning don't play well together, et cetera. >>> I don't disagree that the existing buffering/mutex stuff is a mess, but >>> nested mutexes are not available on all platforms, so they can't be >>> relied upon. >> Pools also use nested mutexes. > > Only in the APR_POOL_DEBUG code.
I missed that, sorry. > >> So, I guess those platforms need to be fixed. BTW, which platforms >> that use unix/file_io don't support nested mutexes? > > Anything which doesn't support PTHREAD_MUTEX_RECURSIVE: older Linuxes, > probably some BSDs; not sure about any of the more exotic Unixes. OK. -- Davi Arnaut
