qemu/atomic.h: rename atomic_ to qatomic_
clang's C11 atomic_fetch_*() functions only take a C11 atomic type pointer argument. QEMU uses direct types (int, etc) and this causes a compiler error when a QEMU code calls these functions in a source file that also included <stdatomic.h> via a system header file: $ CC=clang CXX=clang++ ./configure ... && make ../util/async.c:79:17: error: address argument to atomic operation must be a pointer to _Atomic type ('unsigned int *' invalid) Avoid using atomic_*() names in QEMU's atomic.h since that namespace is used by <stdatomic.h>. Prefix QEMU's APIs with 'q' so that atomic.h and <stdatomic.h> can co-exist. I checked /usr/include on my machine and searched GitHub for existing "qatomic_" users but there seem to be none. This patch was generated using: $ git grep -h -o '\<atomic\(64\)\?_[a-z0-9_]\+' include/qemu/atomic.h | \ sort -u >/tmp/changed_identifiers $ for identifier in $(</tmp/changed_identifiers); do sed -i "s%\<$identifier\>%q$identifier%g" \ $(git grep -I -l "\<$identifier\>") done I manually fixed line-wrap issues and misaligned rST tables. Signed-off-by:Stefan Hajnoczi <stefanha@redhat.com> Reviewed-by:
Philippe Mathieu-Daudé <philmd@redhat.com> Acked-by:
Paolo Bonzini <pbonzini@redhat.com> Message-Id: <20200923105646.47864-1-stefanha@redhat.com>
Showing
- accel/kvm/kvm-all.c 6 additions, 6 deletionsaccel/kvm/kvm-all.c
- accel/tcg/atomic_template.h 10 additions, 10 deletionsaccel/tcg/atomic_template.h
- accel/tcg/cpu-exec.c 8 additions, 7 deletionsaccel/tcg/cpu-exec.c
- accel/tcg/cputlb.c 12 additions, 12 deletionsaccel/tcg/cputlb.c
- accel/tcg/tcg-all.c 1 addition, 1 deletionaccel/tcg/tcg-all.c
- accel/tcg/translate-all.c 28 additions, 27 deletionsaccel/tcg/translate-all.c
- audio/jackaudio.c 9 additions, 9 deletionsaudio/jackaudio.c
- block.c 2 additions, 2 deletionsblock.c
- block/block-backend.c 8 additions, 7 deletionsblock/block-backend.c
- block/io.c 24 additions, 24 deletionsblock/io.c
- block/nfs.c 1 addition, 1 deletionblock/nfs.c
- block/sheepdog.c 1 addition, 1 deletionblock/sheepdog.c
- block/throttle-groups.c 6 additions, 6 deletionsblock/throttle-groups.c
- block/throttle.c 2 additions, 2 deletionsblock/throttle.c
- blockdev.c 1 addition, 1 deletionblockdev.c
- blockjob.c 1 addition, 1 deletionblockjob.c
- contrib/libvhost-user/libvhost-user.c 1 addition, 1 deletioncontrib/libvhost-user/libvhost-user.c
- cpus-common.c 13 additions, 13 deletionscpus-common.c
- docs/devel/atomics.rst 68 additions, 68 deletionsdocs/devel/atomics.rst
- docs/devel/lockcnt.txt 4 additions, 4 deletionsdocs/devel/lockcnt.txt
Loading
Please register or sign in to comment