Message ID | 20190613050937.124903-1-aik@ozlabs.ru |
---|---|
State | New |
Headers | show |
Series | [qemu] loader: Trace loaded images | expand |
Patchew URL: https://patchew.org/QEMU/20190613050937.124903-1-aik@ozlabs.ru/ 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 time make docker-test-debug@fedora TARGET_LIST=x86_64-softmmu J=14 NETWORK=1 === TEST SCRIPT END === 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" ==7753==WARNING: ASan doesn't fully support makecontext/swapcontext functions and may produce false positives in some cases! ==7753==WARNING: ASan is ignoring requested __asan_handle_no_return: stack top: 0x7ffc84a9b000; bottom 0x7fbac86f8000; size: 0x0041bc3a3000 (282330804224) 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 1 fdc-test /x86_64/fdc/cmos PASS 2 fdc-test /x86_64/fdc/no_media_on_start PASS 3 fdc-test /x86_64/fdc/read_without_media ==7766==WARNING: ASan doesn't fully support makecontext/swapcontext functions and may produce false positives in some cases! PASS 4 fdc-test /x86_64/fdc/media_change PASS 5 fdc-test /x86_64/fdc/sense_interrupt PASS 6 fdc-test /x86_64/fdc/relative_seek --- PASS 12 test-aio /aio/event/flush PASS 13 test-aio /aio/event/wait/no-flush-cb PASS 14 test-aio /aio/timer/schedule ==7778==WARNING: ASan doesn't fully support makecontext/swapcontext functions and may produce false positives in some cases! PASS 15 test-aio /aio/coroutine/queue-chaining PASS 16 test-aio /aio-gsource/flush PASS 17 test-aio /aio-gsource/bh/schedule --- 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" PASS 1 test-aio-multithread /aio/multi/lifecycle ==7784==WARNING: ASan doesn't fully support makecontext/swapcontext functions and may produce false positives in some cases! PASS 2 test-aio-multithread /aio/multi/schedule PASS 3 test-aio-multithread /aio/multi/mutex/contended 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/ide-test -m=quick -k --tap < /dev/null | ./scripts/tap-driver.pl --test-name="ide-test" PASS 4 test-aio-multithread /aio/multi/mutex/handoff ==7812==WARNING: ASan doesn't fully support makecontext/swapcontext functions and may produce false positives in some cases! PASS 5 test-aio-multithread /aio/multi/mutex/mcs PASS 1 ide-test /x86_64/ide/identify PASS 6 test-aio-multithread /aio/multi/mutex/pthread ==7828==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-throttle -m=quick -k --tap < /dev/null | ./scripts/tap-driver.pl --test-name="test-throttle" ==7836==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 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" PASS 2 ide-test /x86_64/ide/flush ==7842==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 ==7844==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 ==7879==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 5 test-thread-pool /thread-pool/cancel ==7885==WARNING: ASan doesn't fully support makecontext/swapcontext functions and may produce false positives in some cases! PASS 5 ide-test /x86_64/ide/bmdma/short_prdt ==7891==WARNING: ASan doesn't fully support makecontext/swapcontext functions and may produce false positives in some cases! PASS 6 ide-test /x86_64/ide/bmdma/one_sector_short_prdt 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 2 test-hbitmap /hbitmap/size/0 PASS 3 test-hbitmap /hbitmap/size/unaligned PASS 4 test-hbitmap /hbitmap/iter/empty ==7897==WARNING: ASan doesn't fully support makecontext/swapcontext functions and may produce false positives in some cases! PASS 7 ide-test /x86_64/ide/bmdma/long_prdt PASS 5 test-hbitmap /hbitmap/iter/partial PASS 6 test-hbitmap /hbitmap/iter/granularity --- PASS 10 test-hbitmap /hbitmap/set/all PASS 11 test-hbitmap /hbitmap/set/one PASS 12 test-hbitmap /hbitmap/set/two-elem ==7908==WARNING: ASan doesn't fully support makecontext/swapcontext functions and may produce false positives in some cases! ==7908==WARNING: ASan is ignoring requested __asan_handle_no_return: stack top: 0x7ffc31861000; bottom 0x7f8fbf9fe000; size: 0x006c71e63000 (465767378944) False positive error reports may follow For details see https://github.com/google/sanitizers/issues/189 PASS 13 test-hbitmap /hbitmap/set/general --- PASS 28 test-hbitmap /hbitmap/truncate/shrink/medium PASS 29 test-hbitmap /hbitmap/truncate/shrink/large PASS 30 test-hbitmap /hbitmap/meta/zero ==7919==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/empty_drive ==7924==WARNING: ASan doesn't fully support makecontext/swapcontext functions and may produce false positives in some cases! PASS 11 ide-test /x86_64/ide/flush/retry_pci ==7930==WARNING: ASan doesn't fully support makecontext/swapcontext functions and may produce false positives in some cases! PASS 12 ide-test /x86_64/ide/flush/retry_isa ==7936==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/pio PASS 31 test-hbitmap /hbitmap/meta/one PASS 32 test-hbitmap /hbitmap/meta/byte PASS 33 test-hbitmap /hbitmap/meta/word ==7942==WARNING: ASan doesn't fully support makecontext/swapcontext functions and may produce false positives in some cases! PASS 34 test-hbitmap /hbitmap/meta/sector PASS 35 test-hbitmap /hbitmap/serialize/align PASS 14 ide-test /x86_64/ide/cdrom/pio_large ==7948==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 15 ide-test /x86_64/ide/cdrom/dma PASS 37 test-hbitmap /hbitmap/serialize/part --- PASS 42 test-hbitmap /hbitmap/next_dirty_area/next_dirty_area_1 PASS 43 test-hbitmap /hbitmap/next_dirty_area/next_dirty_area_4 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" ==7961==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 16 test-bdrv-drain /bdrv-drain/graph-change/drain_subtree PASS 17 test-bdrv-drain /bdrv-drain/graph-change/drain_all ================================================================= ==7961==ERROR: AddressSanitizer: heap-use-after-free on address 0x61200002c1f0 at pc 0x561ebdf13bc6 bp 0x7f44330b9000 sp 0x7f44330b8ff8 WRITE of size 1 at 0x61200002c1f0 thread T5 #0 0x561ebdf13bc5 in aio_notify /tmp/qemu-test/src/util/async.c:351:9 #1 0x561ebdf1583b in qemu_bh_schedule /tmp/qemu-test/src/util/async.c:167:9 --- Right alloca redzone: cb Shadow gap: cc ==7961==ABORTING ERROR - too few tests run (expected 39, got 17) make: *** [/tmp/qemu-test/src/tests/Makefile.include:893: check-unit] Error 1 make: *** Waiting for unfinished jobs.... ==7972==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 ==7978==WARNING: ASan doesn't fully support makecontext/swapcontext functions and may produce false positives in some cases! PASS 2 ahci-test /x86_64/ahci/pci_spec ==7984==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 ==7990==WARNING: ASan doesn't fully support makecontext/swapcontext functions and may produce false positives in some cases! PASS 4 ahci-test /x86_64/ahci/hba_spec ==7996==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 ==8002==WARNING: ASan doesn't fully support makecontext/swapcontext functions and may produce false positives in some cases! PASS 6 ahci-test /x86_64/ahci/identify ==8008==WARNING: ASan doesn't fully support makecontext/swapcontext functions and may produce false positives in some cases! PASS 7 ahci-test /x86_64/ahci/max ==8014==WARNING: ASan doesn't fully support makecontext/swapcontext functions and may produce false positives in some cases! PASS 8 ahci-test /x86_64/ahci/reset ==8020==WARNING: ASan doesn't fully support makecontext/swapcontext functions and may produce false positives in some cases! ==8020==WARNING: ASan is ignoring requested __asan_handle_no_return: stack top: 0x7ffc3cbcb000; bottom 0x7f80ef9fe000; size: 0x007b4d1cd000 (529574711296) 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 ==8026==WARNING: ASan doesn't fully support makecontext/swapcontext functions and may produce false positives in some cases! ==8026==WARNING: ASan is ignoring requested __asan_handle_no_return: stack top: 0x7ffc06ac7000; bottom 0x7f7af57fe000; size: 0x0081112c9000 (554338914304) 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 ==8032==WARNING: ASan doesn't fully support makecontext/swapcontext functions and may produce false positives in some cases! ==8032==WARNING: ASan is ignoring requested __asan_handle_no_return: stack top: 0x7fffd612f000; bottom 0x7f66c65fe000; size: 0x00990fb31000 (657393389568) 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 ==8038==WARNING: ASan doesn't fully support makecontext/swapcontext functions and may produce false positives in some cases! ==8038==WARNING: ASan is ignoring requested __asan_handle_no_return: stack top: 0x7ffc0cd23000; bottom 0x7f28361fe000; size: 0x00d3d6b25000 (909840109568) False positive error reports may follow For details see https://github.com/google/sanitizers/issues/189 PASS 12 ahci-test /x86_64/ahci/io/pio/lba28/double/zero ==8044==WARNING: ASan doesn't fully support makecontext/swapcontext functions and may produce false positives in some cases! ==8044==WARNING: ASan is ignoring requested __asan_handle_no_return: stack top: 0x7ffc023cb000; bottom 0x7fb56abfe000; size: 0x0046977cd000 (303189250048) 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 ==8050==WARNING: ASan doesn't fully support makecontext/swapcontext functions and may produce false positives in some cases! ==8050==WARNING: ASan is ignoring requested __asan_handle_no_return: stack top: 0x7ffe13270000; bottom 0x7fee7fbfe000; size: 0x000f93672000 (66897518592) 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 ==8056==WARNING: ASan doesn't fully support makecontext/swapcontext functions and may produce false positives in some cases! ==8056==WARNING: ASan is ignoring requested __asan_handle_no_return: stack top: 0x7ffd60aee000; bottom 0x7f78093fe000; size: 0x0085576f0000 (572697542656) 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 ==8062==WARNING: ASan doesn't fully support makecontext/swapcontext functions and may produce false positives in some cases! ==8062==WARNING: ASan is ignoring requested __asan_handle_no_return: stack top: 0x7fff84513000; bottom 0x7f9b87ffe000; size: 0x0063fc515000 (429434949632) False positive error reports may follow For details see https://github.com/google/sanitizers/issues/189 PASS 16 ahci-test /x86_64/ahci/io/pio/lba28/long/low ==8068==WARNING: ASan doesn't fully support makecontext/swapcontext functions and may produce false positives in some cases! ==8068==WARNING: ASan is ignoring requested __asan_handle_no_return: stack top: 0x7fff66dcb000; bottom 0x7f97e417c000; size: 0x006782c4f000 (444575576064) False positive error reports may follow For details see https://github.com/google/sanitizers/issues/189 PASS 17 ahci-test /x86_64/ahci/io/pio/lba28/long/high ==8074==WARNING: ASan doesn't fully support makecontext/swapcontext functions and may produce false positives in some cases! PASS 18 ahci-test /x86_64/ahci/io/pio/lba28/short/zero ==8080==WARNING: ASan doesn't fully support makecontext/swapcontext functions and may produce false positives in some cases! PASS 19 ahci-test /x86_64/ahci/io/pio/lba28/short/low ==8086==WARNING: ASan doesn't fully support makecontext/swapcontext functions and may produce false positives in some cases! PASS 20 ahci-test /x86_64/ahci/io/pio/lba28/short/high ==8092==WARNING: ASan doesn't fully support makecontext/swapcontext functions and may produce false positives in some cases! ==8092==WARNING: ASan is ignoring requested __asan_handle_no_return: stack top: 0x7ffc2de43000; bottom 0x7f21125fe000; size: 0x00db1b845000 (941059493888) 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 ==8098==WARNING: ASan doesn't fully support makecontext/swapcontext functions and may produce false positives in some cases! ==8098==WARNING: ASan is ignoring requested __asan_handle_no_return: stack top: 0x7ffcf405d000; bottom 0x7fa5fa1fe000; size: 0x0056f9e5f000 (373559783424) False positive error reports may follow For details see https://github.com/google/sanitizers/issues/189 PASS 22 ahci-test /x86_64/ahci/io/pio/lba48/simple/low ==8104==WARNING: ASan doesn't fully support makecontext/swapcontext functions and may produce false positives in some cases! ==8104==WARNING: ASan is ignoring requested __asan_handle_no_return: stack top: 0x7ffeb79bb000; bottom 0x7ff8339fe000; size: 0x000683fbd000 (27984121856) False positive error reports may follow For details see https://github.com/google/sanitizers/issues/189 PASS 23 ahci-test /x86_64/ahci/io/pio/lba48/simple/high ==8110==WARNING: ASan doesn't fully support makecontext/swapcontext functions and may produce false positives in some cases! ==8110==WARNING: ASan is ignoring requested __asan_handle_no_return: stack top: 0x7ffc3eeb8000; bottom 0x7f135a7fe000; size: 0x00e8e46ba000 (1000264671232) False positive error reports may follow For details see https://github.com/google/sanitizers/issues/189 PASS 24 ahci-test /x86_64/ahci/io/pio/lba48/double/zero ==8116==WARNING: ASan doesn't fully support makecontext/swapcontext functions and may produce false positives in some cases! ==8116==WARNING: ASan is ignoring requested __asan_handle_no_return: stack top: 0x7ffd9c35c000; bottom 0x7ffa373fe000; size: 0x000364f5e000 (14578737152) 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 ==8122==WARNING: ASan doesn't fully support makecontext/swapcontext functions and may produce false positives in some cases! ==8122==WARNING: ASan is ignoring requested __asan_handle_no_return: stack top: 0x7fff212fc000; bottom 0x7fbe971fe000; size: 0x00408a0fe000 (277194203136) 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 ==8128==WARNING: ASan doesn't fully support makecontext/swapcontext functions and may produce false positives in some cases! ==8128==WARNING: ASan is ignoring requested __asan_handle_no_return: stack top: 0x7ffec0490000; bottom 0x7f2959724000; size: 0x00d566d6c000 (916553383936) False positive error reports may follow For details see https://github.com/google/sanitizers/issues/189 PASS 27 ahci-test /x86_64/ahci/io/pio/lba48/long/zero ==8134==WARNING: ASan doesn't fully support makecontext/swapcontext functions and may produce false positives in some cases! ==8134==WARNING: ASan is ignoring requested __asan_handle_no_return: stack top: 0x7ffd50f48000; bottom 0x7fdca9ffe000; size: 0x0020a6f4a000 (140240003072) 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 ==8140==WARNING: ASan doesn't fully support makecontext/swapcontext functions and may produce false positives in some cases! ==8140==WARNING: ASan is ignoring requested __asan_handle_no_return: stack top: 0x7ffd6787e000; bottom 0x7f0a28d24000; size: 0x00f33eb5a000 (1044729143296) False positive error reports may follow For details see https://github.com/google/sanitizers/issues/189 PASS 29 ahci-test /x86_64/ahci/io/pio/lba48/long/high ==8146==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 ==8152==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 ==8158==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 ==8164==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 ==8170==WARNING: ASan doesn't fully support makecontext/swapcontext functions and may produce false positives in some cases! PASS 34 ahci-test /x86_64/ahci/io/dma/lba28/retry ==8176==WARNING: ASan doesn't fully support makecontext/swapcontext functions and may produce false positives in some cases! PASS 35 ahci-test /x86_64/ahci/io/dma/lba28/simple/zero ==8182==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 ==8188==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 ==8194==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 ==8200==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 ==8206==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 ==8212==WARNING: ASan doesn't fully support makecontext/swapcontext functions and may produce false positives in some cases! PASS 41 ahci-test /x86_64/ahci/io/dma/lba28/long/zero ==8218==WARNING: ASan doesn't fully support makecontext/swapcontext functions and may produce false positives in some cases! PASS 42 ahci-test /x86_64/ahci/io/dma/lba28/long/low ==8224==WARNING: ASan doesn't fully support makecontext/swapcontext functions and may produce false positives in some cases! PASS 43 ahci-test /x86_64/ahci/io/dma/lba28/long/high ==8230==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 ==8236==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 ==8242==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 ==8249==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 ==8255==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 ==8261==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 ==8267==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 ==8273==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 ==8279==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 ==8285==WARNING: ASan doesn't fully support makecontext/swapcontext functions and may produce false positives in some cases! PASS 53 ahci-test /x86_64/ahci/io/dma/lba48/long/zero ==8291==WARNING: ASan doesn't fully support makecontext/swapcontext functions and may produce false positives in some cases! PASS 54 ahci-test /x86_64/ahci/io/dma/lba48/long/low ==8297==WARNING: ASan doesn't fully support makecontext/swapcontext functions and may produce false positives in some cases! PASS 55 ahci-test /x86_64/ahci/io/dma/lba48/long/high ==8303==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 ==8309==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 ==8315==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 ==8321==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 ==8327==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 ==8333==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 ==8339==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 ==8346==WARNING: ASan doesn't fully support makecontext/swapcontext functions and may produce false positives in some cases! ==8351==WARNING: ASan doesn't fully support makecontext/swapcontext functions and may produce false positives in some cases! PASS 63 ahci-test /x86_64/ahci/flush/migrate ==8360==WARNING: ASan doesn't fully support makecontext/swapcontext functions and may produce false positives in some cases! ==8365==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 ==8374==WARNING: ASan doesn't fully support makecontext/swapcontext functions and may produce false positives in some cases! ==8379==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 ==8388==WARNING: ASan doesn't fully support makecontext/swapcontext functions and may produce false positives in some cases! ==8393==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 ==8402==WARNING: ASan doesn't fully support makecontext/swapcontext functions and may produce false positives in some cases! ==8407==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 ==8416==WARNING: ASan doesn't fully support makecontext/swapcontext functions and may produce false positives in some cases! ==8421==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 ==8430==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 ==8435==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 ==8441==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 ==8447==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 ==8453==WARNING: ASan doesn't fully support makecontext/swapcontext functions and may produce false positives in some cases! ==8453==WARNING: ASan is ignoring requested __asan_handle_no_return: stack top: 0x7ffd7e338000; bottom 0x7f67d73fe000; size: 0x0095a6f3a000 (642751111168) 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 ==8459==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/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 ==8473==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 ==8479==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 ==8485==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 ==8491==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 ==8497==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 ==8503==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 ==8509==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 ==8515==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 ==8520==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 MALLOC_PERTURB_=${MALLOC_PERTURB_:-$(( ${RANDOM:-0} % 255 + 1))} QTEST_QEMU_BINARY=x86_64-softmmu/qemu-system-x86_64 QTEST_QEMU_IMG=qemu-img tests/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: failed to initialize KVM: No such file or directory qemu-system-x86_64: Back to tcg accelerator ==8588==WARNING: ASan doesn't fully support makecontext/swapcontext functions and may produce false positives in some cases! PASS 1 bios-tables-test /x86_64/acpi/piix4 Could not access KVM kernel module: No such file or directory qemu-system-x86_64: failed to initialize KVM: No such file or directory qemu-system-x86_64: Back to tcg accelerator ==8594==WARNING: ASan doesn't fully support makecontext/swapcontext functions and may produce false positives in some cases! PASS 2 bios-tables-test /x86_64/acpi/q35 Could not access KVM kernel module: No such file or directory qemu-system-x86_64: failed to initialize KVM: No such file or directory qemu-system-x86_64: Back to tcg accelerator ==8600==WARNING: ASan doesn't fully support makecontext/swapcontext functions and may produce false positives in some cases! PASS 3 bios-tables-test /x86_64/acpi/piix4/bridge Could not access KVM kernel module: No such file or directory qemu-system-x86_64: failed to initialize KVM: No such file or directory qemu-system-x86_64: Back to tcg accelerator ==8606==WARNING: ASan doesn't fully support makecontext/swapcontext functions and may produce false positives in some cases! PASS 4 bios-tables-test /x86_64/acpi/piix4/ipmi Could not access KVM kernel module: No such file or directory qemu-system-x86_64: failed to initialize KVM: No such file or directory qemu-system-x86_64: Back to tcg accelerator ==8612==WARNING: ASan doesn't fully support makecontext/swapcontext functions and may produce false positives in some cases! PASS 5 bios-tables-test /x86_64/acpi/piix4/cpuhp Could not access KVM kernel module: No such file or directory qemu-system-x86_64: failed to initialize KVM: No such file or directory qemu-system-x86_64: Back to tcg accelerator ==8619==WARNING: ASan doesn't fully support makecontext/swapcontext functions and may produce false positives in some cases! PASS 6 bios-tables-test /x86_64/acpi/piix4/memhp Could not access KVM kernel module: No such file or directory qemu-system-x86_64: failed to initialize KVM: No such file or directory qemu-system-x86_64: Back to tcg accelerator ==8625==WARNING: ASan doesn't fully support makecontext/swapcontext functions and may produce false positives in some cases! PASS 7 bios-tables-test /x86_64/acpi/piix4/numamem Could not access KVM kernel module: No such file or directory qemu-system-x86_64: failed to initialize KVM: No such file or directory qemu-system-x86_64: Back to tcg accelerator ==8631==WARNING: ASan doesn't fully support makecontext/swapcontext functions and may produce false positives in some cases! PASS 8 bios-tables-test /x86_64/acpi/piix4/dimmpxm Could not access KVM kernel module: No such file or directory qemu-system-x86_64: failed to initialize KVM: No such file or directory qemu-system-x86_64: Back to tcg accelerator ==8640==WARNING: ASan doesn't fully support makecontext/swapcontext functions and may produce false positives in some cases! PASS 9 bios-tables-test /x86_64/acpi/q35/bridge Could not access KVM kernel module: No such file or directory qemu-system-x86_64: failed to initialize KVM: No such file or directory qemu-system-x86_64: Back to tcg accelerator ==8646==WARNING: ASan doesn't fully support makecontext/swapcontext functions and may produce false positives in some cases! PASS 10 bios-tables-test /x86_64/acpi/q35/mmio64 Could not access KVM kernel module: No such file or directory qemu-system-x86_64: failed to initialize KVM: No such file or directory qemu-system-x86_64: Back to tcg accelerator ==8652==WARNING: ASan doesn't fully support makecontext/swapcontext functions and may produce false positives in some cases! PASS 11 bios-tables-test /x86_64/acpi/q35/ipmi Could not access KVM kernel module: No such file or directory qemu-system-x86_64: failed to initialize KVM: No such file or directory qemu-system-x86_64: Back to tcg accelerator ==8658==WARNING: ASan doesn't fully support makecontext/swapcontext functions and may produce false positives in some cases! PASS 12 bios-tables-test /x86_64/acpi/q35/cpuhp Could not access KVM kernel module: No such file or directory qemu-system-x86_64: failed to initialize KVM: No such file or directory qemu-system-x86_64: Back to tcg accelerator ==8665==WARNING: ASan doesn't fully support makecontext/swapcontext functions and may produce false positives in some cases! PASS 13 bios-tables-test /x86_64/acpi/q35/memhp Could not access KVM kernel module: No such file or directory qemu-system-x86_64: failed to initialize KVM: No such file or directory qemu-system-x86_64: Back to tcg accelerator ==8671==WARNING: ASan doesn't fully support makecontext/swapcontext functions and may produce false positives in some cases! PASS 14 bios-tables-test /x86_64/acpi/q35/numamem Could not access KVM kernel module: No such file or directory qemu-system-x86_64: failed to initialize KVM: No such file or directory qemu-system-x86_64: Back to tcg accelerator ==8677==WARNING: ASan doesn't fully support makecontext/swapcontext functions and may produce false positives in some cases! PASS 15 bios-tables-test /x86_64/acpi/q35/dimmpxm MALLOC_PERTURB_=${MALLOC_PERTURB_:-$(( ${RANDOM:-0} % 255 + 1))} QTEST_QEMU_BINARY=x86_64-softmmu/qemu-system-x86_64 QTEST_QEMU_IMG=qemu-img tests/boot-serial-test -m=quick -k --tap < /dev/null | ./scripts/tap-driver.pl --test-name="boot-serial-test" PASS 1 boot-serial-test /x86_64/boot-serial/isapc --- 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 ==8761==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/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/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 ==8849==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/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 --- PASS 1 usb-hcd-uhci-test /x86_64/uhci/pci/init PASS 2 usb-hcd-uhci-test /x86_64/uhci/pci/port1 PASS 3 usb-hcd-uhci-test /x86_64/uhci/pci/hotplug ==9044==WARNING: ASan doesn't fully support makecontext/swapcontext functions and may produce false positives in some cases! PASS 4 usb-hcd-uhci-test /x86_64/uhci/pci/hotplug/usb-storage MALLOC_PERTURB_=${MALLOC_PERTURB_:-$(( ${RANDOM:-0} % 255 + 1))} QTEST_QEMU_BINARY=x86_64-softmmu/qemu-system-x86_64 QTEST_QEMU_IMG=qemu-img tests/usb-hcd-xhci-test -m=quick -k --tap < /dev/null | ./scripts/tap-driver.pl --test-name="usb-hcd-xhci-test" PASS 1 usb-hcd-xhci-test /x86_64/xhci/pci/init PASS 2 usb-hcd-xhci-test /x86_64/xhci/pci/hotplug ==9053==WARNING: ASan doesn't fully support makecontext/swapcontext functions and may produce false positives in some cases! PASS 3 usb-hcd-xhci-test /x86_64/xhci/pci/hotplug/usb-uas PASS 4 usb-hcd-xhci-test /x86_64/xhci/pci/hotplug/usb-ccid MALLOC_PERTURB_=${MALLOC_PERTURB_:-$(( ${RANDOM:-0} % 255 + 1))} QTEST_QEMU_BINARY=x86_64-softmmu/qemu-system-x86_64 QTEST_QEMU_IMG=qemu-img tests/cpu-plug-test -m=quick -k --tap < /dev/null | ./scripts/tap-driver.pl --test-name="cpu-plug-test" --- Could not access KVM kernel module: No such file or directory qemu-system-x86_64: failed to initialize KVM: No such file or directory qemu-system-x86_64: Back to tcg accelerator ==9159==WARNING: ASan doesn't fully support makecontext/swapcontext functions and may produce false positives in some cases! PASS 1 vmgenid-test /x86_64/vmgenid/vmgenid/set-guid Could not access KVM kernel module: No such file or directory qemu-system-x86_64: failed to initialize KVM: No such file or directory qemu-system-x86_64: Back to tcg accelerator ==9165==WARNING: ASan doesn't fully support makecontext/swapcontext functions and may produce false positives in some cases! PASS 2 vmgenid-test /x86_64/vmgenid/vmgenid/set-guid-auto Could not access KVM kernel module: No such file or directory qemu-system-x86_64: failed to initialize KVM: No such file or directory qemu-system-x86_64: Back to tcg accelerator ==9171==WARNING: ASan doesn't fully support makecontext/swapcontext functions and may produce false positives in some cases! PASS 3 vmgenid-test /x86_64/vmgenid/vmgenid/query-monitor MALLOC_PERTURB_=${MALLOC_PERTURB_:-$(( ${RANDOM:-0} % 255 + 1))} QTEST_QEMU_BINARY=x86_64-softmmu/qemu-system-x86_64 QTEST_QEMU_IMG=qemu-img tests/tpm-crb-swtpm-test -m=quick -k --tap < /dev/null | ./scripts/tap-driver.pl --test-name="tpm-crb-swtpm-test" SKIP 1 tpm-crb-swtpm-test /x86_64/tpm/crb-swtpm/test # SKIP swtpm not in PATH or missing --tpm2 support --- Could not access KVM kernel module: No such file or directory qemu-system-x86_64: failed to initialize KVM: No such file or directory qemu-system-x86_64: Back to tcg accelerator ==9276==WARNING: ASan doesn't fully support makecontext/swapcontext functions and may produce false positives in some cases! Could not access KVM kernel module: No such file or directory qemu-system-x86_64: failed to initialize KVM: No such file or directory qemu-system-x86_64: Back to tcg accelerator ==9281==WARNING: ASan doesn't fully support makecontext/swapcontext functions and may produce false positives in some cases! PASS 3 migration-test /x86_64/migration/fd_proto Could not access KVM kernel module: No such file or directory qemu-system-x86_64: failed to initialize KVM: No such file or directory qemu-system-x86_64: Back to tcg accelerator ==9289==WARNING: ASan doesn't fully support makecontext/swapcontext functions and may produce false positives in some cases! Could not access KVM kernel module: No such file or directory qemu-system-x86_64: failed to initialize KVM: No such file or directory qemu-system-x86_64: Back to tcg accelerator ==9294==WARNING: ASan doesn't fully support makecontext/swapcontext functions and may produce false positives in some cases! PASS 4 migration-test /x86_64/migration/postcopy/unix PASS 5 migration-test /x86_64/migration/postcopy/recovery Could not access KVM kernel module: No such file or directory qemu-system-x86_64: failed to initialize KVM: No such file or directory qemu-system-x86_64: Back to tcg accelerator ==9324==WARNING: ASan doesn't fully support makecontext/swapcontext functions and may produce false positives in some cases! Could not access KVM kernel module: No such file or directory qemu-system-x86_64: failed to initialize KVM: No such file or directory qemu-system-x86_64: Back to tcg accelerator ==9329==WARNING: ASan doesn't fully support makecontext/swapcontext functions and may produce false positives in some cases! PASS 6 migration-test /x86_64/migration/precopy/unix Could not access KVM kernel module: No such file or directory qemu-system-x86_64: failed to initialize KVM: No such file or directory qemu-system-x86_64: Back to tcg accelerator ==9338==WARNING: ASan doesn't fully support makecontext/swapcontext functions and may produce false positives in some cases! Could not access KVM kernel module: No such file or directory qemu-system-x86_64: failed to initialize KVM: No such file or directory qemu-system-x86_64: Back to tcg accelerator ==9343==WARNING: ASan doesn't fully support makecontext/swapcontext functions and may produce false positives in some cases! PASS 7 migration-test /x86_64/migration/precopy/tcp Could not access KVM kernel module: No such file or directory qemu-system-x86_64: failed to initialize KVM: No such file or directory qemu-system-x86_64: Back to tcg accelerator ==9352==WARNING: ASan doesn't fully support makecontext/swapcontext functions and may produce false positives in some cases! Could not access KVM kernel module: No such file or directory qemu-system-x86_64: failed to initialize KVM: No such file or directory qemu-system-x86_64: Back to tcg accelerator ==9357==WARNING: ASan doesn't fully support makecontext/swapcontext functions and may produce false positives in some cases! PASS 8 migration-test /x86_64/migration/xbzrle/unix MALLOC_PERTURB_=${MALLOC_PERTURB_:-$(( ${RANDOM:-0} % 255 + 1))} QTEST_QEMU_BINARY=x86_64-softmmu/qemu-system-x86_64 QTEST_QEMU_IMG=qemu-img tests/test-x86-cpuid-compat -m=quick -k --tap < /dev/null | ./scripts/tap-driver.pl --test-name="test-x86-cpuid-compat" PASS 1 test-x86-cpuid-compat /x86/cpuid/parsing-plus-minus --- PASS 6 numa-test /x86_64/numa/pc/dynamic/cpu MALLOC_PERTURB_=${MALLOC_PERTURB_:-$(( ${RANDOM:-0} % 255 + 1))} QTEST_QEMU_BINARY=x86_64-softmmu/qemu-system-x86_64 QTEST_QEMU_IMG=qemu-img tests/qmp-test -m=quick -k --tap < /dev/null | ./scripts/tap-driver.pl --test-name="qmp-test" PASS 1 qmp-test /x86_64/qmp/protocol ==9686==WARNING: ASan doesn't fully support makecontext/swapcontext functions and may produce false positives in some cases! PASS 2 qmp-test /x86_64/qmp/oob PASS 3 qmp-test /x86_64/qmp/preconfig PASS 4 qmp-test /x86_64/qmp/missing-any-arg --- PASS 6 qos-test /x86_64/pc/i440FX-pcihost/pci-bus-pc/pci-bus/sdhci-pci/sdhci/sdhci-tests/registers PASS 7 qos-test /x86_64/pc/i440FX-pcihost/pci-bus-pc/pci-bus/tpci200/ipack/ipoctal232/ipoctal232-tests/nop PASS 8 qos-test /x86_64/pc/i440FX-pcihost/pci-bus-pc/pci-bus/tpci200/pci-device/pci-device-tests/nop ==10095==WARNING: ASan doesn't fully support makecontext/swapcontext functions and may produce false positives in some cases! PASS 9 qos-test /x86_64/pc/i440FX-pcihost/pci-bus-pc/pci-bus/virtio-9p-pci/pci-device/pci-device-tests/nop PASS 10 qos-test /x86_64/pc/i440FX-pcihost/pci-bus-pc/pci-bus/virtio-9p-pci/virtio/virtio-tests/nop PASS 11 qos-test /x86_64/pc/i440FX-pcihost/pci-bus-pc/pci-bus/virtio-9p-pci/virtio-9p/virtio-9p-tests/config --- PASS 20 qos-test /x86_64/pc/i440FX-pcihost/pci-bus-pc/pci-bus/virtio-9p-pci/virtio-9p/virtio-9p-tests/fs/flush/ignored PASS 21 qos-test /x86_64/pc/i440FX-pcihost/pci-bus-pc/pci-bus/virtio-balloon-pci/pci-device/pci-device-tests/nop PASS 22 qos-test /x86_64/pc/i440FX-pcihost/pci-bus-pc/pci-bus/virtio-balloon-pci/virtio/virtio-tests/nop ==10108==WARNING: ASan doesn't fully support makecontext/swapcontext functions and may produce false positives in some cases! PASS 23 qos-test /x86_64/pc/i440FX-pcihost/pci-bus-pc/pci-bus/virtio-blk-pci/virtio-blk/virtio-blk-tests/indirect ==10115==WARNING: ASan doesn't fully support makecontext/swapcontext functions and may produce false positives in some cases! PASS 24 qos-test /x86_64/pc/i440FX-pcihost/pci-bus-pc/pci-bus/virtio-blk-pci/virtio-blk/virtio-blk-tests/config ==10122==WARNING: ASan doesn't fully support makecontext/swapcontext functions and may produce false positives in some cases! PASS 25 qos-test /x86_64/pc/i440FX-pcihost/pci-bus-pc/pci-bus/virtio-blk-pci/virtio-blk/virtio-blk-tests/basic ==10129==WARNING: ASan doesn't fully support makecontext/swapcontext functions and may produce false positives in some cases! PASS 26 qos-test /x86_64/pc/i440FX-pcihost/pci-bus-pc/pci-bus/virtio-blk-pci/virtio-blk/virtio-blk-tests/resize ==10136==WARNING: ASan doesn't fully support makecontext/swapcontext functions and may produce false positives in some cases! PASS 27 qos-test /x86_64/pc/i440FX-pcihost/pci-bus-pc/pci-bus/virtio-blk-pci/virtio-blk-pci-tests/msix ==10143==WARNING: ASan doesn't fully support makecontext/swapcontext functions and may produce false positives in some cases! PASS 28 qos-test /x86_64/pc/i440FX-pcihost/pci-bus-pc/pci-bus/virtio-blk-pci/virtio-blk-pci-tests/idx ==10150==WARNING: ASan doesn't fully support makecontext/swapcontext functions and may produce false positives in some cases! PASS 29 qos-test /x86_64/pc/i440FX-pcihost/pci-bus-pc/pci-bus/virtio-blk-pci/virtio-blk-pci-tests/nxvirtq ==10157==WARNING: ASan doesn't fully support makecontext/swapcontext functions and may produce false positives in some cases! PASS 30 qos-test /x86_64/pc/i440FX-pcihost/pci-bus-pc/pci-bus/virtio-blk-pci/virtio-blk-pci-tests/hotplug PASS 31 qos-test /x86_64/pc/i440FX-pcihost/pci-bus-pc/pci-bus/virtio-net-pci/virtio-net/virtio-net-tests/basic PASS 32 qos-test /x86_64/pc/i440FX-pcihost/pci-bus-pc/pci-bus/virtio-net-pci/virtio-net/virtio-net-tests/rx_stop_cont --- PASS 40 qos-test /x86_64/pc/i440FX-pcihost/pci-bus-pc/pci-bus/virtio-rng-pci/pci-device/pci-device-tests/nop PASS 41 qos-test /x86_64/pc/i440FX-pcihost/pci-bus-pc/pci-bus/virtio-rng-pci/virtio/virtio-tests/nop PASS 42 qos-test /x86_64/pc/i440FX-pcihost/pci-bus-pc/pci-bus/virtio-rng-pci/virtio-rng-pci-tests/hotplug ==10268==WARNING: ASan doesn't fully support makecontext/swapcontext functions and may produce false positives in some cases! PASS 43 qos-test /x86_64/pc/i440FX-pcihost/pci-bus-pc/pci-bus/virtio-scsi-pci/pci-device/pci-device-tests/nop ==10274==WARNING: ASan doesn't fully support makecontext/swapcontext functions and may produce false positives in some cases! PASS 44 qos-test /x86_64/pc/i440FX-pcihost/pci-bus-pc/pci-bus/virtio-scsi-pci/virtio-scsi/virtio-scsi-tests/hotplug ==10280==WARNING: ASan doesn't fully support makecontext/swapcontext functions and may produce false positives in some cases! PASS 45 qos-test /x86_64/pc/i440FX-pcihost/pci-bus-pc/pci-bus/virtio-scsi-pci/virtio-scsi/virtio-scsi-tests/unaligned-write-same ==10286==WARNING: ASan doesn't fully support makecontext/swapcontext functions and may produce false positives in some cases! PASS 46 qos-test /x86_64/pc/i440FX-pcihost/pci-bus-pc/pci-bus/virtio-scsi-pci/virtio-scsi-pci-tests/iothread-attach-node PASS 47 qos-test /x86_64/pc/i440FX-pcihost/pci-bus-pc/pci-bus/virtio-serial-pci/pci-device/pci-device-tests/nop PASS 48 qos-test /x86_64/pc/i440FX-pcihost/pci-bus-pc/pci-bus/virtio-serial-pci/virtio/virtio-tests/nop --- PASS 67 qos-test /x86_64/pc/i440FX-pcihost/pci-bus-pc/pci-bus/i82562/pci-device/pci-device-tests/nop PASS 68 qos-test /x86_64/pc/i440FX-pcihost/pci-bus-pc/pci-bus/i82801/pci-device/pci-device-tests/nop PASS 69 qos-test /x86_64/pc/i440FX-pcihost/pci-bus-pc/pci-bus/ES1370/pci-device/pci-device-tests/nop ==10431==WARNING: ASan doesn't fully support makecontext/swapcontext functions and may produce false positives in some cases! PASS 70 qos-test /x86_64/pc/i440FX-pcihost/pci-bus-pc/pci-bus/megasas/pci-device/pci-device-tests/nop PASS 71 qos-test /x86_64/pc/i440FX-pcihost/pci-bus-pc/pci-bus/megasas/megasas-tests/dcmd/pd-get-info/fuzz PASS 72 qos-test /x86_64/pc/i440FX-pcihost/pci-bus-pc/pci-bus/ne2k_pci/pci-device/pci-device-tests/nop PASS 73 qos-test /x86_64/pc/i440FX-pcihost/pci-bus-pc/pci-bus/nvme/pci-device/pci-device-tests/nop ==10443==WARNING: ASan doesn't fully support makecontext/swapcontext functions and may produce false positives in some cases! PASS 74 qos-test /x86_64/pc/i440FX-pcihost/pci-bus-pc/pci-bus/nvme/nvme-tests/oob-cmb-access ==10449==WARNING: ASan doesn't fully support makecontext/swapcontext functions and may produce false positives in some cases! PASS 75 qos-test /x86_64/pc/i440FX-pcihost/pci-bus-pc/pci-bus/pcnet/pci-device/pci-device-tests/nop PASS 76 qos-test /x86_64/pc/i440FX-pcihost/pci-bus-pc/pci-bus/pci-ohci/pci-device/pci-device-tests/nop PASS 77 qos-test /x86_64/pc/i440FX-pcihost/pci-bus-pc/pci-bus/pci-ohci/pci-ohci-tests/ohci_pci-test-hotplug The full log is available at http://patchew.org/logs/20190613050937.124903-1-aik@ozlabs.ru/testing.asan/?type=message. --- Email generated automatically by Patchew [https://patchew.org/]. Please send your feedback to patchew-devel@redhat.com
Hi Alexey, On 6/13/19 7:09 AM, Alexey Kardashevskiy wrote: > This adds a trace point which prints every loaded image. This includes > bios/firmware/kernel/initradmdisk/pcirom. > > Signed-off-by: Alexey Kardashevskiy <aik@ozlabs.ru> > --- > > The example for a pseries guest: > > loader_write_rom slof.bin: @0x0 size=0xe22e0 ROM=0 > loader_write_rom phdr #0: /home/aik/t/vml4120le: @0x400000 size=0x13df000 ROM=0 > loader_write_rom /home/aik/t/le.cpio: @0x1ad0000 size=0x9463a00 ROM=0 I find the "ROM=0" part confuse, maybe you can change to "ROM:false". Regardless: Reviewed-by: Philippe Mathieu-Daudé <philmd@redhat.com> > > Sadly "spapr-rtas.bin" does not show up because it is loaded from > the spapr machine reset handler rather than via rom_reset(), may be needs > to be fixed. > > --- > Makefile.objs | 1 + > hw/core/loader.c | 3 +++ > hw/core/trace-events | 2 ++ > 3 files changed, 6 insertions(+) > create mode 100644 hw/core/trace-events > > diff --git a/Makefile.objs b/Makefile.objs > index c8337fa34be8..036ca6752908 100644 > --- a/Makefile.objs > +++ b/Makefile.objs > @@ -200,6 +200,7 @@ trace-events-subdirs += target/riscv > trace-events-subdirs += target/s390x > trace-events-subdirs += target/sparc > trace-events-subdirs += util > +trace-events-subdirs += hw/core > > trace-events-files = $(SRC_PATH)/trace-events $(trace-events-subdirs:%=$(SRC_PATH)/%/trace-events) > > diff --git a/hw/core/loader.c b/hw/core/loader.c > index a097bbe30a74..7fe083af492f 100644 > --- a/hw/core/loader.c > +++ b/hw/core/loader.c > @@ -44,6 +44,7 @@ > > #include "qemu/osdep.h" > #include "qapi/error.h" > +#include "trace.h" > #include "hw/hw.h" > #include "disas/disas.h" > #include "monitor/monitor.h" > @@ -1114,6 +1115,8 @@ static void rom_reset(void *unused) > * CPU definitely fetches its instructions from the just written data. > */ > cpu_flush_icache_range(rom->addr, rom->datasize); > + > + trace_loader_write_rom(rom->name, rom->addr, rom->datasize, rom->isrom); > } > } > > diff --git a/hw/core/trace-events b/hw/core/trace-events > new file mode 100644 > index 000000000000..fe47a9c8cb1f > --- /dev/null > +++ b/hw/core/trace-events > @@ -0,0 +1,2 @@ > +# loader.c > +loader_write_rom(const char *name, uint64_t gpa, uint64_t size, bool isrom) "%s: @0x%"PRIx64" size=0x%"PRIx64" ROM=%d" >
On 13/06/2019 23:08, Philippe Mathieu-Daudé wrote: > Hi Alexey, > > On 6/13/19 7:09 AM, Alexey Kardashevskiy wrote: >> This adds a trace point which prints every loaded image. This includes >> bios/firmware/kernel/initradmdisk/pcirom. >> >> Signed-off-by: Alexey Kardashevskiy <aik@ozlabs.ru> >> --- >> >> The example for a pseries guest: >> >> loader_write_rom slof.bin: @0x0 size=0xe22e0 ROM=0 >> loader_write_rom phdr #0: /home/aik/t/vml4120le: @0x400000 size=0x13df000 ROM=0 >> loader_write_rom /home/aik/t/le.cpio: @0x1ad0000 size=0x9463a00 ROM=0 > > I find the "ROM=0" part confuse, maybe you can change to "ROM:false". How? I mean I can do that in the code as rom->isrom?"true":"false" and make trace point accept "%s" but it is quite ugly and others seem to just use %d for bool. > > Regardless: > Reviewed-by: Philippe Mathieu-Daudé <philmd@redhat.com> Thanks! > >> >> Sadly "spapr-rtas.bin" does not show up because it is loaded from >> the spapr machine reset handler rather than via rom_reset(), may be needs >> to be fixed. >> >> --- >> Makefile.objs | 1 + >> hw/core/loader.c | 3 +++ >> hw/core/trace-events | 2 ++ >> 3 files changed, 6 insertions(+) >> create mode 100644 hw/core/trace-events >> >> diff --git a/Makefile.objs b/Makefile.objs >> index c8337fa34be8..036ca6752908 100644 >> --- a/Makefile.objs >> +++ b/Makefile.objs >> @@ -200,6 +200,7 @@ trace-events-subdirs += target/riscv >> trace-events-subdirs += target/s390x >> trace-events-subdirs += target/sparc >> trace-events-subdirs += util >> +trace-events-subdirs += hw/core >> >> trace-events-files = $(SRC_PATH)/trace-events $(trace-events-subdirs:%=$(SRC_PATH)/%/trace-events) >> >> diff --git a/hw/core/loader.c b/hw/core/loader.c >> index a097bbe30a74..7fe083af492f 100644 >> --- a/hw/core/loader.c >> +++ b/hw/core/loader.c >> @@ -44,6 +44,7 @@ >> >> #include "qemu/osdep.h" >> #include "qapi/error.h" >> +#include "trace.h" >> #include "hw/hw.h" >> #include "disas/disas.h" >> #include "monitor/monitor.h" >> @@ -1114,6 +1115,8 @@ static void rom_reset(void *unused) >> * CPU definitely fetches its instructions from the just written data. >> */ >> cpu_flush_icache_range(rom->addr, rom->datasize); >> + >> + trace_loader_write_rom(rom->name, rom->addr, rom->datasize, rom->isrom); >> } >> } >> >> diff --git a/hw/core/trace-events b/hw/core/trace-events >> new file mode 100644 >> index 000000000000..fe47a9c8cb1f >> --- /dev/null >> +++ b/hw/core/trace-events >> @@ -0,0 +1,2 @@ >> +# loader.c >> +loader_write_rom(const char *name, uint64_t gpa, uint64_t size, bool isrom) "%s: @0x%"PRIx64" size=0x%"PRIx64" ROM=%d" >>
On Fri, Jun 14, 2019 at 10:13:04AM +1000, Alexey Kardashevskiy wrote: > > > On 13/06/2019 23:08, Philippe Mathieu-Daudé wrote: > > Hi Alexey, > > > > On 6/13/19 7:09 AM, Alexey Kardashevskiy wrote: > >> This adds a trace point which prints every loaded image. This includes > >> bios/firmware/kernel/initradmdisk/pcirom. > >> > >> Signed-off-by: Alexey Kardashevskiy <aik@ozlabs.ru> > >> --- > >> > >> The example for a pseries guest: > >> > >> loader_write_rom slof.bin: @0x0 size=0xe22e0 ROM=0 > >> loader_write_rom phdr #0: /home/aik/t/vml4120le: @0x400000 size=0x13df000 ROM=0 > >> loader_write_rom /home/aik/t/le.cpio: @0x1ad0000 size=0x9463a00 ROM=0 > > > > I find the "ROM=0" part confuse, maybe you can change to "ROM:false". > > How? I mean I can do that in the code as rom->isrom?"true":"false" and > make trace point accept "%s" but it is quite ugly and others seem to > just use %d for bool. Yes, %d is the convention for bool. Perhaps you can name it "is_rom" instead of "ROM". That way the name communicates that this is a boolean value. Stefan
On 6/14/19 11:33 AM, Stefan Hajnoczi wrote: > On Fri, Jun 14, 2019 at 10:13:04AM +1000, Alexey Kardashevskiy wrote: >> >> >> On 13/06/2019 23:08, Philippe Mathieu-Daudé wrote: >>> Hi Alexey, >>> >>> On 6/13/19 7:09 AM, Alexey Kardashevskiy wrote: >>>> This adds a trace point which prints every loaded image. This includes >>>> bios/firmware/kernel/initradmdisk/pcirom. >>>> >>>> Signed-off-by: Alexey Kardashevskiy <aik@ozlabs.ru> >>>> --- >>>> >>>> The example for a pseries guest: >>>> >>>> loader_write_rom slof.bin: @0x0 size=0xe22e0 ROM=0 >>>> loader_write_rom phdr #0: /home/aik/t/vml4120le: @0x400000 size=0x13df000 ROM=0 >>>> loader_write_rom /home/aik/t/le.cpio: @0x1ad0000 size=0x9463a00 ROM=0 >>> >>> I find the "ROM=0" part confuse, maybe you can change to "ROM:false". >> >> How? I mean I can do that in the code as rom->isrom?"true":"false" and >> make trace point accept "%s" but it is quite ugly and others seem to >> just use %d for bool. > > Yes, %d is the convention for bool. Perhaps you can name it "is_rom" > instead of "ROM". That way the name communicates that this is a boolean > value. I agree a boolean is easier to parse for trace analyzer tools than a "true/false" string. Stefan, is it possible to add a boolean format string to the backends? For example the 'log' backend would log it as "true"/"false". Just a thought ;) Regards, Phil.
On 14/06/2019 19:33, Stefan Hajnoczi wrote: > On Fri, Jun 14, 2019 at 10:13:04AM +1000, Alexey Kardashevskiy wrote: >> >> >> On 13/06/2019 23:08, Philippe Mathieu-Daudé wrote: >>> Hi Alexey, >>> >>> On 6/13/19 7:09 AM, Alexey Kardashevskiy wrote: >>>> This adds a trace point which prints every loaded image. This includes >>>> bios/firmware/kernel/initradmdisk/pcirom. >>>> >>>> Signed-off-by: Alexey Kardashevskiy <aik@ozlabs.ru> >>>> --- >>>> >>>> The example for a pseries guest: >>>> >>>> loader_write_rom slof.bin: @0x0 size=0xe22e0 ROM=0 >>>> loader_write_rom phdr #0: /home/aik/t/vml4120le: @0x400000 size=0x13df000 ROM=0 >>>> loader_write_rom /home/aik/t/le.cpio: @0x1ad0000 size=0x9463a00 ROM=0 >>> >>> I find the "ROM=0" part confuse, maybe you can change to "ROM:false". >> >> How? I mean I can do that in the code as rom->isrom?"true":"false" and >> make trace point accept "%s" but it is quite ugly and others seem to >> just use %d for bool. > > Yes, %d is the convention for bool. Perhaps you can name it "is_rom" > instead of "ROM". That way the name communicates that this is a boolean > value. It is quite obvious though that it is boolean even as "ROM" (what else can that be realistically?) and there does not seem to be a convention about xxx:N vs is_xxx:N. And personally I find longer lines worse for limited width screens (I run multiple qemus in tiled tmux). Whose tree is this going to? Let's ask that person :)
On 6/17/19 3:25 AM, Alexey Kardashevskiy wrote: > On 14/06/2019 19:33, Stefan Hajnoczi wrote: >> On Fri, Jun 14, 2019 at 10:13:04AM +1000, Alexey Kardashevskiy wrote: >>> >>> >>> On 13/06/2019 23:08, Philippe Mathieu-Daudé wrote: >>>> Hi Alexey, >>>> >>>> On 6/13/19 7:09 AM, Alexey Kardashevskiy wrote: >>>>> This adds a trace point which prints every loaded image. This includes >>>>> bios/firmware/kernel/initradmdisk/pcirom. >>>>> >>>>> Signed-off-by: Alexey Kardashevskiy <aik@ozlabs.ru> >>>>> --- >>>>> >>>>> The example for a pseries guest: >>>>> >>>>> loader_write_rom slof.bin: @0x0 size=0xe22e0 ROM=0 >>>>> loader_write_rom phdr #0: /home/aik/t/vml4120le: @0x400000 size=0x13df000 ROM=0 >>>>> loader_write_rom /home/aik/t/le.cpio: @0x1ad0000 size=0x9463a00 ROM=0 >>>> >>>> I find the "ROM=0" part confuse, maybe you can change to "ROM:false". >>> >>> How? I mean I can do that in the code as rom->isrom?"true":"false" and >>> make trace point accept "%s" but it is quite ugly and others seem to >>> just use %d for bool. >> >> Yes, %d is the convention for bool. Perhaps you can name it "is_rom" >> instead of "ROM". That way the name communicates that this is a boolean >> value. > > It is quite obvious though that it is boolean even as "ROM" (what else > can that be realistically?) and there does not seem to be a convention > about xxx:N vs is_xxx:N. And personally I find longer lines worse for > limited width screens (I run multiple qemus in tiled tmux). Whose tree > is this going to? Let's ask that person :) Personally I find 'is_rom' clearer. I read 2 addresses, then my first reaction was to parse it as another address. But it is also true we now enforce traced hex values with '0x' prefix, so your 'ROM' is unlikely an address. Tiled tmux is an acceptable argument. Anyway you already got my R-b. Tree: the PPC tree is likely to get it merged quicker than the MISC tree. Regards, Phil.
On 17/06/2019 14:56, Philippe Mathieu-Daudé wrote: > On 6/17/19 3:25 AM, Alexey Kardashevskiy wrote: >> On 14/06/2019 19:33, Stefan Hajnoczi wrote: >>> On Fri, Jun 14, 2019 at 10:13:04AM +1000, Alexey Kardashevskiy wrote: >>>> >>>> >>>> On 13/06/2019 23:08, Philippe Mathieu-Daudé wrote: >>>>> Hi Alexey, >>>>> >>>>> On 6/13/19 7:09 AM, Alexey Kardashevskiy wrote: >>>>>> This adds a trace point which prints every loaded image. This includes >>>>>> bios/firmware/kernel/initradmdisk/pcirom. >>>>>> >>>>>> Signed-off-by: Alexey Kardashevskiy <aik@ozlabs.ru> >>>>>> --- >>>>>> >>>>>> The example for a pseries guest: >>>>>> >>>>>> loader_write_rom slof.bin: @0x0 size=0xe22e0 ROM=0 >>>>>> loader_write_rom phdr #0: /home/aik/t/vml4120le: @0x400000 size=0x13df000 ROM=0 >>>>>> loader_write_rom /home/aik/t/le.cpio: @0x1ad0000 size=0x9463a00 ROM=0 >>>>> >>>>> I find the "ROM=0" part confuse, maybe you can change to "ROM:false". >>>> >>>> How? I mean I can do that in the code as rom->isrom?"true":"false" and >>>> make trace point accept "%s" but it is quite ugly and others seem to >>>> just use %d for bool. >>> >>> Yes, %d is the convention for bool. Perhaps you can name it "is_rom" >>> instead of "ROM". That way the name communicates that this is a boolean >>> value. >> >> It is quite obvious though that it is boolean even as "ROM" (what else >> can that be realistically?) and there does not seem to be a convention >> about xxx:N vs is_xxx:N. And personally I find longer lines worse for >> limited width screens (I run multiple qemus in tiled tmux). Whose tree >> is this going to? Let's ask that person :) > > Personally I find 'is_rom' clearer. I read 2 addresses, then my first > reaction was to parse it as another address. But it is also true we now > enforce traced hex values with '0x' prefix, so your 'ROM' is unlikely an > address. Tiled tmux is an acceptable argument. Anyway you already got my > R-b. > > Tree: the PPC tree is likely to get it merged quicker than the MISC tree. There is nothing specific about PPC though so I guess it is the MISC tree, who does maintain that?
On 6/20/19 7:50 AM, Alexey Kardashevskiy wrote: > On 17/06/2019 14:56, Philippe Mathieu-Daudé wrote: >> On 6/17/19 3:25 AM, Alexey Kardashevskiy wrote: >>> On 14/06/2019 19:33, Stefan Hajnoczi wrote: >>>> On Fri, Jun 14, 2019 at 10:13:04AM +1000, Alexey Kardashevskiy wrote: >>>>> >>>>> >>>>> On 13/06/2019 23:08, Philippe Mathieu-Daudé wrote: >>>>>> Hi Alexey, >>>>>> >>>>>> On 6/13/19 7:09 AM, Alexey Kardashevskiy wrote: >>>>>>> This adds a trace point which prints every loaded image. This includes >>>>>>> bios/firmware/kernel/initradmdisk/pcirom. >>>>>>> >>>>>>> Signed-off-by: Alexey Kardashevskiy <aik@ozlabs.ru> >>>>>>> --- >>>>>>> >>>>>>> The example for a pseries guest: >>>>>>> >>>>>>> loader_write_rom slof.bin: @0x0 size=0xe22e0 ROM=0 >>>>>>> loader_write_rom phdr #0: /home/aik/t/vml4120le: @0x400000 size=0x13df000 ROM=0 >>>>>>> loader_write_rom /home/aik/t/le.cpio: @0x1ad0000 size=0x9463a00 ROM=0 >>>>>> >>>>>> I find the "ROM=0" part confuse, maybe you can change to "ROM:false". >>>>> >>>>> How? I mean I can do that in the code as rom->isrom?"true":"false" and >>>>> make trace point accept "%s" but it is quite ugly and others seem to >>>>> just use %d for bool. >>>> >>>> Yes, %d is the convention for bool. Perhaps you can name it "is_rom" >>>> instead of "ROM". That way the name communicates that this is a boolean >>>> value. >>> >>> It is quite obvious though that it is boolean even as "ROM" (what else >>> can that be realistically?) and there does not seem to be a convention >>> about xxx:N vs is_xxx:N. And personally I find longer lines worse for >>> limited width screens (I run multiple qemus in tiled tmux). Whose tree >>> is this going to? Let's ask that person :) >> >> Personally I find 'is_rom' clearer. I read 2 addresses, then my first >> reaction was to parse it as another address. But it is also true we now >> enforce traced hex values with '0x' prefix, so your 'ROM' is unlikely an >> address. Tiled tmux is an acceptable argument. Anyway you already got my >> R-b. >> >> Tree: the PPC tree is likely to get it merged quicker than the MISC tree. > > > There is nothing specific about PPC though so I guess it is the MISC > tree, who does maintain that? Paolo, Cc'ing him.
On Fri, Jun 14, 2019 at 12:10:48PM +0200, Philippe Mathieu-Daudé wrote: > On 6/14/19 11:33 AM, Stefan Hajnoczi wrote: > > On Fri, Jun 14, 2019 at 10:13:04AM +1000, Alexey Kardashevskiy wrote: > >> > >> > >> On 13/06/2019 23:08, Philippe Mathieu-Daudé wrote: > >>> Hi Alexey, > >>> > >>> On 6/13/19 7:09 AM, Alexey Kardashevskiy wrote: > >>>> This adds a trace point which prints every loaded image. This includes > >>>> bios/firmware/kernel/initradmdisk/pcirom. > >>>> > >>>> Signed-off-by: Alexey Kardashevskiy <aik@ozlabs.ru> > >>>> --- > >>>> > >>>> The example for a pseries guest: > >>>> > >>>> loader_write_rom slof.bin: @0x0 size=0xe22e0 ROM=0 > >>>> loader_write_rom phdr #0: /home/aik/t/vml4120le: @0x400000 size=0x13df000 ROM=0 > >>>> loader_write_rom /home/aik/t/le.cpio: @0x1ad0000 size=0x9463a00 ROM=0 > >>> > >>> I find the "ROM=0" part confuse, maybe you can change to "ROM:false". > >> > >> How? I mean I can do that in the code as rom->isrom?"true":"false" and > >> make trace point accept "%s" but it is quite ugly and others seem to > >> just use %d for bool. > > > > Yes, %d is the convention for bool. Perhaps you can name it "is_rom" > > instead of "ROM". That way the name communicates that this is a boolean > > value. > > I agree a boolean is easier to parse for trace analyzer tools than a > "true/false" string. > > Stefan, is it possible to add a boolean format string to the backends? > For example the 'log' backend would log it as "true"/"false". Yes. The format string in trace-events is not used by all trace backends, and they are free to do whatever they like (e.g. by looking at the C types of the trace event arguments). Stefan
On 6/20/19 10:53 AM, Philippe Mathieu-Daudé wrote: > On 6/20/19 7:50 AM, Alexey Kardashevskiy wrote: >> On 17/06/2019 14:56, Philippe Mathieu-Daudé wrote: >>> On 6/17/19 3:25 AM, Alexey Kardashevskiy wrote: >>>> On 14/06/2019 19:33, Stefan Hajnoczi wrote: >>>>> On Fri, Jun 14, 2019 at 10:13:04AM +1000, Alexey Kardashevskiy wrote: >>>>>> >>>>>> >>>>>> On 13/06/2019 23:08, Philippe Mathieu-Daudé wrote: >>>>>>> Hi Alexey, >>>>>>> >>>>>>> On 6/13/19 7:09 AM, Alexey Kardashevskiy wrote: >>>>>>>> This adds a trace point which prints every loaded image. This includes >>>>>>>> bios/firmware/kernel/initradmdisk/pcirom. >>>>>>>> >>>>>>>> Signed-off-by: Alexey Kardashevskiy <aik@ozlabs.ru> >>>>>>>> --- >>>>>>>> >>>>>>>> The example for a pseries guest: >>>>>>>> >>>>>>>> loader_write_rom slof.bin: @0x0 size=0xe22e0 ROM=0 >>>>>>>> loader_write_rom phdr #0: /home/aik/t/vml4120le: @0x400000 size=0x13df000 ROM=0 >>>>>>>> loader_write_rom /home/aik/t/le.cpio: @0x1ad0000 size=0x9463a00 ROM=0 >>>>>>> >>>>>>> I find the "ROM=0" part confuse, maybe you can change to "ROM:false". >>>>>> >>>>>> How? I mean I can do that in the code as rom->isrom?"true":"false" and >>>>>> make trace point accept "%s" but it is quite ugly and others seem to >>>>>> just use %d for bool. >>>>> >>>>> Yes, %d is the convention for bool. Perhaps you can name it "is_rom" >>>>> instead of "ROM". That way the name communicates that this is a boolean >>>>> value. >>>> >>>> It is quite obvious though that it is boolean even as "ROM" (what else >>>> can that be realistically?) and there does not seem to be a convention >>>> about xxx:N vs is_xxx:N. And personally I find longer lines worse for >>>> limited width screens (I run multiple qemus in tiled tmux). Whose tree >>>> is this going to? Let's ask that person :) >>> >>> Personally I find 'is_rom' clearer. I read 2 addresses, then my first >>> reaction was to parse it as another address. But it is also true we now >>> enforce traced hex values with '0x' prefix, so your 'ROM' is unlikely an >>> address. Tiled tmux is an acceptable argument. Anyway you already got my >>> R-b. >>> >>> Tree: the PPC tree is likely to get it merged quicker than the MISC tree. >> >> >> There is nothing specific about PPC though so I guess it is the MISC >> tree, who does maintain that? > > Paolo, Cc'ing him. Stefan sometime takes tracing patches, but this patch might also go via Trivial@ (Cc'ed).
On Thu, Jun 13, 2019 at 03:09:37PM +1000, Alexey Kardashevskiy wrote: > This adds a trace point which prints every loaded image. This includes > bios/firmware/kernel/initradmdisk/pcirom. > > Signed-off-by: Alexey Kardashevskiy <aik@ozlabs.ru> > --- > > The example for a pseries guest: > > loader_write_rom slof.bin: @0x0 size=0xe22e0 ROM=0 > loader_write_rom phdr #0: /home/aik/t/vml4120le: @0x400000 size=0x13df000 ROM=0 > loader_write_rom /home/aik/t/le.cpio: @0x1ad0000 size=0x9463a00 ROM=0 > > Sadly "spapr-rtas.bin" does not show up because it is loaded from > the spapr machine reset handler rather than via rom_reset(), may be needs > to be fixed. > > --- > Makefile.objs | 1 + > hw/core/loader.c | 3 +++ > hw/core/trace-events | 2 ++ > 3 files changed, 6 insertions(+) > create mode 100644 hw/core/trace-events Thanks, applied to my tracing tree: https://github.com/stefanha/qemu/commits/tracing Stefan
diff --git a/Makefile.objs b/Makefile.objs index c8337fa34be8..036ca6752908 100644 --- a/Makefile.objs +++ b/Makefile.objs @@ -200,6 +200,7 @@ trace-events-subdirs += target/riscv trace-events-subdirs += target/s390x trace-events-subdirs += target/sparc trace-events-subdirs += util +trace-events-subdirs += hw/core trace-events-files = $(SRC_PATH)/trace-events $(trace-events-subdirs:%=$(SRC_PATH)/%/trace-events) diff --git a/hw/core/loader.c b/hw/core/loader.c index a097bbe30a74..7fe083af492f 100644 --- a/hw/core/loader.c +++ b/hw/core/loader.c @@ -44,6 +44,7 @@ #include "qemu/osdep.h" #include "qapi/error.h" +#include "trace.h" #include "hw/hw.h" #include "disas/disas.h" #include "monitor/monitor.h" @@ -1114,6 +1115,8 @@ static void rom_reset(void *unused) * CPU definitely fetches its instructions from the just written data. */ cpu_flush_icache_range(rom->addr, rom->datasize); + + trace_loader_write_rom(rom->name, rom->addr, rom->datasize, rom->isrom); } } diff --git a/hw/core/trace-events b/hw/core/trace-events new file mode 100644 index 000000000000..fe47a9c8cb1f --- /dev/null +++ b/hw/core/trace-events @@ -0,0 +1,2 @@ +# loader.c +loader_write_rom(const char *name, uint64_t gpa, uint64_t size, bool isrom) "%s: @0x%"PRIx64" size=0x%"PRIx64" ROM=%d"
This adds a trace point which prints every loaded image. This includes bios/firmware/kernel/initradmdisk/pcirom. Signed-off-by: Alexey Kardashevskiy <aik@ozlabs.ru> --- The example for a pseries guest: loader_write_rom slof.bin: @0x0 size=0xe22e0 ROM=0 loader_write_rom phdr #0: /home/aik/t/vml4120le: @0x400000 size=0x13df000 ROM=0 loader_write_rom /home/aik/t/le.cpio: @0x1ad0000 size=0x9463a00 ROM=0 Sadly "spapr-rtas.bin" does not show up because it is loaded from the spapr machine reset handler rather than via rom_reset(), may be needs to be fixed. --- Makefile.objs | 1 + hw/core/loader.c | 3 +++ hw/core/trace-events | 2 ++ 3 files changed, 6 insertions(+) create mode 100644 hw/core/trace-events