Joe Orton wrote:
There are issues with use of asm/atomic.h on Linux: according to the kernel gurus here this is a header for internal use of the kernel, and shouldn't be used from userspace.
The problems are, if I understand them correctly:
- with newer kernel/glibc combinations (e.g the RHL7.3 beta) this stuff really isn't exported to userspace, so they can't be used at all. (this is the most serious problem, it prevents APR from building)
Thanks for reporting this. I agree that we need to stop relying on asm/atomic.h on Linux.
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.
--Brian
