control may be modifying it. Such access is restricted
using functions that
synchronize thread execution and also synchronize memory with respect to
other threads."
Thus, the lock-free ringbuffer is not portable. (What if the reader gets an
"old" value that is never updated?)
the kernel *requires* atomic operations to at least the same extent that audio
apps do. if you can run linux on a h/w platform, then the required
atomic ops are available.