Thom May wrote:
My only objection to the patch is that it solves the problem by switching to the mutex-based default implementation on Linux--which defeats the whole point of the API on one of our most important platforms. I suppose we can fix that by using inline assembly to generate the atomic operations for the Linux+gcc+x86 case.
Which is great for the x86 case, but neglects the other 10+ architectures that linux runs on (including things like IA64, HP's PA-RISC, UltraSparc, PowerPC etc).
Debian 3.0 is gonna be available (May 1, hopefully) on 11 architectures, and certainly people would expect APR to be able to support all of them the same - are you proposing to keep inline assembler in APR for all these cases?
Of course not. The platforms for which people contribute and maintain real atomic operations will have optimal implementations, and all other platforms will have the (functional but slower) mutex-based default.
--Brian
