Message ID | 20200309204557.14836-1-vt@altlinux.org (mailing list archive) |
---|---|
State | New, archived |
Headers | show |
Series | target/ppc: Fix rlwinm on ppc64 | expand |
Patchew URL: https://patchew.org/QEMU/20200309204557.14836-1-vt@altlinux.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 === PASS 51 test-qobject-input-visitor /visitor/input/fail/alternate PASS 52 test-qobject-input-visitor /visitor/input/fail/union-list PASS 3 fdc-test /x86_64/fdc/read_without_media ==6154==WARNING: ASan doesn't fully support makecontext/swapcontext functions and may produce false positives in some cases! MALLOC_PERTURB_=${MALLOC_PERTURB_:-$(( ${RANDOM:-0} % 255 + 1))} tests/test-qmp-cmds -m=quick -k --tap < /dev/null | ./scripts/tap-driver.pl --test-name="test-qmp-cmds" PASS 4 fdc-test /x86_64/fdc/media_change PASS 5 fdc-test /x86_64/fdc/sense_interrupt --- PASS 32 test-opts-visitor /visitor/opts/range/beyond PASS 33 test-opts-visitor /visitor/opts/dict/unvisited MALLOC_PERTURB_=${MALLOC_PERTURB_:-$(( ${RANDOM:-0} % 255 + 1))} tests/test-coroutine -m=quick -k --tap < /dev/null | ./scripts/tap-driver.pl --test-name="test-coroutine" ==6193==WARNING: ASan doesn't fully support makecontext/swapcontext functions and may produce false positives in some cases! ==6193==WARNING: ASan is ignoring requested __asan_handle_no_return: stack top: 0x7fffc4e50000; bottom 0x7fd1e2991000; size: 0x002de24bf000 (197070155776) False positive error reports may follow For details see https://github.com/google/sanitizers/issues/189 PASS 1 test-coroutine /basic/no-dangling-access --- PASS 11 test-aio /aio/event/wait PASS 12 test-aio /aio/event/flush PASS 13 test-aio /aio/event/wait/no-flush-cb ==6208==WARNING: ASan doesn't fully support makecontext/swapcontext functions and may produce false positives in some cases! PASS 14 test-aio /aio/timer/schedule PASS 15 test-aio /aio/coroutine/queue-chaining PASS 16 test-aio /aio-gsource/flush --- PASS 12 fdc-test /x86_64/fdc/read_no_dma_19 PASS 13 fdc-test /x86_64/fdc/fuzz-registers MALLOC_PERTURB_=${MALLOC_PERTURB_:-$(( ${RANDOM:-0} % 255 + 1))} QTEST_QEMU_BINARY=x86_64-softmmu/qemu-system-x86_64 QTEST_QEMU_IMG=qemu-img tests/qtest/ide-test -m=quick -k --tap < /dev/null | ./scripts/tap-driver.pl --test-name="ide-test" ==6216==WARNING: ASan doesn't fully support makecontext/swapcontext functions and may produce false positives in some cases! PASS 1 ide-test /x86_64/ide/identify PASS 28 test-aio /aio-gsource/timer/schedule MALLOC_PERTURB_=${MALLOC_PERTURB_:-$(( ${RANDOM:-0} % 255 + 1))} tests/test-aio-multithread -m=quick -k --tap < /dev/null | ./scripts/tap-driver.pl --test-name="test-aio-multithread" ==6225==WARNING: ASan doesn't fully support makecontext/swapcontext functions and may produce false positives in some cases! PASS 1 test-aio-multithread /aio/multi/lifecycle ==6222==WARNING: ASan doesn't fully support makecontext/swapcontext functions and may produce false positives in some cases! PASS 2 ide-test /x86_64/ide/flush PASS 2 test-aio-multithread /aio/multi/schedule ==6242==WARNING: ASan doesn't fully support makecontext/swapcontext functions and may produce false positives in some cases! PASS 3 ide-test /x86_64/ide/bmdma/simple_rw ==6253==WARNING: ASan doesn't fully support makecontext/swapcontext functions and may produce false positives in some cases! PASS 4 ide-test /x86_64/ide/bmdma/trim PASS 3 test-aio-multithread /aio/multi/mutex/contended ==6259==WARNING: ASan doesn't fully support makecontext/swapcontext functions and may produce false positives in some cases! PASS 4 test-aio-multithread /aio/multi/mutex/handoff PASS 5 test-aio-multithread /aio/multi/mutex/mcs PASS 6 test-aio-multithread /aio/multi/mutex/pthread MALLOC_PERTURB_=${MALLOC_PERTURB_:-$(( ${RANDOM:-0} % 255 + 1))} tests/test-throttle -m=quick -k --tap < /dev/null | ./scripts/tap-driver.pl --test-name="test-throttle" ==6281==WARNING: ASan doesn't fully support makecontext/swapcontext functions and may produce false positives in some cases! PASS 1 test-throttle /throttle/leak_bucket PASS 2 test-throttle /throttle/compute_wait PASS 3 test-throttle /throttle/init --- PASS 14 test-throttle /throttle/config/max PASS 15 test-throttle /throttle/config/iops_size MALLOC_PERTURB_=${MALLOC_PERTURB_:-$(( ${RANDOM:-0} % 255 + 1))} tests/test-thread-pool -m=quick -k --tap < /dev/null | ./scripts/tap-driver.pl --test-name="test-thread-pool" ==6287==WARNING: ASan doesn't fully support makecontext/swapcontext functions and may produce false positives in some cases! PASS 1 test-thread-pool /thread-pool/submit PASS 2 test-thread-pool /thread-pool/submit-aio PASS 3 test-thread-pool /thread-pool/submit-co PASS 4 test-thread-pool /thread-pool/submit-many ==6283==WARNING: ASan doesn't fully support makecontext/swapcontext functions and may produce false positives in some cases! PASS 5 test-thread-pool /thread-pool/cancel PASS 6 test-thread-pool /thread-pool/cancel-async MALLOC_PERTURB_=${MALLOC_PERTURB_:-$(( ${RANDOM:-0} % 255 + 1))} tests/test-hbitmap -m=quick -k --tap < /dev/null | ./scripts/tap-driver.pl --test-name="test-hbitmap" --- PASS 14 test-hbitmap /hbitmap/set/twice PASS 15 test-hbitmap /hbitmap/set/overlap PASS 16 test-hbitmap /hbitmap/reset/empty ==6362==WARNING: ASan doesn't fully support makecontext/swapcontext functions and may produce false positives in some cases! PASS 17 test-hbitmap /hbitmap/reset/general PASS 18 test-hbitmap /hbitmap/reset/all PASS 19 test-hbitmap /hbitmap/truncate/nop --- PASS 33 test-hbitmap /hbitmap/meta/word PASS 34 test-hbitmap /hbitmap/meta/sector PASS 35 test-hbitmap /hbitmap/serialize/align ==6368==WARNING: ASan doesn't fully support makecontext/swapcontext functions and may produce false positives in some cases! PASS 36 test-hbitmap /hbitmap/serialize/basic PASS 37 test-hbitmap /hbitmap/serialize/part PASS 38 test-hbitmap /hbitmap/serialize/zeroes --- PASS 44 test-hbitmap /hbitmap/next_dirty_area/next_dirty_area_4 PASS 45 test-hbitmap /hbitmap/next_dirty_area/next_dirty_area_after_truncate MALLOC_PERTURB_=${MALLOC_PERTURB_:-$(( ${RANDOM:-0} % 255 + 1))} tests/test-bdrv-drain -m=quick -k --tap < /dev/null | ./scripts/tap-driver.pl --test-name="test-bdrv-drain" ==6375==WARNING: ASan doesn't fully support makecontext/swapcontext functions and may produce false positives in some cases! PASS 1 test-bdrv-drain /bdrv-drain/nested PASS 2 test-bdrv-drain /bdrv-drain/multiparent PASS 3 test-bdrv-drain /bdrv-drain/set_aio_context --- PASS 41 test-bdrv-drain /bdrv-drain/bdrv_drop_intermediate/poll PASS 42 test-bdrv-drain /bdrv-drain/replace_child/mid-drain MALLOC_PERTURB_=${MALLOC_PERTURB_:-$(( ${RANDOM:-0} % 255 + 1))} tests/test-bdrv-graph-mod -m=quick -k --tap < /dev/null | ./scripts/tap-driver.pl --test-name="test-bdrv-graph-mod" ==6414==WARNING: ASan doesn't fully support makecontext/swapcontext functions and may produce false positives in some cases! PASS 1 test-bdrv-graph-mod /bdrv-graph-mod/update-perm-tree PASS 2 test-bdrv-graph-mod /bdrv-graph-mod/should-update-child MALLOC_PERTURB_=${MALLOC_PERTURB_:-$(( ${RANDOM:-0} % 255 + 1))} tests/test-blockjob -m=quick -k --tap < /dev/null | ./scripts/tap-driver.pl --test-name="test-blockjob" ==6418==WARNING: ASan doesn't fully support makecontext/swapcontext functions and may produce false positives in some cases! PASS 1 test-blockjob /blockjob/ids PASS 2 test-blockjob /blockjob/cancel/created PASS 3 test-blockjob /blockjob/cancel/running --- PASS 7 test-blockjob /blockjob/cancel/pending PASS 8 test-blockjob /blockjob/cancel/concluded MALLOC_PERTURB_=${MALLOC_PERTURB_:-$(( ${RANDOM:-0} % 255 + 1))} tests/test-blockjob-txn -m=quick -k --tap < /dev/null | ./scripts/tap-driver.pl --test-name="test-blockjob-txn" ==6422==WARNING: ASan doesn't fully support makecontext/swapcontext functions and may produce false positives in some cases! PASS 1 test-blockjob-txn /single/success PASS 2 test-blockjob-txn /single/failure PASS 3 test-blockjob-txn /single/cancel --- PASS 6 test-blockjob-txn /pair/cancel PASS 7 test-blockjob-txn /pair/fail-cancel-race MALLOC_PERTURB_=${MALLOC_PERTURB_:-$(( ${RANDOM:-0} % 255 + 1))} tests/test-block-backend -m=quick -k --tap < /dev/null | ./scripts/tap-driver.pl --test-name="test-block-backend" ==6426==WARNING: ASan doesn't fully support makecontext/swapcontext functions and may produce false positives in some cases! PASS 1 test-block-backend /block-backend/drain_aio_error PASS 2 test-block-backend /block-backend/drain_all_aio_error MALLOC_PERTURB_=${MALLOC_PERTURB_:-$(( ${RANDOM:-0} % 255 + 1))} tests/test-block-iothread -m=quick -k --tap < /dev/null | ./scripts/tap-driver.pl --test-name="test-block-iothread" ==6430==WARNING: ASan doesn't fully support makecontext/swapcontext functions and may produce false positives in some cases! PASS 1 test-block-iothread /sync-op/pread PASS 2 test-block-iothread /sync-op/pwrite PASS 3 test-block-iothread /sync-op/load_vmstate --- PASS 15 test-block-iothread /propagate/diamond PASS 16 test-block-iothread /propagate/mirror MALLOC_PERTURB_=${MALLOC_PERTURB_:-$(( ${RANDOM:-0} % 255 + 1))} tests/test-image-locking -m=quick -k --tap < /dev/null | ./scripts/tap-driver.pl --test-name="test-image-locking" ==6450==WARNING: ASan doesn't fully support makecontext/swapcontext functions and may produce false positives in some cases! PASS 1 test-image-locking /image-locking/basic PASS 2 test-image-locking /image-locking/set-perm-abort MALLOC_PERTURB_=${MALLOC_PERTURB_:-$(( ${RANDOM:-0} % 255 + 1))} tests/test-x86-cpuid -m=quick -k --tap < /dev/null | ./scripts/tap-driver.pl --test-name="test-x86-cpuid" --- PASS 10 test-int128 /int128/int128_rshift MALLOC_PERTURB_=${MALLOC_PERTURB_:-$(( ${RANDOM:-0} % 255 + 1))} tests/rcutorture -m=quick -k --tap < /dev/null | ./scripts/tap-driver.pl --test-name="rcutorture" PASS 1 rcutorture /rcu/torture/1reader ==6486==WARNING: ASan doesn't fully support makecontext/swapcontext functions and may produce false positives in some cases! PASS 2 rcutorture /rcu/torture/10readers MALLOC_PERTURB_=${MALLOC_PERTURB_:-$(( ${RANDOM:-0} % 255 + 1))} tests/test-rcu-list -m=quick -k --tap < /dev/null | ./scripts/tap-driver.pl --test-name="test-rcu-list" PASS 1 test-rcu-list /rcu/qlist/single-threaded --- PASS 3 test-rcu-list /rcu/qlist/long-many MALLOC_PERTURB_=${MALLOC_PERTURB_:-$(( ${RANDOM:-0} % 255 + 1))} tests/test-rcu-simpleq -m=quick -k --tap < /dev/null | ./scripts/tap-driver.pl --test-name="test-rcu-simpleq" PASS 1 test-rcu-simpleq /rcu/qsimpleq/single-threaded ==6547==WARNING: ASan doesn't fully support makecontext/swapcontext functions and may produce false positives in some cases! PASS 2 test-rcu-simpleq /rcu/qsimpleq/short-few PASS 3 test-rcu-simpleq /rcu/qsimpleq/long-many MALLOC_PERTURB_=${MALLOC_PERTURB_:-$(( ${RANDOM:-0} % 255 + 1))} tests/test-rcu-tailq -m=quick -k --tap < /dev/null | ./scripts/tap-driver.pl --test-name="test-rcu-tailq" --- PASS 2 test-rcu-tailq /rcu/qtailq/short-few PASS 3 test-rcu-tailq /rcu/qtailq/long-many MALLOC_PERTURB_=${MALLOC_PERTURB_:-$(( ${RANDOM:-0} % 255 + 1))} tests/test-rcu-slist -m=quick -k --tap < /dev/null | ./scripts/tap-driver.pl --test-name="test-rcu-slist" ==6613==WARNING: ASan doesn't fully support makecontext/swapcontext functions and may produce false positives in some cases! PASS 1 test-rcu-slist /rcu/qslist/single-threaded PASS 2 test-rcu-slist /rcu/qslist/short-few PASS 3 test-rcu-slist /rcu/qslist/long-many --- PASS 7 test-qdist /qdist/binning/expand PASS 8 test-qdist /qdist/binning/shrink MALLOC_PERTURB_=${MALLOC_PERTURB_:-$(( ${RANDOM:-0} % 255 + 1))} tests/test-qht -m=quick -k --tap < /dev/null | ./scripts/tap-driver.pl --test-name="test-qht" ==6659==WARNING: ASan doesn't fully support makecontext/swapcontext functions and may produce false positives in some cases! ==6665==WARNING: ASan doesn't fully support makecontext/swapcontext functions and may produce false positives in some cases! PASS 1 test-qht /qht/mode/default PASS 2 test-qht /qht/mode/resize MALLOC_PERTURB_=${MALLOC_PERTURB_:-$(( ${RANDOM:-0} % 255 + 1))} tests/test-qht-par -m=quick -k --tap < /dev/null | ./scripts/tap-driver.pl --test-name="test-qht-par" PASS 5 ide-test /x86_64/ide/bmdma/various_prdts PASS 1 test-qht-par /qht/parallel/2threads-0%updates-1s ==6680==WARNING: ASan doesn't fully support makecontext/swapcontext functions and may produce false positives in some cases! ==6680==WARNING: ASan is ignoring requested __asan_handle_no_return: stack top: 0x7ffda73ba000; bottom 0x7f3890ddc000; size: 0x00c5165de000 (846483808256) False positive error reports may follow For details see https://github.com/google/sanitizers/issues/189 PASS 6 ide-test /x86_64/ide/bmdma/no_busmaster --- PASS 18 test-qemu-opts /qemu-opts/to_qdict/filtered PASS 19 test-qemu-opts /qemu-opts/to_qdict/duplicates MALLOC_PERTURB_=${MALLOC_PERTURB_:-$(( ${RANDOM:-0} % 255 + 1))} tests/test-keyval -m=quick -k --tap < /dev/null | ./scripts/tap-driver.pl --test-name="test-keyval" ==6713==WARNING: ASan doesn't fully support makecontext/swapcontext functions and may produce false positives in some cases! PASS 1 test-keyval /keyval/keyval_parse PASS 2 test-keyval /keyval/keyval_parse/list PASS 3 test-keyval /keyval/visit/bool --- PASS 1 test-crypto-tlscredsx509 /qcrypto/tlscredsx509/perfectserver PASS 2 test-crypto-tlscredsx509 /qcrypto/tlscredsx509/perfectclient PASS 3 test-crypto-tlscredsx509 /qcrypto/tlscredsx509/goodca1 ==6758==WARNING: ASan doesn't fully support makecontext/swapcontext functions and may produce false positives in some cases! PASS 9 ide-test /x86_64/ide/flush/retry_pci PASS 4 test-crypto-tlscredsx509 /qcrypto/tlscredsx509/goodca2 ==6768==WARNING: ASan doesn't fully support makecontext/swapcontext functions and may produce false positives in some cases! PASS 10 ide-test /x86_64/ide/flush/retry_isa PASS 5 test-crypto-tlscredsx509 /qcrypto/tlscredsx509/goodca3 PASS 6 test-crypto-tlscredsx509 /qcrypto/tlscredsx509/badca1 PASS 7 test-crypto-tlscredsx509 /qcrypto/tlscredsx509/badca2 PASS 8 test-crypto-tlscredsx509 /qcrypto/tlscredsx509/badca3 PASS 9 test-crypto-tlscredsx509 /qcrypto/tlscredsx509/goodserver1 ==6774==WARNING: ASan doesn't fully support makecontext/swapcontext functions and may produce false positives in some cases! PASS 11 ide-test /x86_64/ide/cdrom/pio PASS 10 test-crypto-tlscredsx509 /qcrypto/tlscredsx509/goodserver2 PASS 11 test-crypto-tlscredsx509 /qcrypto/tlscredsx509/goodserver3 PASS 12 test-crypto-tlscredsx509 /qcrypto/tlscredsx509/goodserver4 PASS 13 test-crypto-tlscredsx509 /qcrypto/tlscredsx509/goodserver5 ==6780==WARNING: ASan doesn't fully support makecontext/swapcontext functions and may produce false positives in some cases! PASS 14 test-crypto-tlscredsx509 /qcrypto/tlscredsx509/goodserver6 PASS 12 ide-test /x86_64/ide/cdrom/pio_large PASS 15 test-crypto-tlscredsx509 /qcrypto/tlscredsx509/goodserver7 --- PASS 32 test-crypto-tlscredsx509 /qcrypto/tlscredsx509/inactive1 PASS 33 test-crypto-tlscredsx509 /qcrypto/tlscredsx509/inactive2 PASS 34 test-crypto-tlscredsx509 /qcrypto/tlscredsx509/inactive3 ==6786==WARNING: ASan doesn't fully support makecontext/swapcontext functions and may produce false positives in some cases! PASS 13 ide-test /x86_64/ide/cdrom/dma MALLOC_PERTURB_=${MALLOC_PERTURB_:-$(( ${RANDOM:-0} % 255 + 1))} QTEST_QEMU_BINARY=x86_64-softmmu/qemu-system-x86_64 QTEST_QEMU_IMG=qemu-img tests/qtest/ahci-test -m=quick -k --tap < /dev/null | ./scripts/tap-driver.pl --test-name="ahci-test" PASS 35 test-crypto-tlscredsx509 /qcrypto/tlscredsx509/chain1 --- PASS 38 test-crypto-tlscredsx509 /qcrypto/tlscredsx509/missingserver PASS 39 test-crypto-tlscredsx509 /qcrypto/tlscredsx509/missingclient MALLOC_PERTURB_=${MALLOC_PERTURB_:-$(( ${RANDOM:-0} % 255 + 1))} tests/test-crypto-tlssession -m=quick -k --tap < /dev/null | ./scripts/tap-driver.pl --test-name="test-crypto-tlssession" ==6804==WARNING: ASan doesn't fully support makecontext/swapcontext functions and may produce false positives in some cases! PASS 1 ahci-test /x86_64/ahci/sanity ==6810==WARNING: ASan doesn't fully support makecontext/swapcontext functions and may produce false positives in some cases! PASS 1 test-crypto-tlssession /qcrypto/tlssession/psk PASS 2 ahci-test /x86_64/ahci/pci_spec PASS 2 test-crypto-tlssession /qcrypto/tlssession/basicca ==6816==WARNING: ASan doesn't fully support makecontext/swapcontext functions and may produce false positives in some cases! PASS 3 ahci-test /x86_64/ahci/pci_enable PASS 3 test-crypto-tlssession /qcrypto/tlssession/differentca ==6822==WARNING: ASan doesn't fully support makecontext/swapcontext functions and may produce false positives in some cases! PASS 4 test-crypto-tlssession /qcrypto/tlssession/altname1 PASS 4 ahci-test /x86_64/ahci/hba_spec PASS 5 test-crypto-tlssession /qcrypto/tlssession/altname2 PASS 6 test-crypto-tlssession /qcrypto/tlssession/altname3 PASS 7 test-crypto-tlssession /qcrypto/tlssession/altname4 ==6828==WARNING: ASan doesn't fully support makecontext/swapcontext functions and may produce false positives in some cases! PASS 5 ahci-test /x86_64/ahci/hba_enable ==6834==WARNING: ASan doesn't fully support makecontext/swapcontext functions and may produce false positives in some cases! PASS 8 test-crypto-tlssession /qcrypto/tlssession/altname5 PASS 6 ahci-test /x86_64/ahci/identify ==6840==WARNING: ASan doesn't fully support makecontext/swapcontext functions and may produce false positives in some cases! PASS 9 test-crypto-tlssession /qcrypto/tlssession/altname6 PASS 7 ahci-test /x86_64/ahci/max PASS 10 test-crypto-tlssession /qcrypto/tlssession/wildcard1 ==6846==WARNING: ASan doesn't fully support makecontext/swapcontext functions and may produce false positives in some cases! PASS 11 test-crypto-tlssession /qcrypto/tlssession/wildcard2 PASS 8 ahci-test /x86_64/ahci/reset ==6852==WARNING: ASan doesn't fully support makecontext/swapcontext functions and may produce false positives in some cases! ==6852==WARNING: ASan is ignoring requested __asan_handle_no_return: stack top: 0x7ffc55094000; bottom 0x7f951fdfe000; size: 0x006735296000 (443273535488) False positive error reports may follow For details see https://github.com/google/sanitizers/issues/189 PASS 9 ahci-test /x86_64/ahci/io/pio/lba28/simple/zero PASS 12 test-crypto-tlssession /qcrypto/tlssession/wildcard3 ==6858==WARNING: ASan doesn't fully support makecontext/swapcontext functions and may produce false positives in some cases! PASS 13 test-crypto-tlssession /qcrypto/tlssession/wildcard4 ==6858==WARNING: ASan is ignoring requested __asan_handle_no_return: stack top: 0x7ffc01e7e000; bottom 0x7fdb595fe000; size: 0x0020a8880000 (140266438656) False positive error reports may follow For details see https://github.com/google/sanitizers/issues/189 PASS 10 ahci-test /x86_64/ahci/io/pio/lba28/simple/low ==6864==WARNING: ASan doesn't fully support makecontext/swapcontext functions and may produce false positives in some cases! PASS 14 test-crypto-tlssession /qcrypto/tlssession/wildcard5 ==6864==WARNING: ASan is ignoring requested __asan_handle_no_return: stack top: 0x7ffde5e19000; bottom 0x7fe20b3fe000; size: 0x001bdaa1b000 (119632146432) False positive error reports may follow For details see https://github.com/google/sanitizers/issues/189 PASS 11 ahci-test /x86_64/ahci/io/pio/lba28/simple/high ==6870==WARNING: ASan doesn't fully support makecontext/swapcontext functions and may produce false positives in some cases! ==6870==WARNING: ASan is ignoring requested __asan_handle_no_return: stack top: 0x7fff852c6000; bottom 0x7fb05b7fe000; size: 0x004f29ac8000 (340001587200) False positive error reports may follow For details see https://github.com/google/sanitizers/issues/189 PASS 15 test-crypto-tlssession /qcrypto/tlssession/wildcard6 PASS 12 ahci-test /x86_64/ahci/io/pio/lba28/double/zero PASS 16 test-crypto-tlssession /qcrypto/tlssession/cachain MALLOC_PERTURB_=${MALLOC_PERTURB_:-$(( ${RANDOM:-0} % 255 + 1))} tests/test-qga -m=quick -k --tap < /dev/null | ./scripts/tap-driver.pl --test-name="test-qga" ==6876==WARNING: ASan doesn't fully support makecontext/swapcontext functions and may produce false positives in some cases! ==6876==WARNING: ASan is ignoring requested __asan_handle_no_return: stack top: 0x7ffea2346000; bottom 0x7ff574bfe000; size: 0x00092d748000 (39417315328) False positive error reports may follow For details see https://github.com/google/sanitizers/issues/189 PASS 13 ahci-test /x86_64/ahci/io/pio/lba28/double/low --- PASS 15 test-qga /qga/invalid-cmd PASS 16 test-qga /qga/invalid-args PASS 17 test-qga /qga/fsfreeze-status ==6890==WARNING: ASan doesn't fully support makecontext/swapcontext functions and may produce false positives in some cases! ==6890==WARNING: ASan is ignoring requested __asan_handle_no_return: stack top: 0x7fffd851d000; bottom 0x7f11713fe000; size: 0x00ee6711f000 (1023931445248) False positive error reports may follow For details see https://github.com/google/sanitizers/issues/189 PASS 14 ahci-test /x86_64/ahci/io/pio/lba28/double/high --- PASS 19 test-qga /qga/config PASS 20 test-qga /qga/guest-exec PASS 21 test-qga /qga/guest-exec-invalid ==6899==WARNING: ASan doesn't fully support makecontext/swapcontext functions and may produce false positives in some cases! ==6899==WARNING: ASan is ignoring requested __asan_handle_no_return: stack top: 0x7fffb2e70000; bottom 0x7f5c755fe000; size: 0x00a33d872000 (701111934976) False positive error reports may follow For details see https://github.com/google/sanitizers/issues/189 PASS 15 ahci-test /x86_64/ahci/io/pio/lba28/long/zero ==6917==WARNING: ASan doesn't fully support makecontext/swapcontext functions and may produce false positives in some cases! ==6917==WARNING: ASan is ignoring requested __asan_handle_no_return: stack top: 0x7ffca6c89000; bottom 0x7f4c73f24000; size: 0x00b032d65000 (756767150080) False positive error reports may follow For details see https://github.com/google/sanitizers/issues/189 PASS 22 test-qga /qga/guest-get-osinfo --- PASS 5 test-authz-list /auth/list/explicit/deny PASS 6 test-authz-list /auth/list/explicit/allow MALLOC_PERTURB_=${MALLOC_PERTURB_:-$(( ${RANDOM:-0} % 255 + 1))} tests/test-authz-listfile -m=quick -k --tap < /dev/null | ./scripts/tap-driver.pl --test-name="test-authz-listfile" ==6937==WARNING: ASan doesn't fully support makecontext/swapcontext functions and may produce false positives in some cases! PASS 1 test-authz-listfile /auth/list/complex PASS 2 test-authz-listfile /auth/list/default/deny PASS 3 test-authz-listfile /auth/list/default/allow PASS 4 test-authz-listfile /auth/list/explicit/deny PASS 5 test-authz-listfile /auth/list/explicit/allow MALLOC_PERTURB_=${MALLOC_PERTURB_:-$(( ${RANDOM:-0} % 255 + 1))} tests/test-io-task -m=quick -k --tap < /dev/null | ./scripts/tap-driver.pl --test-name="test-io-task" ==6937==WARNING: ASan is ignoring requested __asan_handle_no_return: stack top: 0x7ffe403b8000; bottom 0x7f52135fe000; size: 0x00ac2cdba000 (739486965760) False positive error reports may follow For details see https://github.com/google/sanitizers/issues/189 PASS 1 test-io-task /crypto/task/complete --- PASS 4 test-io-channel-file /io/channel/pipe/sync PASS 5 test-io-channel-file /io/channel/pipe/async MALLOC_PERTURB_=${MALLOC_PERTURB_:-$(( ${RANDOM:-0} % 255 + 1))} tests/test-io-channel-tls -m=quick -k --tap < /dev/null | ./scripts/tap-driver.pl --test-name="test-io-channel-tls" ==7005==WARNING: ASan doesn't fully support makecontext/swapcontext functions and may produce false positives in some cases! PASS 1 test-io-channel-tls /qio/channel/tls/basic MALLOC_PERTURB_=${MALLOC_PERTURB_:-$(( ${RANDOM:-0} % 255 + 1))} tests/test-io-channel-command -m=quick -k --tap < /dev/null | ./scripts/tap-driver.pl --test-name="test-io-channel-command" PASS 18 ahci-test /x86_64/ahci/io/pio/lba28/short/zero --- PASS 4 test-io-channel-command /io/channel/command/echo/async MALLOC_PERTURB_=${MALLOC_PERTURB_:-$(( ${RANDOM:-0} % 255 + 1))} tests/test-io-channel-buffer -m=quick -k --tap < /dev/null | ./scripts/tap-driver.pl --test-name="test-io-channel-buffer" PASS 1 test-io-channel-buffer /io/channel/buf ==7026==WARNING: ASan doesn't fully support makecontext/swapcontext functions and may produce false positives in some cases! MALLOC_PERTURB_=${MALLOC_PERTURB_:-$(( ${RANDOM:-0} % 255 + 1))} tests/test-base64 -m=quick -k --tap < /dev/null | ./scripts/tap-driver.pl --test-name="test-base64" PASS 1 test-base64 /util/base64/good PASS 2 test-base64 /util/base64/embedded-nul --- PASS 3 test-crypto-afsplit /crypto/afsplit/sha256/big PASS 4 test-crypto-afsplit /crypto/afsplit/sha1/1000 MALLOC_PERTURB_=${MALLOC_PERTURB_:-$(( ${RANDOM:-0} % 255 + 1))} tests/test-crypto-xts -m=quick -k --tap < /dev/null | ./scripts/tap-driver.pl --test-name="test-crypto-xts" ==7044==WARNING: ASan doesn't fully support makecontext/swapcontext functions and may produce false positives in some cases! PASS 1 test-crypto-xts /crypto/xts/t-1-key-32-ptx-32/basic PASS 2 test-crypto-xts /crypto/xts/t-1-key-32-ptx-32/split PASS 3 test-crypto-xts /crypto/xts/t-1-key-32-ptx-32/unaligned --- PASS 3 test-logging /logging/logfile_write_path PASS 4 test-logging /logging/logfile_lock_path MALLOC_PERTURB_=${MALLOC_PERTURB_:-$(( ${RANDOM:-0} % 255 + 1))} tests/test-replication -m=quick -k --tap < /dev/null | ./scripts/tap-driver.pl --test-name="test-replication" ==7066==WARNING: ASan doesn't fully support makecontext/swapcontext functions and may produce false positives in some cases! ==7073==WARNING: ASan doesn't fully support makecontext/swapcontext functions and may produce false positives in some cases! ==7066==WARNING: ASan is ignoring requested __asan_handle_no_return: stack top: 0x7ffdfa4e6000; bottom 0x7f28b3bfe000; size: 0x00d5468e8000 (916011778048) False positive error reports may follow For details see https://github.com/google/sanitizers/issues/189 PASS 21 ahci-test /x86_64/ahci/io/pio/lba48/simple/zero PASS 1 test-replication /replication/primary/read PASS 2 test-replication /replication/primary/write ==7081==WARNING: ASan doesn't fully support makecontext/swapcontext functions and may produce false positives in some cases! ==7081==WARNING: ASan is ignoring requested __asan_handle_no_return: stack top: 0x7ffd24332000; bottom 0x7f6520bfe000; size: 0x009803734000 (652892913664) False positive error reports may follow For details see https://github.com/google/sanitizers/issues/189 PASS 3 test-replication /replication/primary/start --- PASS 5 test-replication /replication/primary/do_checkpoint PASS 6 test-replication /replication/primary/get_error_all PASS 22 ahci-test /x86_64/ahci/io/pio/lba48/simple/low ==7087==WARNING: ASan doesn't fully support makecontext/swapcontext functions and may produce false positives in some cases! ==7087==WARNING: ASan is ignoring requested __asan_handle_no_return: stack top: 0x7ffd6c220000; bottom 0x7fd5a3bfe000; size: 0x0027c8622000 (170865598464) False positive error reports may follow For details see https://github.com/google/sanitizers/issues/189 PASS 7 test-replication /replication/secondary/read PASS 23 ahci-test /x86_64/ahci/io/pio/lba48/simple/high ==7093==WARNING: ASan doesn't fully support makecontext/swapcontext functions and may produce false positives in some cases! ==7093==WARNING: ASan is ignoring requested __asan_handle_no_return: stack top: 0x7fffc2214000; bottom 0x7fd37cffe000; size: 0x002c45216000 (190138376192) False positive error reports may follow For details see https://github.com/google/sanitizers/issues/189 PASS 8 test-replication /replication/secondary/write PASS 24 ahci-test /x86_64/ahci/io/pio/lba48/double/zero ==7099==WARNING: ASan doesn't fully support makecontext/swapcontext functions and may produce false positives in some cases! ==7099==WARNING: ASan is ignoring requested __asan_handle_no_return: stack top: 0x7fff81102000; bottom 0x7fe7abbfe000; size: 0x0017d5504000 (102363054080) False positive error reports may follow For details see https://github.com/google/sanitizers/issues/189 PASS 25 ahci-test /x86_64/ahci/io/pio/lba48/double/low ==7105==WARNING: ASan doesn't fully support makecontext/swapcontext functions and may produce false positives in some cases! ==7105==WARNING: ASan is ignoring requested __asan_handle_no_return: stack top: 0x7ffe7bd13000; bottom 0x7efedddfe000; size: 0x00ff9df15000 (1097866498048) False positive error reports may follow For details see https://github.com/google/sanitizers/issues/189 PASS 26 ahci-test /x86_64/ahci/io/pio/lba48/double/high ==7112==WARNING: ASan doesn't fully support makecontext/swapcontext functions and may produce false positives in some cases! ==7073==WARNING: ASan is ignoring requested __asan_handle_no_return: stack top: 0x7ffcd3f87000; bottom 0x7fd6311b3000; size: 0x0026a2dd4000 (165941166080) False positive error reports may follow For details see https://github.com/google/sanitizers/issues/189 ==7112==WARNING: ASan is ignoring requested __asan_handle_no_return: stack top: 0x7ffd3e9c3000; bottom 0x7f93417fe000; size: 0x0069fd1c5000 (455218057216) False positive error reports may follow For details see https://github.com/google/sanitizers/issues/189 PASS 9 test-replication /replication/secondary/start PASS 27 ahci-test /x86_64/ahci/io/pio/lba48/long/zero ==7139==WARNING: ASan doesn't fully support makecontext/swapcontext functions and may produce false positives in some cases! ==7139==WARNING: ASan is ignoring requested __asan_handle_no_return: stack top: 0x7ffe36923000; bottom 0x7fef90d7c000; size: 0x000ea5ba7000 (62910001152) False positive error reports may follow For details see https://github.com/google/sanitizers/issues/189 PASS 28 ahci-test /x86_64/ahci/io/pio/lba48/long/low ==7145==WARNING: ASan doesn't fully support makecontext/swapcontext functions and may produce false positives in some cases! ==7145==WARNING: ASan is ignoring requested __asan_handle_no_return: stack top: 0x7ffc52950000; bottom 0x7f540abfe000; size: 0x00a847d52000 (722759655424) False positive error reports may follow For details see https://github.com/google/sanitizers/issues/189 PASS 10 test-replication /replication/secondary/stop PASS 29 ahci-test /x86_64/ahci/io/pio/lba48/long/high ==7151==WARNING: ASan doesn't fully support makecontext/swapcontext functions and may produce false positives in some cases! PASS 30 ahci-test /x86_64/ahci/io/pio/lba48/short/zero ==7157==WARNING: ASan doesn't fully support makecontext/swapcontext functions and may produce false positives in some cases! PASS 31 ahci-test /x86_64/ahci/io/pio/lba48/short/low PASS 11 test-replication /replication/secondary/continuous_replication ==7163==WARNING: ASan doesn't fully support makecontext/swapcontext functions and may produce false positives in some cases! PASS 32 ahci-test /x86_64/ahci/io/pio/lba48/short/high ==7169==WARNING: ASan doesn't fully support makecontext/swapcontext functions and may produce false positives in some cases! PASS 33 ahci-test /x86_64/ahci/io/dma/lba28/fragmented ==7175==WARNING: ASan doesn't fully support makecontext/swapcontext functions and may produce false positives in some cases! PASS 12 test-replication /replication/secondary/do_checkpoint PASS 34 ahci-test /x86_64/ahci/io/dma/lba28/retry PASS 13 test-replication /replication/secondary/get_error_all ==7181==WARNING: ASan doesn't fully support makecontext/swapcontext functions and may produce false positives in some cases! MALLOC_PERTURB_=${MALLOC_PERTURB_:-$(( ${RANDOM:-0} % 255 + 1))} tests/test-bufferiszero -m=quick -k --tap < /dev/null | ./scripts/tap-driver.pl --test-name="test-bufferiszero" PASS 35 ahci-test /x86_64/ahci/io/dma/lba28/simple/zero ==7190==WARNING: ASan doesn't fully support makecontext/swapcontext functions and may produce false positives in some cases! PASS 36 ahci-test /x86_64/ahci/io/dma/lba28/simple/low ==7196==WARNING: ASan doesn't fully support makecontext/swapcontext functions and may produce false positives in some cases! PASS 37 ahci-test /x86_64/ahci/io/dma/lba28/simple/high ==7202==WARNING: ASan doesn't fully support makecontext/swapcontext functions and may produce false positives in some cases! PASS 38 ahci-test /x86_64/ahci/io/dma/lba28/double/zero ==7208==WARNING: ASan doesn't fully support makecontext/swapcontext functions and may produce false positives in some cases! PASS 39 ahci-test /x86_64/ahci/io/dma/lba28/double/low ==7214==WARNING: ASan doesn't fully support makecontext/swapcontext functions and may produce false positives in some cases! PASS 40 ahci-test /x86_64/ahci/io/dma/lba28/double/high ==7220==WARNING: ASan doesn't fully support makecontext/swapcontext functions and may produce false positives in some cases! ==7220==WARNING: ASan is ignoring requested __asan_handle_no_return: stack top: 0x7ffd7aff5000; bottom 0x7f3d8fd23000; size: 0x00bfeb2d2000 (824284356608) False positive error reports may follow For details see https://github.com/google/sanitizers/issues/189 PASS 41 ahci-test /x86_64/ahci/io/dma/lba28/long/zero ==7227==WARNING: ASan doesn't fully support makecontext/swapcontext functions and may produce false positives in some cases! ==7227==WARNING: ASan is ignoring requested __asan_handle_no_return: stack top: 0x7ffcfc935000; bottom 0x7f8531dfd000; size: 0x0077cab38000 (514501869568) False positive error reports may follow For details see https://github.com/google/sanitizers/issues/189 PASS 42 ahci-test /x86_64/ahci/io/dma/lba28/long/low ==7234==WARNING: ASan doesn't fully support makecontext/swapcontext functions and may produce false positives in some cases! ==7234==WARNING: ASan is ignoring requested __asan_handle_no_return: stack top: 0x7ffdcba9a000; bottom 0x7f2bae123000; size: 0x00d21d977000 (902439596032) False positive error reports may follow For details see https://github.com/google/sanitizers/issues/189 PASS 43 ahci-test /x86_64/ahci/io/dma/lba28/long/high ==7241==WARNING: ASan doesn't fully support makecontext/swapcontext functions and may produce false positives in some cases! PASS 44 ahci-test /x86_64/ahci/io/dma/lba28/short/zero ==7247==WARNING: ASan doesn't fully support makecontext/swapcontext functions and may produce false positives in some cases! PASS 45 ahci-test /x86_64/ahci/io/dma/lba28/short/low ==7253==WARNING: ASan doesn't fully support makecontext/swapcontext functions and may produce false positives in some cases! PASS 46 ahci-test /x86_64/ahci/io/dma/lba28/short/high ==7259==WARNING: ASan doesn't fully support makecontext/swapcontext functions and may produce false positives in some cases! PASS 47 ahci-test /x86_64/ahci/io/dma/lba48/simple/zero ==7265==WARNING: ASan doesn't fully support makecontext/swapcontext functions and may produce false positives in some cases! PASS 48 ahci-test /x86_64/ahci/io/dma/lba48/simple/low ==7271==WARNING: ASan doesn't fully support makecontext/swapcontext functions and may produce false positives in some cases! PASS 49 ahci-test /x86_64/ahci/io/dma/lba48/simple/high ==7277==WARNING: ASan doesn't fully support makecontext/swapcontext functions and may produce false positives in some cases! PASS 50 ahci-test /x86_64/ahci/io/dma/lba48/double/zero ==7283==WARNING: ASan doesn't fully support makecontext/swapcontext functions and may produce false positives in some cases! PASS 51 ahci-test /x86_64/ahci/io/dma/lba48/double/low ==7289==WARNING: ASan doesn't fully support makecontext/swapcontext functions and may produce false positives in some cases! PASS 52 ahci-test /x86_64/ahci/io/dma/lba48/double/high ==7295==WARNING: ASan doesn't fully support makecontext/swapcontext functions and may produce false positives in some cases! ==7295==WARNING: ASan is ignoring requested __asan_handle_no_return: stack top: 0x7ffdf4c8d000; bottom 0x7f35e99fd000; size: 0x00c80b290000 (859180695552) False positive error reports may follow For details see https://github.com/google/sanitizers/issues/189 PASS 53 ahci-test /x86_64/ahci/io/dma/lba48/long/zero ==7302==WARNING: ASan doesn't fully support makecontext/swapcontext functions and may produce false positives in some cases! ==7302==WARNING: ASan is ignoring requested __asan_handle_no_return: stack top: 0x7fffdb929000; bottom 0x7f9565ffd000; size: 0x006a7592c000 (457239085056) False positive error reports may follow For details see https://github.com/google/sanitizers/issues/189 PASS 54 ahci-test /x86_64/ahci/io/dma/lba48/long/low ==7309==WARNING: ASan doesn't fully support makecontext/swapcontext functions and may produce false positives in some cases! ==7309==WARNING: ASan is ignoring requested __asan_handle_no_return: stack top: 0x7ffcfad6e000; bottom 0x7f0337d23000; size: 0x00f9c304b000 (1072718721024) False positive error reports may follow For details see https://github.com/google/sanitizers/issues/189 PASS 55 ahci-test /x86_64/ahci/io/dma/lba48/long/high ==7316==WARNING: ASan doesn't fully support makecontext/swapcontext functions and may produce false positives in some cases! PASS 56 ahci-test /x86_64/ahci/io/dma/lba48/short/zero ==7322==WARNING: ASan doesn't fully support makecontext/swapcontext functions and may produce false positives in some cases! PASS 57 ahci-test /x86_64/ahci/io/dma/lba48/short/low ==7328==WARNING: ASan doesn't fully support makecontext/swapcontext functions and may produce false positives in some cases! PASS 58 ahci-test /x86_64/ahci/io/dma/lba48/short/high ==7334==WARNING: ASan doesn't fully support makecontext/swapcontext functions and may produce false positives in some cases! PASS 59 ahci-test /x86_64/ahci/io/ncq/simple ==7340==WARNING: ASan doesn't fully support makecontext/swapcontext functions and may produce false positives in some cases! PASS 60 ahci-test /x86_64/ahci/io/ncq/retry ==7346==WARNING: ASan doesn't fully support makecontext/swapcontext functions and may produce false positives in some cases! PASS 61 ahci-test /x86_64/ahci/flush/simple ==7352==WARNING: ASan doesn't fully support makecontext/swapcontext functions and may produce false positives in some cases! PASS 62 ahci-test /x86_64/ahci/flush/retry ==7358==WARNING: ASan doesn't fully support makecontext/swapcontext functions and may produce false positives in some cases! ==7364==WARNING: ASan doesn't fully support makecontext/swapcontext functions and may produce false positives in some cases! PASS 1 test-bufferiszero /cutils/bufferiszero MALLOC_PERTURB_=${MALLOC_PERTURB_:-$(( ${RANDOM:-0} % 255 + 1))} tests/test-uuid -m=quick -k --tap < /dev/null | ./scripts/tap-driver.pl --test-name="test-uuid" PASS 1 test-uuid /uuid/is_null --- PASS 21 test-qgraph /qgraph/test_two_test_same_interface PASS 22 test-qgraph /qgraph/test_test_in_path PASS 23 test-qgraph /qgraph/test_double_edge ==7382==WARNING: ASan doesn't fully support makecontext/swapcontext functions and may produce false positives in some cases! ==7391==WARNING: ASan doesn't fully support makecontext/swapcontext functions and may produce false positives in some cases! PASS 64 ahci-test /x86_64/ahci/migrate/sanity ==7399==WARNING: ASan doesn't fully support makecontext/swapcontext functions and may produce false positives in some cases! ==7405==WARNING: ASan doesn't fully support makecontext/swapcontext functions and may produce false positives in some cases! PASS 65 ahci-test /x86_64/ahci/migrate/dma/simple ==7413==WARNING: ASan doesn't fully support makecontext/swapcontext functions and may produce false positives in some cases! ==7419==WARNING: ASan doesn't fully support makecontext/swapcontext functions and may produce false positives in some cases! PASS 66 ahci-test /x86_64/ahci/migrate/dma/halted ==7427==WARNING: ASan doesn't fully support makecontext/swapcontext functions and may produce false positives in some cases! ==7433==WARNING: ASan doesn't fully support makecontext/swapcontext functions and may produce false positives in some cases! PASS 67 ahci-test /x86_64/ahci/migrate/ncq/simple ==7441==WARNING: ASan doesn't fully support makecontext/swapcontext functions and may produce false positives in some cases! ==7447==WARNING: ASan doesn't fully support makecontext/swapcontext functions and may produce false positives in some cases! PASS 68 ahci-test /x86_64/ahci/migrate/ncq/halted ==7455==WARNING: ASan doesn't fully support makecontext/swapcontext functions and may produce false positives in some cases! PASS 69 ahci-test /x86_64/ahci/cdrom/eject ==7460==WARNING: ASan doesn't fully support makecontext/swapcontext functions and may produce false positives in some cases! PASS 70 ahci-test /x86_64/ahci/cdrom/dma/single ==7466==WARNING: ASan doesn't fully support makecontext/swapcontext functions and may produce false positives in some cases! PASS 71 ahci-test /x86_64/ahci/cdrom/dma/multi ==7472==WARNING: ASan doesn't fully support makecontext/swapcontext functions and may produce false positives in some cases! PASS 72 ahci-test /x86_64/ahci/cdrom/pio/single ==7478==WARNING: ASan doesn't fully support makecontext/swapcontext functions and may produce false positives in some cases! ==7478==WARNING: ASan is ignoring requested __asan_handle_no_return: stack top: 0x7ffe6db0a000; bottom 0x7fc5e31fe000; size: 0x00388a90c000 (242842910720) False positive error reports may follow For details see https://github.com/google/sanitizers/issues/189 PASS 73 ahci-test /x86_64/ahci/cdrom/pio/multi ==7484==WARNING: ASan doesn't fully support makecontext/swapcontext functions and may produce false positives in some cases! PASS 74 ahci-test /x86_64/ahci/cdrom/pio/bcl MALLOC_PERTURB_=${MALLOC_PERTURB_:-$(( ${RANDOM:-0} % 255 + 1))} QTEST_QEMU_BINARY=x86_64-softmmu/qemu-system-x86_64 QTEST_QEMU_IMG=qemu-img tests/qtest/hd-geo-test -m=quick -k --tap < /dev/null | ./scripts/tap-driver.pl --test-name="hd-geo-test" PASS 1 hd-geo-test /x86_64/hd-geo/ide/none ==7498==WARNING: ASan doesn't fully support makecontext/swapcontext functions and may produce false positives in some cases! PASS 2 hd-geo-test /x86_64/hd-geo/ide/drive/cd_0 ==7504==WARNING: ASan doesn't fully support makecontext/swapcontext functions and may produce false positives in some cases! PASS 3 hd-geo-test /x86_64/hd-geo/ide/drive/mbr/blank ==7510==WARNING: ASan doesn't fully support makecontext/swapcontext functions and may produce false positives in some cases! PASS 4 hd-geo-test /x86_64/hd-geo/ide/drive/mbr/lba ==7516==WARNING: ASan doesn't fully support makecontext/swapcontext functions and may produce false positives in some cases! PASS 5 hd-geo-test /x86_64/hd-geo/ide/drive/mbr/chs ==7522==WARNING: ASan doesn't fully support makecontext/swapcontext functions and may produce false positives in some cases! PASS 6 hd-geo-test /x86_64/hd-geo/ide/device/mbr/blank ==7528==WARNING: ASan doesn't fully support makecontext/swapcontext functions and may produce false positives in some cases! PASS 7 hd-geo-test /x86_64/hd-geo/ide/device/mbr/lba ==7534==WARNING: ASan doesn't fully support makecontext/swapcontext functions and may produce false positives in some cases! PASS 8 hd-geo-test /x86_64/hd-geo/ide/device/mbr/chs ==7540==WARNING: ASan doesn't fully support makecontext/swapcontext functions and may produce false positives in some cases! PASS 9 hd-geo-test /x86_64/hd-geo/ide/device/user/chs ==7545==WARNING: ASan doesn't fully support makecontext/swapcontext functions and may produce false positives in some cases! PASS 10 hd-geo-test /x86_64/hd-geo/ide/device/user/chst ==7551==WARNING: ASan doesn't fully support makecontext/swapcontext functions and may produce false positives in some cases! ==7555==WARNING: ASan doesn't fully support makecontext/swapcontext functions and may produce false positives in some cases! ==7559==WARNING: ASan doesn't fully support makecontext/swapcontext functions and may produce false positives in some cases! ==7563==WARNING: ASan doesn't fully support makecontext/swapcontext functions and may produce false positives in some cases! ==7567==WARNING: ASan doesn't fully support makecontext/swapcontext functions and may produce false positives in some cases! ==7571==WARNING: ASan doesn't fully support makecontext/swapcontext functions and may produce false positives in some cases! ==7575==WARNING: ASan doesn't fully support makecontext/swapcontext functions and may produce false positives in some cases! ==7579==WARNING: ASan doesn't fully support makecontext/swapcontext functions and may produce false positives in some cases! ==7582==WARNING: ASan doesn't fully support makecontext/swapcontext functions and may produce false positives in some cases! PASS 11 hd-geo-test /x86_64/hd-geo/override/ide ==7589==WARNING: ASan doesn't fully support makecontext/swapcontext functions and may produce false positives in some cases! ==7593==WARNING: ASan doesn't fully support makecontext/swapcontext functions and may produce false positives in some cases! ==7597==WARNING: ASan doesn't fully support makecontext/swapcontext functions and may produce false positives in some cases! ==7601==WARNING: ASan doesn't fully support makecontext/swapcontext functions and may produce false positives in some cases! ==7605==WARNING: ASan doesn't fully support makecontext/swapcontext functions and may produce false positives in some cases! ==7609==WARNING: ASan doesn't fully support makecontext/swapcontext functions and may produce false positives in some cases! ==7613==WARNING: ASan doesn't fully support makecontext/swapcontext functions and may produce false positives in some cases! ==7617==WARNING: ASan doesn't fully support makecontext/swapcontext functions and may produce false positives in some cases! ==7620==WARNING: ASan doesn't fully support makecontext/swapcontext functions and may produce false positives in some cases! PASS 12 hd-geo-test /x86_64/hd-geo/override/scsi ==7627==WARNING: ASan doesn't fully support makecontext/swapcontext functions and may produce false positives in some cases! ==7631==WARNING: ASan doesn't fully support makecontext/swapcontext functions and may produce false positives in some cases! ==7635==WARNING: ASan doesn't fully support makecontext/swapcontext functions and may produce false positives in some cases! ==7639==WARNING: ASan doesn't fully support makecontext/swapcontext functions and may produce false positives in some cases! ==7643==WARNING: ASan doesn't fully support makecontext/swapcontext functions and may produce false positives in some cases! ==7647==WARNING: ASan doesn't fully support makecontext/swapcontext functions and may produce false positives in some cases! ==7651==WARNING: ASan doesn't fully support makecontext/swapcontext functions and may produce false positives in some cases! ==7655==WARNING: ASan doesn't fully support makecontext/swapcontext functions and may produce false positives in some cases! ==7658==WARNING: ASan doesn't fully support makecontext/swapcontext functions and may produce false positives in some cases! PASS 13 hd-geo-test /x86_64/hd-geo/override/scsi_2_controllers ==7665==WARNING: ASan doesn't fully support makecontext/swapcontext functions and may produce false positives in some cases! ==7669==WARNING: ASan doesn't fully support makecontext/swapcontext functions and may produce false positives in some cases! ==7673==WARNING: ASan doesn't fully support makecontext/swapcontext functions and may produce false positives in some cases! ==7677==WARNING: ASan doesn't fully support makecontext/swapcontext functions and may produce false positives in some cases! ==7680==WARNING: ASan doesn't fully support makecontext/swapcontext functions and may produce false positives in some cases! PASS 14 hd-geo-test /x86_64/hd-geo/override/virtio_blk ==7687==WARNING: ASan doesn't fully support makecontext/swapcontext functions and may produce false positives in some cases! ==7691==WARNING: ASan doesn't fully support makecontext/swapcontext functions and may produce false positives in some cases! ==7694==WARNING: ASan doesn't fully support makecontext/swapcontext functions and may produce false positives in some cases! PASS 15 hd-geo-test /x86_64/hd-geo/override/zero_chs ==7701==WARNING: ASan doesn't fully support makecontext/swapcontext functions and may produce false positives in some cases! ==7705==WARNING: ASan doesn't fully support makecontext/swapcontext functions and may produce false positives in some cases! ==7709==WARNING: ASan doesn't fully support makecontext/swapcontext functions and may produce false positives in some cases! ==7713==WARNING: ASan doesn't fully support makecontext/swapcontext functions and may produce false positives in some cases! ==7716==WARNING: ASan doesn't fully support makecontext/swapcontext functions and may produce false positives in some cases! PASS 16 hd-geo-test /x86_64/hd-geo/override/scsi_hot_unplug ==7723==WARNING: ASan doesn't fully support makecontext/swapcontext functions and may produce false positives in some cases! ==7727==WARNING: ASan doesn't fully support makecontext/swapcontext functions and may produce false positives in some cases! ==7731==WARNING: ASan doesn't fully support makecontext/swapcontext functions and may produce false positives in some cases! ==7735==WARNING: ASan doesn't fully support makecontext/swapcontext functions and may produce false positives in some cases! ==7738==WARNING: ASan doesn't fully support makecontext/swapcontext functions and may produce false positives in some cases! PASS 17 hd-geo-test /x86_64/hd-geo/override/virtio_hot_unplug MALLOC_PERTURB_=${MALLOC_PERTURB_:-$(( ${RANDOM:-0} % 255 + 1))} QTEST_QEMU_BINARY=x86_64-softmmu/qemu-system-x86_64 QTEST_QEMU_IMG=qemu-img tests/qtest/boot-order-test -m=quick -k --tap < /dev/null | ./scripts/tap-driver.pl --test-name="boot-order-test" PASS 1 boot-order-test /x86_64/boot-order/pc --- Could not access KVM kernel module: No such file or directory qemu-system-x86_64: -accel kvm: failed to initialize kvm: No such file or directory qemu-system-x86_64: falling back to tcg ==7807==WARNING: ASan doesn't fully support makecontext/swapcontext functions and may produce false positives in some cases! Looking for expected file 'tests/data/acpi/pc/FACP' Using expected file 'tests/data/acpi/pc/FACP' --- Could not access KVM kernel module: No such file or directory qemu-system-x86_64: -accel kvm: failed to initialize kvm: No such file or directory qemu-system-x86_64: falling back to tcg ==7813==WARNING: ASan doesn't fully support makecontext/swapcontext functions and may produce false positives in some cases! Looking for expected file 'tests/data/acpi/q35/FACP' Using expected file 'tests/data/acpi/q35/FACP' --- Could not access KVM kernel module: No such file or directory qemu-system-x86_64: -accel kvm: failed to initialize kvm: No such file or directory qemu-system-x86_64: falling back to tcg ==7819==WARNING: ASan doesn't fully support makecontext/swapcontext functions and may produce false positives in some cases! Looking for expected file 'tests/data/acpi/pc/FACP.bridge' Looking for expected file 'tests/data/acpi/pc/FACP' --- Could not access KVM kernel module: No such file or directory qemu-system-x86_64: -accel kvm: failed to initialize kvm: No such file or directory qemu-system-x86_64: falling back to tcg ==7825==WARNING: ASan doesn't fully support makecontext/swapcontext functions and may produce false positives in some cases! Looking for expected file 'tests/data/acpi/pc/FACP.ipmikcs' Looking for expected file 'tests/data/acpi/pc/FACP' --- Could not access KVM kernel module: No such file or directory qemu-system-x86_64: -accel kvm: failed to initialize kvm: No such file or directory qemu-system-x86_64: falling back to tcg ==7831==WARNING: ASan doesn't fully support makecontext/swapcontext functions and may produce false positives in some cases! Looking for expected file 'tests/data/acpi/pc/FACP.cphp' Looking for expected file 'tests/data/acpi/pc/FACP' --- Could not access KVM kernel module: No such file or directory qemu-system-x86_64: -accel kvm: failed to initialize kvm: No such file or directory qemu-system-x86_64: falling back to tcg ==7838==WARNING: ASan doesn't fully support makecontext/swapcontext functions and may produce false positives in some cases! Looking for expected file 'tests/data/acpi/pc/FACP.memhp' Looking for expected file 'tests/data/acpi/pc/FACP' --- Could not access KVM kernel module: No such file or directory qemu-system-x86_64: -accel kvm: failed to initialize kvm: No such file or directory qemu-system-x86_64: falling back to tcg ==7844==WARNING: ASan doesn't fully support makecontext/swapcontext functions and may produce false positives in some cases! Looking for expected file 'tests/data/acpi/pc/FACP.numamem' Looking for expected file 'tests/data/acpi/pc/FACP' --- Could not access KVM kernel module: No such file or directory qemu-system-x86_64: -accel kvm: failed to initialize kvm: No such file or directory qemu-system-x86_64: falling back to tcg ==7850==WARNING: ASan doesn't fully support makecontext/swapcontext functions and may produce false positives in some cases! Looking for expected file 'tests/data/acpi/pc/FACP.dimmpxm' Looking for expected file 'tests/data/acpi/pc/FACP' --- Could not access KVM kernel module: No such file or directory qemu-system-x86_64: -accel kvm: failed to initialize kvm: No such file or directory qemu-system-x86_64: falling back to tcg ==7859==WARNING: ASan doesn't fully support makecontext/swapcontext functions and may produce false positives in some cases! Looking for expected file 'tests/data/acpi/pc/FACP.acpihmat' Looking for expected file 'tests/data/acpi/pc/FACP' --- Could not access KVM kernel module: No such file or directory qemu-system-x86_64: -accel kvm: failed to initialize kvm: No such file or directory qemu-system-x86_64: falling back to tcg ==7866==WARNING: ASan doesn't fully support makecontext/swapcontext functions and may produce false positives in some cases! Looking for expected file 'tests/data/acpi/q35/FACP.bridge' Looking for expected file 'tests/data/acpi/q35/FACP' --- Could not access KVM kernel module: No such file or directory qemu-system-x86_64: -accel kvm: failed to initialize kvm: No such file or directory qemu-system-x86_64: falling back to tcg ==7872==WARNING: ASan doesn't fully support makecontext/swapcontext functions and may produce false positives in some cases! Looking for expected file 'tests/data/acpi/q35/FACP.mmio64' Looking for expected file 'tests/data/acpi/q35/FACP' --- Could not access KVM kernel module: No such file or directory qemu-system-x86_64: -accel kvm: failed to initialize kvm: No such file or directory qemu-system-x86_64: falling back to tcg ==7878==WARNING: ASan doesn't fully support makecontext/swapcontext functions and may produce false positives in some cases! Looking for expected file 'tests/data/acpi/q35/FACP.ipmibt' Looking for expected file 'tests/data/acpi/q35/FACP' --- Could not access KVM kernel module: No such file or directory qemu-system-x86_64: -accel kvm: failed to initialize kvm: No such file or directory qemu-system-x86_64: falling back to tcg ==7884==WARNING: ASan doesn't fully support makecontext/swapcontext functions and may produce false positives in some cases! Looking for expected file 'tests/data/acpi/q35/FACP.cphp' Looking for expected file 'tests/data/acpi/q35/FACP' --- Could not access KVM kernel module: No such file or directory qemu-system-x86_64: -accel kvm: failed to initialize kvm: No such file or directory qemu-system-x86_64: falling back to tcg ==7891==WARNING: ASan doesn't fully support makecontext/swapcontext functions and may produce false positives in some cases! Looking for expected file 'tests/data/acpi/q35/FACP.memhp' Looking for expected file 'tests/data/acpi/q35/FACP' --- Could not access KVM kernel module: No such file or directory qemu-system-x86_64: -accel kvm: failed to initialize kvm: No such file or directory qemu-system-x86_64: falling back to tcg ==7897==WARNING: ASan doesn't fully support makecontext/swapcontext functions and may produce false positives in some cases! Looking for expected file 'tests/data/acpi/q35/FACP.numamem' Looking for expected file 'tests/data/acpi/q35/FACP' --- Could not access KVM kernel module: No such file or directory qemu-system-x86_64: -accel kvm: failed to initialize kvm: No such file or directory qemu-system-x86_64: falling back to tcg ==7903==WARNING: ASan doesn't fully support makecontext/swapcontext functions and may produce false positives in some cases! Looking for expected file 'tests/data/acpi/q35/FACP.dimmpxm' Looking for expected file 'tests/data/acpi/q35/FACP' --- Could not access KVM kernel module: No such file or directory qemu-system-x86_64: -accel kvm: failed to initialize kvm: No such file or directory qemu-system-x86_64: falling back to tcg ==7912==WARNING: ASan doesn't fully support makecontext/swapcontext functions and may produce false positives in some cases! Looking for expected file 'tests/data/acpi/q35/FACP.acpihmat' Looking for expected file 'tests/data/acpi/q35/FACP' --- PASS 1 i440fx-test /x86_64/i440fx/defaults PASS 2 i440fx-test /x86_64/i440fx/pam PASS 3 i440fx-test /x86_64/i440fx/firmware/bios ==8004==WARNING: ASan doesn't fully support makecontext/swapcontext functions and may produce false positives in some cases! PASS 4 i440fx-test /x86_64/i440fx/firmware/pflash MALLOC_PERTURB_=${MALLOC_PERTURB_:-$(( ${RANDOM:-0} % 255 + 1))} QTEST_QEMU_BINARY=x86_64-softmmu/qemu-system-x86_64 QTEST_QEMU_IMG=qemu-img tests/qtest/fw_cfg-test -m=quick -k --tap < /dev/null | ./scripts/tap-driver.pl --test-name="fw_cfg-test" PASS 1 fw_cfg-test /x86_64/fw_cfg/signature --- MALLOC_PERTURB_=${MALLOC_PERTURB_:-$(( ${RANDOM:-0} % 255 + 1))} QTEST_QEMU_BINARY=x86_64-softmmu/qemu-system-x86_64 QTEST_QEMU_IMG=qemu-img tests/qtest/drive_del-test -m=quick -k --tap < /dev/null | ./scripts/tap-driver.pl --test-name="drive_del-test" PASS 1 drive_del-test /x86_64/drive_del/without-dev PASS 2 drive_del-test /x86_64/drive_del/after_failed_device_add ==8097==WARNING: ASan doesn't fully support makecontext/swapcontext functions and may produce false positives in some cases! PASS 3 drive_del-test /x86_64/blockdev/drive_del_device_del MALLOC_PERTURB_=${MALLOC_PERTURB_:-$(( ${RANDOM:-0} % 255 + 1))} QTEST_QEMU_BINARY=x86_64-softmmu/qemu-system-x86_64 QTEST_QEMU_IMG=qemu-img tests/qtest/wdt_ib700-test -m=quick -k --tap < /dev/null | ./scripts/tap-driver.pl --test-name="wdt_ib700-test" PASS 1 wdt_ib700-test /x86_64/wdt_ib700/pause --- dbus-daemon[8267]: Could not get password database information for UID of current process: User "???" unknown or no memory to allocate password entry ** ERROR:/tmp/qemu-test/src/tests/qtest/dbus-vmstate-test.c:114:get_connection: assertion failed (err == NULL): The connection is closed (g-io-error-quark, 18) ERROR - Bail out! ERROR:/tmp/qemu-test/src/tests/qtest/dbus-vmstate-test.c:114:get_connection: assertion failed (err == NULL): The connection is closed (g-io-error-quark, 18) cleaning up pid 8267 make: *** [/tmp/qemu-test/src/tests/Makefile.include:632: check-qtest-x86_64] Error 1 make: *** Waiting for unfinished jobs.... Traceback (most recent call last): File "./tests/docker/docker.py", line 664, in <module> --- raise CalledProcessError(retcode, cmd) subprocess.CalledProcessError: Command '['sudo', '-n', 'docker', 'run', '--label', 'com.qemu.instance.uuid=6c70b55683ae45009bb2218d74ac8990', '-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-5znih8yk/src/docker-src.2020-03-09-17.47.15.25035:/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=6c70b55683ae45009bb2218d74ac8990 make[1]: *** [docker-run] Error 1 make[1]: Leaving directory `/var/tmp/patchew-tester-tmp-5znih8yk/src' make: *** [docker-run-test-debug@fedora] Error 2 real 28m6.653s user 0m8.457s The full log is available at http://patchew.org/logs/20200309204557.14836-1-vt@altlinux.org/testing.asan/?type=message. --- Email generated automatically by Patchew [https://patchew.org/]. Please send your feedback to patchew-devel@redhat.com
On Mon, Mar 09, 2020 at 11:45:57PM +0300, Vitaly Chikunov wrote: > rlwinm cannot just AND with Mask if shift value is zero on ppc64 when > Mask Begin is greater than Mask End and high bits are set to 1. > > Note that PowerISA 3.0B says that for `rlwinm' ROTL32 is used, and > ROTL32 is defined (in 3.3.14) so that rotated value should have two > copies of lower word of the source value. > > This seems to be another incarnation of the fix from 820724d170 > ("target-ppc: Fix rlwimi, rlwinm, rlwnm again"), except I leave > optimization when Mask value is less than 32 bits. > > Fixes: 7b4d326f47 ("target-ppc: Use the new deposit and extract ops") > Cc: qemu-stable@nongnu.org > Signed-off-by: Vitaly Chikunov <vt@altlinux.org> Adding Richard Henderson to CC, since he knows the most about ppc target TCG. > --- > target/ppc/translate.c | 20 +++++++++++--------- > 1 file changed, 11 insertions(+), 9 deletions(-) > > diff --git a/target/ppc/translate.c b/target/ppc/translate.c > index 36fa27367c..127c82a24e 100644 > --- a/target/ppc/translate.c > +++ b/target/ppc/translate.c > @@ -1938,15 +1938,17 @@ static void gen_rlwinm(DisasContext *ctx) > me += 32; > #endif > mask = MASK(mb, me); > - if (sh == 0) { > - tcg_gen_andi_tl(t_ra, t_rs, mask); > - } else if (mask <= 0xffffffffu) { > - TCGv_i32 t0 = tcg_temp_new_i32(); > - tcg_gen_trunc_tl_i32(t0, t_rs); > - tcg_gen_rotli_i32(t0, t0, sh); > - tcg_gen_andi_i32(t0, t0, mask); > - tcg_gen_extu_i32_tl(t_ra, t0); > - tcg_temp_free_i32(t0); > + if (mask <= 0xffffffffu) { > + if (sh == 0) { > + tcg_gen_andi_tl(t_ra, t_rs, mask); > + } else { > + TCGv_i32 t0 = tcg_temp_new_i32(); > + tcg_gen_trunc_tl_i32(t0, t_rs); > + tcg_gen_rotli_i32(t0, t0, sh); > + tcg_gen_andi_i32(t0, t0, mask); > + tcg_gen_extu_i32_tl(t_ra, t0); > + tcg_temp_free_i32(t0); > + } > } else { > #if defined(TARGET_PPC64) > tcg_gen_deposit_i64(t_ra, t_rs, t_rs, 32, 32);
On 3/9/20 1:45 PM, Vitaly Chikunov wrote: > rlwinm cannot just AND with Mask if shift value is zero on ppc64 when > Mask Begin is greater than Mask End and high bits are set to 1. > > Note that PowerISA 3.0B says that for `rlwinm' ROTL32 is used, and > ROTL32 is defined (in 3.3.14) so that rotated value should have two > copies of lower word of the source value. > > This seems to be another incarnation of the fix from 820724d170 > ("target-ppc: Fix rlwimi, rlwinm, rlwnm again"), except I leave > optimization when Mask value is less than 32 bits. > > Fixes: 7b4d326f47 ("target-ppc: Use the new deposit and extract ops") > Cc: qemu-stable@nongnu.org > Signed-off-by: Vitaly Chikunov <vt@altlinux.org> > --- Reviewed-by: Richard Henderson <richard.henderson@linaro.org> r~
On Mon, Mar 09, 2020 at 11:45:57PM +0300, Vitaly Chikunov wrote: > rlwinm cannot just AND with Mask if shift value is zero on ppc64 when > Mask Begin is greater than Mask End and high bits are set to 1. > > Note that PowerISA 3.0B says that for `rlwinm' ROTL32 is used, and > ROTL32 is defined (in 3.3.14) so that rotated value should have two > copies of lower word of the source value. > > This seems to be another incarnation of the fix from 820724d170 > ("target-ppc: Fix rlwimi, rlwinm, rlwnm again"), except I leave > optimization when Mask value is less than 32 bits. > > Fixes: 7b4d326f47 ("target-ppc: Use the new deposit and extract ops") > Cc: qemu-stable@nongnu.org > Signed-off-by: Vitaly Chikunov <vt@altlinux.org> Applied to ppc-for-5.0. > --- > target/ppc/translate.c | 20 +++++++++++--------- > 1 file changed, 11 insertions(+), 9 deletions(-) > > diff --git a/target/ppc/translate.c b/target/ppc/translate.c > index 36fa27367c..127c82a24e 100644 > --- a/target/ppc/translate.c > +++ b/target/ppc/translate.c > @@ -1938,15 +1938,17 @@ static void gen_rlwinm(DisasContext *ctx) > me += 32; > #endif > mask = MASK(mb, me); > - if (sh == 0) { > - tcg_gen_andi_tl(t_ra, t_rs, mask); > - } else if (mask <= 0xffffffffu) { > - TCGv_i32 t0 = tcg_temp_new_i32(); > - tcg_gen_trunc_tl_i32(t0, t_rs); > - tcg_gen_rotli_i32(t0, t0, sh); > - tcg_gen_andi_i32(t0, t0, mask); > - tcg_gen_extu_i32_tl(t_ra, t0); > - tcg_temp_free_i32(t0); > + if (mask <= 0xffffffffu) { > + if (sh == 0) { > + tcg_gen_andi_tl(t_ra, t_rs, mask); > + } else { > + TCGv_i32 t0 = tcg_temp_new_i32(); > + tcg_gen_trunc_tl_i32(t0, t_rs); > + tcg_gen_rotli_i32(t0, t0, sh); > + tcg_gen_andi_i32(t0, t0, mask); > + tcg_gen_extu_i32_tl(t_ra, t0); > + tcg_temp_free_i32(t0); > + } > } else { > #if defined(TARGET_PPC64) > tcg_gen_deposit_i64(t_ra, t_rs, t_rs, 32, 32);
David, On Wed, Mar 11, 2020 at 10:15:03AM +1100, David Gibson wrote: > On Mon, Mar 09, 2020 at 11:45:57PM +0300, Vitaly Chikunov wrote: > > rlwinm cannot just AND with Mask if shift value is zero on ppc64 when > > Mask Begin is greater than Mask End and high bits are set to 1. > > > > Note that PowerISA 3.0B says that for `rlwinm' ROTL32 is used, and > > ROTL32 is defined (in 3.3.14) so that rotated value should have two > > copies of lower word of the source value. > > > > This seems to be another incarnation of the fix from 820724d170 > > ("target-ppc: Fix rlwimi, rlwinm, rlwnm again"), except I leave > > optimization when Mask value is less than 32 bits. > > > > Fixes: 7b4d326f47 ("target-ppc: Use the new deposit and extract ops") > > Cc: qemu-stable@nongnu.org > > Signed-off-by: Vitaly Chikunov <vt@altlinux.org> > > Applied to ppc-for-5.0. Thanks! FYI, there is at least one real case of this bug: https://github.com/iovisor/bcc/issues/2771 so this is not theoretical, and, probably, should go to the stable too. Thanks, > > > --- > > target/ppc/translate.c | 20 +++++++++++--------- > > 1 file changed, 11 insertions(+), 9 deletions(-) > > > > diff --git a/target/ppc/translate.c b/target/ppc/translate.c > > index 36fa27367c..127c82a24e 100644 > > --- a/target/ppc/translate.c > > +++ b/target/ppc/translate.c > > @@ -1938,15 +1938,17 @@ static void gen_rlwinm(DisasContext *ctx) > > me += 32; > > #endif > > mask = MASK(mb, me); > > - if (sh == 0) { > > - tcg_gen_andi_tl(t_ra, t_rs, mask); > > - } else if (mask <= 0xffffffffu) { > > - TCGv_i32 t0 = tcg_temp_new_i32(); > > - tcg_gen_trunc_tl_i32(t0, t_rs); > > - tcg_gen_rotli_i32(t0, t0, sh); > > - tcg_gen_andi_i32(t0, t0, mask); > > - tcg_gen_extu_i32_tl(t_ra, t0); > > - tcg_temp_free_i32(t0); > > + if (mask <= 0xffffffffu) { > > + if (sh == 0) { > > + tcg_gen_andi_tl(t_ra, t_rs, mask); > > + } else { > > + TCGv_i32 t0 = tcg_temp_new_i32(); > > + tcg_gen_trunc_tl_i32(t0, t_rs); > > + tcg_gen_rotli_i32(t0, t0, sh); > > + tcg_gen_andi_i32(t0, t0, mask); > > + tcg_gen_extu_i32_tl(t_ra, t0); > > + tcg_temp_free_i32(t0); > > + } > > } else { > > #if defined(TARGET_PPC64) > > tcg_gen_deposit_i64(t_ra, t_rs, t_rs, 32, 32); > > -- > David Gibson | I'll have my music baroque, and my code > david AT gibson.dropbear.id.au | minimalist, thank you. NOT _the_ _other_ > | _way_ _around_! > http://www.ozlabs.org/~dgibson
On Wed, Mar 11, 2020 at 04:00:22PM +0300, Vitaly Chikunov wrote: > David, > > On Wed, Mar 11, 2020 at 10:15:03AM +1100, David Gibson wrote: > > On Mon, Mar 09, 2020 at 11:45:57PM +0300, Vitaly Chikunov wrote: > > > rlwinm cannot just AND with Mask if shift value is zero on ppc64 when > > > Mask Begin is greater than Mask End and high bits are set to 1. > > > > > > Note that PowerISA 3.0B says that for `rlwinm' ROTL32 is used, and > > > ROTL32 is defined (in 3.3.14) so that rotated value should have two > > > copies of lower word of the source value. > > > > > > This seems to be another incarnation of the fix from 820724d170 > > > ("target-ppc: Fix rlwimi, rlwinm, rlwnm again"), except I leave > > > optimization when Mask value is less than 32 bits. > > > > > > Fixes: 7b4d326f47 ("target-ppc: Use the new deposit and extract ops") > > > Cc: qemu-stable@nongnu.org > > > Signed-off-by: Vitaly Chikunov <vt@altlinux.org> > > > > Applied to ppc-for-5.0. > > Thanks! FYI, there is at least one real case of this bug: > https://github.com/iovisor/bcc/issues/2771 > so this is not theoretical, and, probably, should go to the stable > too. Adding CC to Mike Roth who looks after the stable branch. Can you include this one, please. > > Thanks, > > > > > > > --- > > > target/ppc/translate.c | 20 +++++++++++--------- > > > 1 file changed, 11 insertions(+), 9 deletions(-) > > > > > > diff --git a/target/ppc/translate.c b/target/ppc/translate.c > > > index 36fa27367c..127c82a24e 100644 > > > --- a/target/ppc/translate.c > > > +++ b/target/ppc/translate.c > > > @@ -1938,15 +1938,17 @@ static void gen_rlwinm(DisasContext *ctx) > > > me += 32; > > > #endif > > > mask = MASK(mb, me); > > > - if (sh == 0) { > > > - tcg_gen_andi_tl(t_ra, t_rs, mask); > > > - } else if (mask <= 0xffffffffu) { > > > - TCGv_i32 t0 = tcg_temp_new_i32(); > > > - tcg_gen_trunc_tl_i32(t0, t_rs); > > > - tcg_gen_rotli_i32(t0, t0, sh); > > > - tcg_gen_andi_i32(t0, t0, mask); > > > - tcg_gen_extu_i32_tl(t_ra, t0); > > > - tcg_temp_free_i32(t0); > > > + if (mask <= 0xffffffffu) { > > > + if (sh == 0) { > > > + tcg_gen_andi_tl(t_ra, t_rs, mask); > > > + } else { > > > + TCGv_i32 t0 = tcg_temp_new_i32(); > > > + tcg_gen_trunc_tl_i32(t0, t_rs); > > > + tcg_gen_rotli_i32(t0, t0, sh); > > > + tcg_gen_andi_i32(t0, t0, mask); > > > + tcg_gen_extu_i32_tl(t_ra, t0); > > > + tcg_temp_free_i32(t0); > > > + } > > > } else { > > > #if defined(TARGET_PPC64) > > > tcg_gen_deposit_i64(t_ra, t_rs, t_rs, 32, 32); > > > >
diff --git a/target/ppc/translate.c b/target/ppc/translate.c index 36fa27367c..127c82a24e 100644 --- a/target/ppc/translate.c +++ b/target/ppc/translate.c @@ -1938,15 +1938,17 @@ static void gen_rlwinm(DisasContext *ctx) me += 32; #endif mask = MASK(mb, me); - if (sh == 0) { - tcg_gen_andi_tl(t_ra, t_rs, mask); - } else if (mask <= 0xffffffffu) { - TCGv_i32 t0 = tcg_temp_new_i32(); - tcg_gen_trunc_tl_i32(t0, t_rs); - tcg_gen_rotli_i32(t0, t0, sh); - tcg_gen_andi_i32(t0, t0, mask); - tcg_gen_extu_i32_tl(t_ra, t0); - tcg_temp_free_i32(t0); + if (mask <= 0xffffffffu) { + if (sh == 0) { + tcg_gen_andi_tl(t_ra, t_rs, mask); + } else { + TCGv_i32 t0 = tcg_temp_new_i32(); + tcg_gen_trunc_tl_i32(t0, t_rs); + tcg_gen_rotli_i32(t0, t0, sh); + tcg_gen_andi_i32(t0, t0, mask); + tcg_gen_extu_i32_tl(t_ra, t0); + tcg_temp_free_i32(t0); + } } else { #if defined(TARGET_PPC64) tcg_gen_deposit_i64(t_ra, t_rs, t_rs, 32, 32);
rlwinm cannot just AND with Mask if shift value is zero on ppc64 when Mask Begin is greater than Mask End and high bits are set to 1. Note that PowerISA 3.0B says that for `rlwinm' ROTL32 is used, and ROTL32 is defined (in 3.3.14) so that rotated value should have two copies of lower word of the source value. This seems to be another incarnation of the fix from 820724d170 ("target-ppc: Fix rlwimi, rlwinm, rlwnm again"), except I leave optimization when Mask value is less than 32 bits. Fixes: 7b4d326f47 ("target-ppc: Use the new deposit and extract ops") Cc: qemu-stable@nongnu.org Signed-off-by: Vitaly Chikunov <vt@altlinux.org> --- target/ppc/translate.c | 20 +++++++++++--------- 1 file changed, 11 insertions(+), 9 deletions(-)