docs/devel/testing.rst | 107 +++++++++++++++++++++ configure | 48 ++++++++- Makefile | 16 +-- include/exec/exec-all.h | 8 ++ include/hw/core/cpu.h | 6 +- include/qemu/thread.h | 38 +++++++- include/qemu/tsan.h | 71 ++++++++++++++ include/tcg/tcg.h | 1 + accel/tcg/cputlb.c | 15 +++ accel/tcg/translate-all.c | 17 ++++ cpus-common.c | 25 ++--- cpus.c | 14 ++- exec.c | 1 + hw/core/cpu.c | 1 + tcg/tcg.c | 9 ++ util/coroutine-ucontext.c | 66 +++++++++++-- util/qemu-thread-posix.c | 2 + util/qht.c | 1 + .cirrus.yml | 6 +- .shippable.yml | 12 +-- dtc | 2 +- tests/Makefile.include | 9 +- tests/docker/dockerfiles/fedora.docker | 2 +- tests/docker/dockerfiles/ubuntu2004.docker | 65 +++++++++++++ tests/docker/test-tsan | 44 +++++++++ tests/qtest/Makefile.include | 7 +- tests/tsan/blacklist.tsan | 10 ++ tests/tsan/suppressions.tsan | 14 +++ 28 files changed, 557 insertions(+), 60 deletions(-) create mode 100644 include/qemu/tsan.h create mode 100644 tests/docker/dockerfiles/ubuntu2004.docker create mode 100755 tests/docker/test-tsan create mode 100644 tests/tsan/blacklist.tsan create mode 100644 tests/tsan/suppressions.tsan
Hi,
This is the current testing/next queue. Aside from the minor bumps and
updates this returns --enable-tsan to the build.
This can help with debugging race conditions. You need a fairly recent
clang to enable it but configure will bug out if it can't be turned
on. Thanks to Robert Foley for picking up Emilio's work and getting it
through the review process.
There are a couple of minor testing updates including re-enabling the
cross-builds I disabled in the last PR I made as, predictably, Debian
finally pushed through the package update just as I turned the tests
off.
I hope to put together a PR on Tuesday.
The following are still missing reviews:
- cirrus.yml: serialise make check
- Revert ".shippable: temporaily disable some cross builds"
- tests/docker: bump fedora to 32
Alex Bennée (3):
tests/docker: bump fedora to 32
Revert ".shippable: temporaily disable some cross builds"
cirrus.yml: serialise make check
Claudio Fontana (2):
Makefile: dtc: update, build the libfdt target
Makefile: remove old compatibility gunks
Emilio G. Cota (7):
cpu: convert queued work to a QSIMPLEQ
thread: add qemu_spin_destroy
cputlb: destroy CPUTLB with tlb_destroy
qht: call qemu_spin_destroy for head buckets
tcg: call qemu_spin_destroy for tb->jmp_lock
translate-all: call qemu_spin_destroy for PageDesc
thread: add tsan annotations to QemuSpin
Lingfeng Yang (1):
configure: add --enable-tsan flag + fiber annotations for
coroutine-ucontext
Robert Foley (5):
tests/docker: Added docker build support for TSan.
include/qemu: Added tsan.h for annotations.
util: Added tsan annotate for thread name.
docs: Added details on TSan to testing.rst
tests: Disable select tests under TSan, which hit TSan issue.
docs/devel/testing.rst | 107 +++++++++++++++++++++
configure | 48 ++++++++-
Makefile | 16 +--
include/exec/exec-all.h | 8 ++
include/hw/core/cpu.h | 6 +-
include/qemu/thread.h | 38 +++++++-
include/qemu/tsan.h | 71 ++++++++++++++
include/tcg/tcg.h | 1 +
accel/tcg/cputlb.c | 15 +++
accel/tcg/translate-all.c | 17 ++++
cpus-common.c | 25 ++---
cpus.c | 14 ++-
exec.c | 1 +
hw/core/cpu.c | 1 +
tcg/tcg.c | 9 ++
util/coroutine-ucontext.c | 66 +++++++++++--
util/qemu-thread-posix.c | 2 +
util/qht.c | 1 +
.cirrus.yml | 6 +-
.shippable.yml | 12 +--
dtc | 2 +-
tests/Makefile.include | 9 +-
tests/docker/dockerfiles/fedora.docker | 2 +-
tests/docker/dockerfiles/ubuntu2004.docker | 65 +++++++++++++
tests/docker/test-tsan | 44 +++++++++
tests/qtest/Makefile.include | 7 +-
tests/tsan/blacklist.tsan | 10 ++
tests/tsan/suppressions.tsan | 14 +++
28 files changed, 557 insertions(+), 60 deletions(-)
create mode 100644 include/qemu/tsan.h
create mode 100644 tests/docker/dockerfiles/ubuntu2004.docker
create mode 100755 tests/docker/test-tsan
create mode 100644 tests/tsan/blacklist.tsan
create mode 100644 tests/tsan/suppressions.tsan
--
2.20.1
Patchew URL: https://patchew.org/QEMU/20200612190237.30436-1-alex.bennee@linaro.org/
Hi,
This series failed the asan build test. Please find the testing commands and
their output below. If you have Docker installed, you can probably reproduce it
locally.
=== TEST SCRIPT BEGIN ===
#!/bin/bash
export ARCH=x86_64
make docker-image-fedora V=1 NETWORK=1
time make docker-test-debug@fedora TARGET_LIST=x86_64-softmmu J=14 NETWORK=1
=== TEST SCRIPT END ===
perl-Encode-devel x86_64 4:3.06-445.fc32 updates 42 k
perl-Env noarch 1.04-440.fc32 fedora 19 k
perl-Errno x86_64 1.30-453.fc32 updates 24 k
perl-Error noarch 1:0.17029-1.fc32 fedora 42 k
perl-Exporter noarch 5.74-2.fc32 fedora 32 k
perl-Exporter-Tiny noarch 1.002001-5.fc32 fedora 51 k
perl-ExtUtils-CBuilder noarch 1:0.280234-2.fc32 fedora 47 k
---
(523/711): perl-Env-1.04-440.fc32.noarch.rpm 288 kB/s | 19 kB 00:00
(524/711): perl-Encode-Locale-1.05-15.fc32.noar 154 kB/s | 19 kB 00:00
(525/711): perl-Exporter-5.74-2.fc32.noarch.rpm 466 kB/s | 32 kB 00:00
(526/711): perl-Error-0.17029-1.fc32.noarch.rpm 513 kB/s | 42 kB 00:00
(527/711): perl-Exporter-Tiny-1.002001-5.fc32.n 635 kB/s | 51 kB 00:00
(528/711): perl-ExtUtils-CBuilder-0.280234-2.fc 681 kB/s | 47 kB 00:00
(529/711): perl-ExtUtils-Command-7.44-2.fc32.no 180 kB/s | 14 kB 00:00
---
Installing : perl-DB_File-1.853-2.fc32.x86_64 182/725
Installing : perl-Devel-Size-0.83-5.fc32.x86_64 183/725
Installing : perl-Env-1.04-440.fc32.noarch 184/725
Installing : perl-Error-1:0.17029-1.fc32.noarch 185/725
Installing : perl-ExtUtils-MM-Utils-2:7.44-2.fc32.noarch 186/725
Installing : perl-IPC-SysV-2.07-442.fc32.x86_64 187/725
Installing : perl-IPC-System-Simple-1.30-1.fc32.noarch 188/725
---
Verifying : perl-Digest-SHA-1:6.02-442.fc32.x86_64 522/725
Verifying : perl-Encode-Locale-1.05-15.fc32.noarch 523/725
Verifying : perl-Env-1.04-440.fc32.noarch 524/725
Verifying : perl-Error-1:0.17029-1.fc32.noarch 525/725
Verifying : perl-Exporter-5.74-2.fc32.noarch 526/725
Verifying : perl-Exporter-Tiny-1.002001-5.fc32.noarch 527/725
Verifying : perl-ExtUtils-CBuilder-1:0.280234-2.fc32.noarch 528/725
---
perl-Encode-devel-4:3.06-445.fc32.x86_64
perl-Env-1.04-440.fc32.noarch
perl-Errno-1.30-453.fc32.x86_64
perl-Error-1:0.17029-1.fc32.noarch
perl-Exporter-5.74-2.fc32.noarch
perl-Exporter-Tiny-1.002001-5.fc32.noarch
perl-ExtUtils-CBuilder-1:0.280234-2.fc32.noarch
---
CC contrib/vhost-user-input/main.o
LINK tests/qemu-iotests/socket_scm_helper
GEN docs/interop/qemu-qmp-ref.html
/usr/bin/ld: /usr/lib64/clang/10.0.0/lib/linux/libclang_rt.asan-x86_64.a(asan_interceptors_vfork.S.o): warning: common of `__interception::real_vfork' overridden by definition from /usr/lib64/clang/10.0.0/lib/linux/libclang_rt.asan-x86_64.a(asan_interceptors.cpp.o)
GEN docs/interop/qemu-qmp-ref.txt
GEN docs/interop/qemu-qmp-ref.7
CC qga/commands.o
---
AR libvhost-user.a
GEN docs/interop/qemu-ga-ref.html
GEN docs/interop/qemu-ga-ref.txt
/usr/bin/ld: /usr/lib64/clang/10.0.0/lib/linux/libclang_rt.asan-x86_64.a(asan_interceptors_vfork.S.o): warning: common of `__interception::real_vfork' overridden by definition from /usr/lib64/clang/10.0.0/lib/linux/libclang_rt.asan-x86_64.a(asan_interceptors.cpp.o)
GEN docs/interop/qemu-ga-ref.7
AS pc-bios/optionrom/kvmvapic.o
LINK qemu-keymap
AS pc-bios/optionrom/pvh.o
LINK ivshmem-client
/usr/bin/ld: /usr/lib64/clang/10.0.0/lib/linux/libclang_rt.asan-x86_64.a(asan_interceptors_vfork.S.o): warning: common of `__interception::real_vfork' overridden by definition from /usr/lib64/clang/10.0.0/lib/linux/libclang_rt.asan-x86_64.a(asan_interceptors.cpp.o)
/usr/bin/ld: /usr/lib64/clang/10.0.0/lib/linux/libclang_rt.asan-x86_64.a(asan_interceptors_vfork.S.o): warning: common of `__interception::real_vfork' overridden by definition from /usr/lib64/clang/10.0.0/lib/linux/libclang_rt.asan-x86_64.a(asan_interceptors.cpp.o)
CC pc-bios/optionrom/pvh_main.o
BUILD pc-bios/optionrom/multiboot.img
BUILD pc-bios/optionrom/linuxboot.img
---
BUILD pc-bios/optionrom/linuxboot_dma.img
BUILD pc-bios/optionrom/linuxboot_dma.raw
SIGN pc-bios/optionrom/linuxboot_dma.bin
/usr/bin/ld: /usr/lib64/clang/10.0.0/lib/linux/libclang_rt.asan-x86_64.a(asan_interceptors_vfork.S.o): warning: common of `__interception::real_vfork' overridden by definition from /usr/lib64/clang/10.0.0/lib/linux/libclang_rt.asan-x86_64.a(asan_interceptors.cpp.o)
LINK qemu-storage-daemon
/usr/bin/ld: /usr/lib64/clang/10.0.0/lib/linux/libclang_rt.asan-x86_64.a(asan_interceptors_vfork.S.o): warning: common of `__interception::real_vfork' overridden by definition from /usr/lib64/clang/10.0.0/lib/linux/libclang_rt.asan-x86_64.a(asan_interceptors.cpp.o)
LINK qemu-io
/usr/bin/ld: /usr/lib64/clang/10.0.0/lib/linux/libclang_rt.asan-x86_64.a(asan_interceptors_vfork.S.o): warning: common of `__interception::real_vfork' overridden by definition from /usr/lib64/clang/10.0.0/lib/linux/libclang_rt.asan-x86_64.a(asan_interceptors.cpp.o)
/usr/bin/ld: /usr/lib64/clang/10.0.0/lib/linux/libclang_rt.asan-x86_64.a(asan_interceptors_vfork.S.o): warning: common of `__interception::real_vfork' overridden by definition from /usr/lib64/clang/10.0.0/lib/linux/libclang_rt.asan-x86_64.a(asan_interceptors.cpp.o)
LINK qemu-edid
BUILD pc-bios/optionrom/pvh.img
BUILD pc-bios/optionrom/pvh.raw
LINK fsdev/virtfs-proxy-helper
SIGN pc-bios/optionrom/pvh.bin
/usr/bin/ld: /usr/lib64/clang/10.0.0/lib/linux/libclang_rt.asan-x86_64.a(asan_interceptors_vfork.S.o): warning: common of `__interception::real_vfork' overridden by definition from /usr/lib64/clang/10.0.0/lib/linux/libclang_rt.asan-x86_64.a(asan_interceptors.cpp.o)
LINK scsi/qemu-pr-helper
/usr/bin/ld: /usr/lib64/clang/10.0.0/lib/linux/libclang_rt.asan-x86_64.a(asan_interceptors_vfork.S.o): warning: common of `__interception::real_vfork' overridden by definition from /usr/lib64/clang/10.0.0/lib/linux/libclang_rt.asan-x86_64.a(asan_interceptors.cpp.o)
LINK qemu-bridge-helper
/usr/bin/ld: /usr/lib64/clang/10.0.0/lib/linux/libclang_rt.asan-x86_64.a(asan_interceptors_vfork.S.o): warning: common of `__interception::real_vfork' overridden by definition from /usr/lib64/clang/10.0.0/lib/linux/libclang_rt.asan-x86_64.a(asan_interceptors.cpp.o)
LINK virtiofsd
LINK vhost-user-input
/usr/bin/ld: /usr/lib64/clang/10.0.0/lib/linux/libclang_rt.asan-x86_64.a(asan_interceptors_vfork.S.o): warning: common of `__interception::real_vfork' overridden by definition from /usr/lib64/clang/10.0.0/lib/linux/libclang_rt.asan-x86_64.a(asan_interceptors.cpp.o)
/usr/bin/ld: /usr/lib64/clang/10.0.0/lib/linux/libclang_rt.asan-x86_64.a(asan_interceptors_vfork.S.o): warning: common of `__interception::real_vfork' overridden by definition from /usr/lib64/clang/10.0.0/lib/linux/libclang_rt.asan-x86_64.a(asan_interceptors.cpp.o)
/usr/bin/ld: /usr/lib64/clang/10.0.0/lib/linux/libclang_rt.asan-x86_64.a(asan_interceptors_vfork.S.o): warning: common of `__interception::real_vfork' overridden by definition from /usr/lib64/clang/10.0.0/lib/linux/libclang_rt.asan-x86_64.a(asan_interceptors.cpp.o)
LINK qemu-ga
/usr/bin/ld: /usr/lib64/clang/10.0.0/lib/linux/libclang_rt.asan-x86_64.a(asan_interceptors_vfork.S.o): warning: common of `__interception::real_vfork' overridden by definition from /usr/lib64/clang/10.0.0/lib/linux/libclang_rt.asan-x86_64.a(asan_interceptors.cpp.o)
GEN x86_64-softmmu/hmp-commands.h
GEN x86_64-softmmu/hmp-commands-info.h
GEN x86_64-softmmu/config-devices.h
---
CC x86_64-softmmu/tcg/optimize.o
CC x86_64-softmmu/fpu/softfloat.o
CC x86_64-softmmu/disas.o
/usr/bin/ld: /usr/lib64/clang/10.0.0/lib/linux/libclang_rt.asan-x86_64.a(asan_interceptors_vfork.S.o): warning: common of `__interception::real_vfork' overridden by definition from /usr/lib64/clang/10.0.0/lib/linux/libclang_rt.asan-x86_64.a(asan_interceptors.cpp.o)
GEN x86_64-softmmu/gdbstub-xml.c
CC x86_64-softmmu/arch_init.o
CC x86_64-softmmu/cpus.o
CC x86_64-softmmu/gdbstub.o
CC x86_64-softmmu/balloon.o
CC x86_64-softmmu/ioport.o
/tmp/qemu-test/src/fpu/softfloat.c:3365:13: error: bitwise negation of a boolean expression; did you mean logical negation? [-Werror,-Wbool-operation]
absZ &= ~ ( ( ( roundBits ^ 0x40 ) == 0 ) & roundNearestEven );
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
!
/tmp/qemu-test/src/fpu/softfloat.c:3423:18: error: bitwise negation of a boolean expression; did you mean logical negation? [-Werror,-Wbool-operation]
absZ0 &= ~ ( ( (uint64_t) ( absZ1<<1 ) == 0 ) & roundNearestEven );
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
!
/tmp/qemu-test/src/fpu/softfloat.c:3483:18: error: bitwise negation of a boolean expression; did you mean logical negation? [-Werror,-Wbool-operation]
absZ0 &= ~(((uint64_t)(absZ1<<1) == 0) & roundNearestEven);
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
!
/tmp/qemu-test/src/fpu/softfloat.c:3606:13: error: bitwise negation of a boolean expression; did you mean logical negation? [-Werror,-Wbool-operation]
zSig &= ~ ( ( ( roundBits ^ 0x40 ) == 0 ) & roundNearestEven );
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
!
/tmp/qemu-test/src/fpu/softfloat.c:3760:13: error: bitwise negation of a boolean expression; did you mean logical negation? [-Werror,-Wbool-operation]
zSig &= ~ ( ( ( roundBits ^ 0x200 ) == 0 ) & roundNearestEven );
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
!
/tmp/qemu-test/src/fpu/softfloat.c:3987:21: error: bitwise negation of a boolean expression; did you mean logical negation? [-Werror,-Wbool-operation]
~ ( ( (uint64_t) ( zSig1<<1 ) == 0 ) & roundNearestEven );
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
!
/tmp/qemu-test/src/fpu/softfloat.c:4003:22: error: bitwise negation of a boolean expression; did you mean logical negation? [-Werror,-Wbool-operation]
zSig0 &= ~ ( ( (uint64_t) ( zSig1<<1 ) == 0 ) & roundNearestEven );
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
!
/tmp/qemu-test/src/fpu/softfloat.c:4273:18: error: bitwise negation of a boolean expression; did you mean logical negation? [-Werror,-Wbool-operation]
zSig1 &= ~ ( ( zSig2 + zSig2 == 0 ) & roundNearestEven );
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
!
8 errors generated.
make[1]: *** [/tmp/qemu-test/src/rules.mak:69: fpu/softfloat.o] Error 1
make[1]: *** Waiting for unfinished jobs....
make: *** [Makefile:527: x86_64-softmmu/all] Error 2
Traceback (most recent call last):
File "./tests/docker/docker.py", line 665, in <module>
sys.exit(main())
---
raise CalledProcessError(retcode, cmd)
subprocess.CalledProcessError: Command '['sudo', '-n', 'docker', 'run', '--label', 'com.qemu.instance.uuid=0707a4f0c5be4f58ae0257e7d83b37cd', '-u', '1003', '--security-opt', 'seccomp=unconfined', '--rm', '-e', 'TARGET_LIST=x86_64-softmmu', '-e', 'EXTRA_CONFIGURE_OPTS=', '-e', 'V=', '-e', 'J=14', '-e', 'DEBUG=', '-e', 'SHOW_ENV=', '-e', 'CCACHE_DIR=/var/tmp/ccache', '-v', '/home/patchew2/.cache/qemu-docker-ccache:/var/tmp/ccache:z', '-v', '/var/tmp/patchew-tester-tmp-qa5bhn4d/src/docker-src.2020-06-12-15.38.21.31693:/var/tmp/qemu:z,ro', 'qemu:fedora', '/var/tmp/qemu/run', 'test-debug']' returned non-zero exit status 2.
filter=--filter=label=com.qemu.instance.uuid=0707a4f0c5be4f58ae0257e7d83b37cd
make[1]: *** [docker-run] Error 1
make[1]: Leaving directory `/var/tmp/patchew-tester-tmp-qa5bhn4d/src'
make: *** [docker-run-test-debug@fedora] Error 2
real 6m42.854s
user 0m9.836s
The full log is available at
http://patchew.org/logs/20200612190237.30436-1-alex.bennee@linaro.org/testing.asan/?type=message.
---
Email generated automatically by Patchew [https://patchew.org/].
Please send your feedback to patchew-devel@redhat.com
On 6/12/20 9:44 PM, no-reply@patchew.org wrote: > Patchew URL: https://patchew.org/QEMU/20200612190237.30436-1-alex.bennee@linaro.org/ > CC x86_64-softmmu/fpu/softfloat.o > CC x86_64-softmmu/disas.o > /usr/bin/ld: /usr/lib64/clang/10.0.0/lib/linux/libclang_rt.asan-x86_64.a(asan_interceptors_vfork.S.o): warning: common of `__interception::real_vfork' overridden by definition from /usr/lib64/clang/10.0.0/lib/linux/libclang_rt.asan-x86_64.a(asan_interceptors.cpp.o) > GEN x86_64-softmmu/gdbstub-xml.c > CC x86_64-softmmu/arch_init.o > CC x86_64-softmmu/cpus.o > CC x86_64-softmmu/gdbstub.o > CC x86_64-softmmu/balloon.o > CC x86_64-softmmu/ioport.o > /tmp/qemu-test/src/fpu/softfloat.c:3365:13: error: bitwise negation of a boolean expression; did you mean logical negation? [-Werror,-Wbool-operation] > absZ &= ~ ( ( ( roundBits ^ 0x40 ) == 0 ) & roundNearestEven ); > ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ > ! > /tmp/qemu-test/src/fpu/softfloat.c:3423:18: error: bitwise negation of a boolean expression; did you mean logical negation? [-Werror,-Wbool-operation] > absZ0 &= ~ ( ( (uint64_t) ( absZ1<<1 ) == 0 ) & roundNearestEven ); > ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ > ! > /tmp/qemu-test/src/fpu/softfloat.c:3483:18: error: bitwise negation of a boolean expression; did you mean logical negation? [-Werror,-Wbool-operation] > absZ0 &= ~(((uint64_t)(absZ1<<1) == 0) & roundNearestEven); > ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ > ! > /tmp/qemu-test/src/fpu/softfloat.c:3606:13: error: bitwise negation of a boolean expression; did you mean logical negation? [-Werror,-Wbool-operation] > zSig &= ~ ( ( ( roundBits ^ 0x40 ) == 0 ) & roundNearestEven ); > ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ > ! > /tmp/qemu-test/src/fpu/softfloat.c:3760:13: error: bitwise negation of a boolean expression; did you mean logical negation? [-Werror,-Wbool-operation] > zSig &= ~ ( ( ( roundBits ^ 0x200 ) == 0 ) & roundNearestEven ); > ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ > ! > /tmp/qemu-test/src/fpu/softfloat.c:3987:21: error: bitwise negation of a boolean expression; did you mean logical negation? [-Werror,-Wbool-operation] > ~ ( ( (uint64_t) ( zSig1<<1 ) == 0 ) & roundNearestEven ); > ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ > ! > /tmp/qemu-test/src/fpu/softfloat.c:4003:22: error: bitwise negation of a boolean expression; did you mean logical negation? [-Werror,-Wbool-operation] > zSig0 &= ~ ( ( (uint64_t) ( zSig1<<1 ) == 0 ) & roundNearestEven ); > ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ > ! > /tmp/qemu-test/src/fpu/softfloat.c:4273:18: error: bitwise negation of a boolean expression; did you mean logical negation? [-Werror,-Wbool-operation] > zSig1 &= ~ ( ( zSig2 + zSig2 == 0 ) & roundNearestEven ); > ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ > ! > 8 errors generated. > make[1]: *** [/tmp/qemu-test/src/rules.mak:69: fpu/softfloat.o] Error 1 > make[1]: *** Waiting for unfinished jobs.... > make: *** [Makefile:527: x86_64-softmmu/all] Error 2 The fix for this is in Richard's tcg queue: https://www.mail-archive.com/qemu-devel@nongnu.org/msg711229.html
Philippe Mathieu-Daudé <f4bug@amsat.org> writes: > On 6/12/20 9:44 PM, no-reply@patchew.org wrote: >> Patchew URL: https://patchew.org/QEMU/20200612190237.30436-1-alex.bennee@linaro.org/ >> CC x86_64-softmmu/fpu/softfloat.o >> CC x86_64-softmmu/disas.o >> /usr/bin/ld: /usr/lib64/clang/10.0.0/lib/linux/libclang_rt.asan-x86_64.a(asan_interceptors_vfork.S.o): warning: common of `__interception::real_vfork' overridden by definition from /usr/lib64/clang/10.0.0/lib/linux/libclang_rt.asan-x86_64.a(asan_interceptors.cpp.o) >> GEN x86_64-softmmu/gdbstub-xml.c >> CC x86_64-softmmu/arch_init.o >> CC x86_64-softmmu/cpus.o >> CC x86_64-softmmu/gdbstub.o >> CC x86_64-softmmu/balloon.o >> CC x86_64-softmmu/ioport.o >> /tmp/qemu-test/src/fpu/softfloat.c:3365:13: error: bitwise negation of a boolean expression; did you mean logical negation? [-Werror,-Wbool-operation] >> absZ &= ~ ( ( ( roundBits ^ 0x40 ) == 0 ) & roundNearestEven ); >> ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ >> ! >> /tmp/qemu-test/src/fpu/softfloat.c:3423:18: error: bitwise negation of a boolean expression; did you mean logical negation? [-Werror,-Wbool-operation] >> absZ0 &= ~ ( ( (uint64_t) ( absZ1<<1 ) == 0 ) & roundNearestEven ); >> ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ >> ! >> /tmp/qemu-test/src/fpu/softfloat.c:3483:18: error: bitwise negation of a boolean expression; did you mean logical negation? [-Werror,-Wbool-operation] >> absZ0 &= ~(((uint64_t)(absZ1<<1) == 0) & roundNearestEven); >> ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ >> ! >> /tmp/qemu-test/src/fpu/softfloat.c:3606:13: error: bitwise negation of a boolean expression; did you mean logical negation? [-Werror,-Wbool-operation] >> zSig &= ~ ( ( ( roundBits ^ 0x40 ) == 0 ) & roundNearestEven ); >> ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ >> ! >> /tmp/qemu-test/src/fpu/softfloat.c:3760:13: error: bitwise negation of a boolean expression; did you mean logical negation? [-Werror,-Wbool-operation] >> zSig &= ~ ( ( ( roundBits ^ 0x200 ) == 0 ) & roundNearestEven ); >> ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ >> ! >> /tmp/qemu-test/src/fpu/softfloat.c:3987:21: error: bitwise negation of a boolean expression; did you mean logical negation? [-Werror,-Wbool-operation] >> ~ ( ( (uint64_t) ( zSig1<<1 ) == 0 ) & roundNearestEven ); >> ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ >> ! >> /tmp/qemu-test/src/fpu/softfloat.c:4003:22: error: bitwise negation of a boolean expression; did you mean logical negation? [-Werror,-Wbool-operation] >> zSig0 &= ~ ( ( (uint64_t) ( zSig1<<1 ) == 0 ) & roundNearestEven ); >> ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ >> ! >> /tmp/qemu-test/src/fpu/softfloat.c:4273:18: error: bitwise negation of a boolean expression; did you mean logical negation? [-Werror,-Wbool-operation] >> zSig1 &= ~ ( ( zSig2 + zSig2 == 0 ) & roundNearestEven ); >> ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ >> ! >> 8 errors generated. >> make[1]: *** [/tmp/qemu-test/src/rules.mak:69: fpu/softfloat.o] Error 1 >> make[1]: *** Waiting for unfinished jobs.... >> make: *** [Makefile:527: x86_64-softmmu/all] Error 2 > > The fix for this is in Richard's tcg queue: > https://www.mail-archive.com/qemu-devel@nongnu.org/msg711229.html Ahh of course - the fedora bump brought the newer clang. -- Alex Bennée
© 2016 - 2026 Red Hat, Inc.