qemu-e2k/include/qemu
Paolo Bonzini 3bbf572345 atomics: add explicit compiler fence in __atomic memory barriers
__atomic_thread_fence does not include a compiler barrier; in the
C++11 memory model, fences take effect in combination with other
atomic operations.  GCC implements this by making __atomic_load and
__atomic_store access memory as if the pointer was volatile, and
leaves no trace whatsoever of acquire and release fences in the
compiler's intermediate representation.

In QEMU, we want memory barriers to act on all memory, but at the same
time we would like to use __atomic_thread_fence for portability reasons.
Add compiler barriers manually around the __atomic_thread_fence.

Message-Id: <1433334080-14912-1-git-send-email-pbonzini@redhat.com>
Reviewed-by: Stefan Hajnoczi <stefanha@redhat.com>
Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
2015-06-05 19:45:13 +02:00
..
acl.h
aes.h
atomic.h atomics: add explicit compiler fence in __atomic memory barriers 2015-06-05 19:45:13 +02:00
bitmap.h bitmap: add atomic test and clear 2015-06-05 17:10:00 +02:00
bitops.h bitmap: add atomic set functions 2015-06-05 17:10:00 +02:00
bswap.h cpu_ldst.h, cpu-all.h, bswap.h: Update documentation on ld/st accessors 2015-01-20 15:19:35 +00:00
compatfd.h util: Remove unused functions 2015-04-30 16:05:48 +03:00
compiler.h
config-file.h
crc32c.h
envlist.h
error-report.h qemu-error: Add error_vreport() 2014-10-09 15:36:15 +02:00
event_notifier.h
fifo8.h
hbitmap.h block: Resize bitmaps on bdrv_truncate 2015-04-28 15:36:10 +02:00
host-utils.h
int128.h
iov.h
log.h qemu-log: add log category for MMU info 2014-12-16 18:43:19 +00:00
main-loop.h
module.h
notify.h
option_int.h
option.h qemu-img: Suppress unhelpful extra errors in convert, amend 2015-02-26 14:51:21 +01:00
osdep.h util: move read_password method out of qemu-img into osdep/oslib 2015-05-22 17:08:01 +02:00
queue.h queue: fix QSLIST_INSERT_HEAD_ATOMIC race 2015-03-12 17:41:23 +00:00
range.h
ratelimit.h
rcu_queue.h rcu: introduce RCU-enabled QLIST 2015-02-16 17:30:19 +01:00
rcu.h rcu: do not create thread in pthread_atfork callback 2015-04-01 10:06:38 +02:00
readline.h
rfifolock.h
seqlock.h
sockets.h socket shutdown 2015-01-16 13:06:17 +05:30
thread-posix.h
thread-win32.h
thread.h rcu: add rcu library 2015-02-02 16:55:10 +01:00
throttle.h
timer.h profiler: Reenable built-in profiler 2015-03-18 12:07:34 +01:00
tls.h
typedefs.h Add device listener interface 2015-01-20 14:24:07 +00:00
uri.h
xattr.h