diff options
author | Eric Wong <normalperson@yhbt.net> | 2008-09-05 00:37:17 -0700 |
---|---|---|
committer | Eric Wong <normalperson@yhbt.net> | 2008-09-05 00:37:17 -0700 |
commit | 9ff024638620a6b2ba9cdd77e7d7db68516ecdac (patch) | |
tree | 286d8108de83b5f5e2954128baf1c210356593e0 /src/list.c | |
parent | 117ed71c73b643cccfaf57d3b480c158c190f4e0 (diff) | |
download | mpd-9ff024638620a6b2ba9cdd77e7d7db68516ecdac.tar.gz mpd-9ff024638620a6b2ba9cdd77e7d7db68516ecdac.tar.xz mpd-9ff024638620a6b2ba9cdd77e7d7db68516ecdac.zip |
audio_format: volatile removal
volatile provides absolutely no guarantee thread-safety in SMP
environments. volatile was designed to access memory locations
in peripheral hardware directly; not for SMP. If volatile is
needed to work properly on SMP, then it is only hiding subtle
bugs.
volatile only prevents the /compiler/ from making optimizations
when accessing variables. CPUs do their own optimizations at
runtime so it cannot guarantee registers of CPUs are flushed
to memory cache-coherent access on different CPUs.
Furthermore, the thread-communication via condition variables
between threads sharing audio formats already results in memory
barriers.
Diffstat (limited to 'src/list.c')
0 files changed, 0 insertions, 0 deletions