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 - 2024 Red Hat, Inc.