Message ID | 20190703154723.7327-1-imammedo@redhat.com (mailing list archive) |
---|---|
State | New, archived |
Headers | show |
Series | [v2] tests: numa-test: use -numa memdev option instead of legacy 'mem' option | expand |
On Wed, Jul 03, 2019 at 11:47:23AM -0400, Igor Mammedov wrote: > it drops testing of deprecated 'mem' option and will test preferred memdev > option instead. > > Signed-off-by: Igor Mammedov <imammedo@redhat.com> > --- > v2: > - make backend size depend on initial RAM size and a number of backends > fixes test faulure with spapr machine (Eduardo Habkost <ehabkost@redhat.com>) > > tests/numa-test.c | 85 +++++++++++++++++++++++++++++------------------ > 1 file changed, 52 insertions(+), 33 deletions(-) > > diff --git a/tests/numa-test.c b/tests/numa-test.c > index 8de8581231..e102b3b70f 100644 > --- a/tests/numa-test.c > +++ b/tests/numa-test.c > @@ -14,9 +14,28 @@ > #include "qapi/qmp/qdict.h" > #include "qapi/qmp/qlist.h" > > -static char *make_cli(const char *generic_cli, const char *test_cli) > +typedef struct { > + const char *args; > + int ram_size; /* size in MB */ > +} TestData; > + > +static char *make_cli(const TestData *data, int memdev_count, > + const char *test_cli) > { > - return g_strdup_printf("%s %s", generic_cli ? generic_cli : "", test_cli); > + int i; > + char *tmp = NULL; > + char *cli = g_strdup_printf("%s -m %d", data->args ? : "", data->ram_size); > + > + for (i = 0; memdev_count && (i < memdev_count); i++) { > + tmp = g_strdup_printf("%s -object memory-backend-ram,id=r%d,size=%dM", > + cli, i, data->ram_size / memdev_count); > + g_free(cli); > + cli = tmp; > + } > + tmp = g_strdup_printf("%s %s", cli, test_cli); > + g_free(cli); > + cli = tmp; > + return cli; > } [...] > + TestData data = { .ram_size = 128 }; > > - if (strcmp(arch, "aarch64") == 0) { > - args = "-machine virt"; > + if (!strcmp(arch, "aarch64")) { > + data.args = "-machine virt"; > + } else if (!strcmp(arch, "ppc64")) { > + data.ram_size = 512; Wouldn't it be simpler to always use "-m 512M" and the same node sizes?
Patchew URL: https://patchew.org/QEMU/20190703154723.7327-1-imammedo@redhat.com/ 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 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 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 ==7842==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 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" ==7925==WARNING: ASan doesn't fully support makecontext/swapcontext functions and may produce false positives in some cases! ==7925==WARNING: ASan is ignoring requested __asan_handle_no_return: stack top: 0x7fff8b7dc000; bottom 0x7fcaf8ef8000; size: 0x0034928e4000 (225797095424) 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 12 test-aio /aio/event/flush PASS 13 test-aio /aio/event/wait/no-flush-cb PASS 14 test-aio /aio/timer/schedule ==7940==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 ==7946==WARNING: ASan doesn't fully support makecontext/swapcontext functions and may produce false positives in some cases! PASS 12 fdc-test /x86_64/fdc/read_no_dma_19 PASS 13 fdc-test /x86_64/fdc/fuzz-registers PASS 2 test-aio-multithread /aio/multi/schedule 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" ==7969==WARNING: ASan doesn't fully support makecontext/swapcontext functions and may produce false positives in some cases! PASS 3 test-aio-multithread /aio/multi/mutex/contended PASS 1 ide-test /x86_64/ide/identify ==7980==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 ==7986==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 ==7992==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 4 test-aio-multithread /aio/multi/mutex/handoff ==7998==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 ==8009==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 6 ide-test /x86_64/ide/bmdma/one_sector_short_prdt ==8020==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 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" ==8029==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" ==8026==WARNING: ASan doesn't fully support makecontext/swapcontext functions and may produce false positives in some cases! ==8037==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 ==8026==WARNING: ASan is ignoring requested __asan_handle_no_return: stack top: 0x7fffa0984000; bottom 0x7fbe091fe000; size: 0x004197786000 (281714122752) False positive error reports may follow For details see https://github.com/google/sanitizers/issues/189 PASS 8 ide-test /x86_64/ide/bmdma/no_busmaster PASS 9 ide-test /x86_64/ide/flush/nodev ==8111==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 10 ide-test /x86_64/ide/flush/empty_drive ==8116==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 ==8123==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 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 ==8129==WARNING: ASan doesn't fully support makecontext/swapcontext functions and may produce false positives in some cases! PASS 5 test-hbitmap /hbitmap/iter/partial PASS 13 ide-test /x86_64/ide/cdrom/pio 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 ==8140==WARNING: ASan doesn't fully support makecontext/swapcontext functions and may produce false positives in some cases! PASS 13 test-hbitmap /hbitmap/set/general PASS 14 test-hbitmap /hbitmap/set/twice PASS 15 test-hbitmap /hbitmap/set/overlap --- PASS 28 test-hbitmap /hbitmap/truncate/shrink/medium PASS 29 test-hbitmap /hbitmap/truncate/shrink/large PASS 30 test-hbitmap /hbitmap/meta/zero ==8146==WARNING: ASan doesn't fully support makecontext/swapcontext functions and may produce false positives in some cases! PASS 15 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/ahci-test -m=quick -k --tap < /dev/null | ./scripts/tap-driver.pl --test-name="ahci-test" ==8160==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 ==8166==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 ==8172==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 ==8178==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 ==8184==WARNING: ASan doesn't fully support makecontext/swapcontext functions and may produce false positives in some cases! PASS 31 test-hbitmap /hbitmap/meta/one PASS 32 test-hbitmap /hbitmap/meta/byte PASS 33 test-hbitmap /hbitmap/meta/word PASS 5 ahci-test /x86_64/ahci/hba_enable ==8190==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 6 ahci-test /x86_64/ahci/identify ==8196==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 ==8202==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 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" ==8209==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 38 test-bdrv-drain /bdrv-drain/detach/driver_cb PASS 39 test-bdrv-drain /bdrv-drain/attach/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" ==8236==WARNING: ASan doesn't fully support makecontext/swapcontext functions and may produce false positives in some cases! ==8252==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 ==8236==WARNING: ASan is ignoring requested __asan_handle_no_return: stack top: 0x7ffcd25dd000; bottom 0x7f0d675fe000; size: 0x00ef6afdf000 (1028292210688) False positive error reports may follow For details see https://github.com/google/sanitizers/issues/189 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" ==8260==WARNING: ASan doesn't fully support makecontext/swapcontext functions and may produce false positives in some cases! PASS 9 ahci-test /x86_64/ahci/io/pio/lba28/simple/zero PASS 1 test-blockjob /blockjob/ids PASS 2 test-blockjob /blockjob/cancel/created --- 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" ==8267==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" ==8265==WARNING: ASan doesn't fully support makecontext/swapcontext functions and may produce false positives in some cases! ==8274==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 ==8265==WARNING: ASan is ignoring requested __asan_handle_no_return: stack top: 0x7ffcd9c4a000; bottom 0x7f13f21fe000; size: 0x00e8e7a4c000 (1000318746624) False positive error reports may follow For details see https://github.com/google/sanitizers/issues/189 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" ==8281==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 16 test-block-iothread /propagate/mirror PASS 10 ahci-test /x86_64/ahci/io/pio/lba28/simple/low 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" ==8304==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" ==8302==WARNING: ASan doesn't fully support makecontext/swapcontext functions and may produce false positives in some cases! PASS 1 test-x86-cpuid /cpuid/topology/basic MALLOC_PERTURB_=${MALLOC_PERTURB_:-$(( ${RANDOM:-0} % 255 + 1))} tests/test-xbzrle -m=quick -k --tap < /dev/null | ./scripts/tap-driver.pl --test-name="test-xbzrle" PASS 1 test-xbzrle /xbzrle/uleb --- PASS 3 test-xbzrle /xbzrle/encode_decode_unchanged PASS 4 test-xbzrle /xbzrle/encode_decode_1_byte PASS 5 test-xbzrle /xbzrle/encode_decode_overflow ==8302==WARNING: ASan is ignoring requested __asan_handle_no_return: stack top: 0x7ffd1c7f6000; bottom 0x7f3261bfe000; size: 0x00cababf8000 (870716506112) 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 --- PASS 133 test-cutils /cutils/strtosz/erange PASS 134 test-cutils /cutils/strtosz/metric MALLOC_PERTURB_=${MALLOC_PERTURB_:-$(( ${RANDOM:-0} % 255 + 1))} tests/test-shift128 -m=quick -k --tap < /dev/null | ./scripts/tap-driver.pl --test-name="test-shift128" ==8320==WARNING: ASan doesn't fully support makecontext/swapcontext functions and may produce false positives in some cases! PASS 1 test-shift128 /host-utils/test_lshift PASS 2 test-shift128 /host-utils/test_rshift MALLOC_PERTURB_=${MALLOC_PERTURB_:-$(( ${RANDOM:-0} % 255 + 1))} tests/test-mul64 -m=quick -k --tap < /dev/null | ./scripts/tap-driver.pl --test-name="test-mul64" ==8320==WARNING: ASan is ignoring requested __asan_handle_no_return: stack top: 0x7ffd20a00000; bottom 0x7f7e8c7fe000; size: 0x007e94202000 (543651012608) False positive error reports may follow For details see https://github.com/google/sanitizers/issues/189 PASS 1 test-mul64 /host-utils/mulu64 --- 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 12 ahci-test /x86_64/ahci/io/pio/lba28/double/zero ==8359==WARNING: ASan doesn't fully support makecontext/swapcontext functions and may produce false positives in some cases! ==8359==WARNING: ASan is ignoring requested __asan_handle_no_return: stack top: 0x7fff19eb7000; bottom 0x7f541d1fe000; size: 0x00aafccb9000 (734385639424) 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 1 rcutorture /rcu/torture/1reader ==8365==WARNING: ASan doesn't fully support makecontext/swapcontext functions and may produce false positives in some cases! ==8365==WARNING: ASan is ignoring requested __asan_handle_no_return: stack top: 0x7fff3f564000; bottom 0x7f3f99ffe000; size: 0x00bfa5566000 (823112654848) 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 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" ==8387==WARNING: ASan doesn't fully support makecontext/swapcontext functions and may produce false positives in some cases! ==8387==WARNING: ASan is ignoring requested __asan_handle_no_return: stack top: 0x7fff8e3a5000; bottom 0x7f4115b7c000; size: 0x00be78829000 (818065608704) 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 PASS 1 test-rcu-list /rcu/qlist/single-threaded ==8400==WARNING: ASan doesn't fully support makecontext/swapcontext functions and may produce false positives in some cases! ==8400==WARNING: ASan is ignoring requested __asan_handle_no_return: stack top: 0x7ffe4a937000; bottom 0x7f8dc2bfe000; size: 0x007087d39000 (483315126272) False positive error reports may follow For details see https://github.com/google/sanitizers/issues/189 PASS 2 test-rcu-list /rcu/qlist/short-few PASS 16 ahci-test /x86_64/ahci/io/pio/lba28/long/low ==8433==WARNING: ASan doesn't fully support makecontext/swapcontext functions and may produce false positives in some cases! ==8433==WARNING: ASan is ignoring requested __asan_handle_no_return: stack top: 0x7ffccdfee000; bottom 0x7fad8817c000; size: 0x004f45e72000 (340475191296) 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 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" ==8439==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 ==8452==WARNING: ASan doesn't fully support makecontext/swapcontext functions and may produce false positives in some cases! PASS 1 test-rcu-simpleq /rcu/qsimpleq/single-threaded PASS 19 ahci-test /x86_64/ahci/io/pio/lba28/short/low ==8464==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 20 ahci-test /x86_64/ahci/io/pio/lba28/short/high ==8491==WARNING: ASan doesn't fully support makecontext/swapcontext functions and may produce false positives in some cases! ==8491==WARNING: ASan is ignoring requested __asan_handle_no_return: stack top: 0x7ffecd2f8000; bottom 0x7f388f5fe000; size: 0x00c63dcfa000 (851440541696) 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 ==8497==WARNING: ASan doesn't fully support makecontext/swapcontext functions and may produce false positives in some cases! ==8497==WARNING: ASan is ignoring requested __asan_handle_no_return: stack top: 0x7ffd1604a000; bottom 0x7fd37e5fe000; size: 0x002997a4c000 (178637815808) False positive error reports may follow For details see https://github.com/google/sanitizers/issues/189 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 22 ahci-test /x86_64/ahci/io/pio/lba48/simple/low ==8510==WARNING: ASan doesn't fully support makecontext/swapcontext functions and may produce false positives in some cases! ==8510==WARNING: ASan is ignoring requested __asan_handle_no_return: stack top: 0x7fff8a8d5000; bottom 0x7f515d7fe000; size: 0x00ae2d0d7000 (748080164864) False positive error reports may follow For details see https://github.com/google/sanitizers/issues/189 PASS 1 test-rcu-tailq /rcu/qtailq/single-threaded PASS 23 ahci-test /x86_64/ahci/io/pio/lba48/simple/high ==8522==WARNING: ASan doesn't fully support makecontext/swapcontext functions and may produce false positives in some cases! PASS 2 test-rcu-tailq /rcu/qtailq/short-few ==8522==WARNING: ASan is ignoring requested __asan_handle_no_return: stack top: 0x7ffc78aa0000; bottom 0x7fab479fe000; size: 0x0051310a2000 (348715098112) 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 ==8549==WARNING: ASan doesn't fully support makecontext/swapcontext functions and may produce false positives in some cases! ==8549==WARNING: ASan is ignoring requested __asan_handle_no_return: stack top: 0x7fff816d3000; bottom 0x7f1bc57fe000; size: 0x00e3bbed5000 (978110468096) 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 ==8555==WARNING: ASan doesn't fully support makecontext/swapcontext functions and may produce false positives in some cases! PASS 3 test-rcu-tailq /rcu/qtailq/long-many MALLOC_PERTURB_=${MALLOC_PERTURB_:-$(( ${RANDOM:-0} % 255 + 1))} tests/test-qdist -m=quick -k --tap < /dev/null | ./scripts/tap-driver.pl --test-name="test-qdist" ==8555==WARNING: ASan is ignoring requested __asan_handle_no_return: stack top: 0x7ffd25684000; bottom 0x7f563e3fe000; size: 0x00a6e7286000 (716842754048) False positive error reports may follow For details see https://github.com/google/sanitizers/issues/189 PASS 1 test-qdist /qdist/none --- 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" PASS 26 ahci-test /x86_64/ahci/io/pio/lba48/double/high ==8570==WARNING: ASan doesn't fully support makecontext/swapcontext functions and may produce false positives in some cases! ==8570==WARNING: ASan is ignoring requested __asan_handle_no_return: stack top: 0x7ffdf2373000; bottom 0x7f35efffe000; size: 0x00c802375000 (859030638592) 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 ==8576==WARNING: ASan doesn't fully support makecontext/swapcontext functions and may produce false positives in some cases! ==8576==WARNING: ASan is ignoring requested __asan_handle_no_return: stack top: 0x7fff817f2000; bottom 0x7f51a35fe000; size: 0x00adde1f4000 (746755932160) 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 ==8582==WARNING: ASan doesn't fully support makecontext/swapcontext functions and may produce false positives in some cases! ==8582==WARNING: ASan is ignoring requested __asan_handle_no_return: stack top: 0x7ffd80499000; bottom 0x7f5e2497c000; size: 0x009f5bb1d000 (684438179840) 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 ==8588==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 ==8594==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 ==8600==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 ==8606==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 ==8612==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 ==8618==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 ==8624==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 ==8630==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 37 ahci-test /x86_64/ahci/io/dma/lba28/simple/high 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" ==8636==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 ==8652==WARNING: ASan doesn't fully support makecontext/swapcontext functions and may produce false positives in some cases! PASS 1 test-qht-par /qht/parallel/2threads-0%updates-1s PASS 39 ahci-test /x86_64/ahci/io/dma/lba28/double/low ==8665==WARNING: ASan doesn't fully support makecontext/swapcontext functions and may produce false positives in some cases! PASS 2 test-qht-par /qht/parallel/2threads-20%updates-1s MALLOC_PERTURB_=${MALLOC_PERTURB_:-$(( ${RANDOM:-0} % 255 + 1))} tests/test-bitops -m=quick -k --tap < /dev/null | ./scripts/tap-driver.pl --test-name="test-bitops" PASS 1 test-bitops /bitops/sextract32 --- PASS 1 check-qom-interface /qom/interface/direct_impl PASS 2 check-qom-interface /qom/interface/intermediate_impl MALLOC_PERTURB_=${MALLOC_PERTURB_:-$(( ${RANDOM:-0} % 255 + 1))} tests/check-qom-proplist -m=quick -k --tap < /dev/null | ./scripts/tap-driver.pl --test-name="check-qom-proplist" ==8688==WARNING: ASan doesn't fully support makecontext/swapcontext functions and may produce false positives in some cases! PASS 1 check-qom-proplist /qom/proplist/createlist PASS 2 check-qom-proplist /qom/proplist/createv PASS 3 check-qom-proplist /qom/proplist/createcmdline --- PASS 3 test-write-threshold /write-threshold/multi-set-get PASS 4 test-write-threshold /write-threshold/not-trigger PASS 5 test-write-threshold /write-threshold/trigger ==8714==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-crypto-hash -m=quick -k --tap < /dev/null | ./scripts/tap-driver.pl --test-name="test-crypto-hash" PASS 1 test-crypto-hash /crypto/hash/iov PASS 2 test-crypto-hash /crypto/hash/alloc --- PASS 15 test-crypto-secret /crypto/secret/crypt/missingiv PASS 16 test-crypto-secret /crypto/secret/crypt/badiv MALLOC_PERTURB_=${MALLOC_PERTURB_:-$(( ${RANDOM:-0} % 255 + 1))} tests/test-crypto-tlscredsx509 -m=quick -k --tap < /dev/null | ./scripts/tap-driver.pl --test-name="test-crypto-tlscredsx509" ==8740==WARNING: ASan doesn't fully support makecontext/swapcontext functions and may produce false positives in some cases! PASS 1 test-crypto-tlscredsx509 /qcrypto/tlscredsx509/perfectserver PASS 2 test-crypto-tlscredsx509 /qcrypto/tlscredsx509/perfectclient PASS 43 ahci-test /x86_64/ahci/io/dma/lba28/long/high ==8755==WARNING: ASan doesn't fully support makecontext/swapcontext functions and may produce false positives in some cases! PASS 3 test-crypto-tlscredsx509 /qcrypto/tlscredsx509/goodca1 PASS 4 test-crypto-tlscredsx509 /qcrypto/tlscredsx509/goodca2 PASS 44 ahci-test /x86_64/ahci/io/dma/lba28/short/zero ==8761==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 ==8767==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 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 ==8773==WARNING: ASan doesn't fully support makecontext/swapcontext functions and may produce false positives in some cases! PASS 10 test-crypto-tlscredsx509 /qcrypto/tlscredsx509/goodserver2 PASS 47 ahci-test /x86_64/ahci/io/dma/lba48/simple/zero PASS 11 test-crypto-tlscredsx509 /qcrypto/tlscredsx509/goodserver3 ==8779==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 PASS 12 test-crypto-tlscredsx509 /qcrypto/tlscredsx509/goodserver4 ==8785==WARNING: ASan doesn't fully support makecontext/swapcontext functions and may produce false positives in some cases! PASS 13 test-crypto-tlscredsx509 /qcrypto/tlscredsx509/goodserver5 PASS 49 ahci-test /x86_64/ahci/io/dma/lba48/simple/high PASS 14 test-crypto-tlscredsx509 /qcrypto/tlscredsx509/goodserver6 ==8791==WARNING: ASan doesn't fully support makecontext/swapcontext functions and may produce false positives in some cases! PASS 15 test-crypto-tlscredsx509 /qcrypto/tlscredsx509/goodserver7 PASS 16 test-crypto-tlscredsx509 /qcrypto/tlscredsx509/badserver1 PASS 17 test-crypto-tlscredsx509 /qcrypto/tlscredsx509/badserver2 --- 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" ==8797==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 PASS 1 test-crypto-tlssession /qcrypto/tlssession/psk ==8808==WARNING: ASan doesn't fully support makecontext/swapcontext functions and may produce false positives in some cases! PASS 2 test-crypto-tlssession /qcrypto/tlssession/basicca PASS 52 ahci-test /x86_64/ahci/io/dma/lba48/double/high ==8814==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 PASS 3 test-crypto-tlssession /qcrypto/tlssession/differentca ==8820==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 5 test-crypto-tlssession /qcrypto/tlssession/altname2 PASS 6 test-crypto-tlssession /qcrypto/tlssession/altname3 PASS 54 ahci-test /x86_64/ahci/io/dma/lba48/long/low PASS 7 test-crypto-tlssession /qcrypto/tlssession/altname4 PASS 8 test-crypto-tlssession /qcrypto/tlssession/altname5 ==8826==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 10 test-crypto-tlssession /qcrypto/tlssession/wildcard1 PASS 55 ahci-test /x86_64/ahci/io/dma/lba48/long/high ==8832==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 56 ahci-test /x86_64/ahci/io/dma/lba48/short/zero ==8838==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 PASS 12 test-crypto-tlssession /qcrypto/tlssession/wildcard3 ==8844==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 PASS 58 ahci-test /x86_64/ahci/io/dma/lba48/short/high ==8850==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 PASS 14 test-crypto-tlssession /qcrypto/tlssession/wildcard5 ==8856==WARNING: ASan doesn't fully support makecontext/swapcontext functions and may produce false positives in some cases! PASS 15 test-crypto-tlssession /qcrypto/tlssession/wildcard6 PASS 60 ahci-test /x86_64/ahci/io/ncq/retry ==8862==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 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" ==8868==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 ==8880==WARNING: ASan doesn't fully support makecontext/swapcontext functions and may produce false positives in some cases! PASS 1 test-qga /qga/sync-delimited PASS 2 test-qga /qga/sync PASS 3 test-qga /qga/ping --- PASS 15 test-qga /qga/invalid-cmd PASS 16 test-qga /qga/invalid-args PASS 17 test-qga /qga/fsfreeze-status ==8885==WARNING: ASan doesn't fully support makecontext/swapcontext functions and may produce false positives in some cases! PASS 18 test-qga /qga/blacklist PASS 19 test-qga /qga/config PASS 20 test-qga /qga/guest-exec --- MALLOC_PERTURB_=${MALLOC_PERTURB_:-$(( ${RANDOM:-0} % 255 + 1))} tests/test-timed-average -m=quick -k --tap < /dev/null | ./scripts/tap-driver.pl --test-name="test-timed-average" PASS 1 test-timed-average /timed-average/average MALLOC_PERTURB_=${MALLOC_PERTURB_:-$(( ${RANDOM:-0} % 255 + 1))} tests/test-util-filemonitor -m=quick -k --tap < /dev/null | ./scripts/tap-driver.pl --test-name="test-util-filemonitor" ==8904==WARNING: ASan doesn't fully support makecontext/swapcontext functions and may produce false positives in some cases! PASS 1 test-util-filemonitor /util/filemonitor MALLOC_PERTURB_=${MALLOC_PERTURB_:-$(( ${RANDOM:-0} % 255 + 1))} tests/test-util-sockets -m=quick -k --tap < /dev/null | ./scripts/tap-driver.pl --test-name="test-util-sockets" PASS 1 test-util-sockets /util/socket/is-socket/bad --- 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" ==8926==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 3 test-base64 /util/base64/not-nul-terminated PASS 4 test-base64 /util/base64/invalid-chars MALLOC_PERTURB_=${MALLOC_PERTURB_:-$(( ${RANDOM:-0} % 255 + 1))} tests/test-crypto-pbkdf -m=quick -k --tap < /dev/null | ./scripts/tap-driver.pl --test-name="test-crypto-pbkdf" ==9021==WARNING: ASan doesn't fully support makecontext/swapcontext functions and may produce false positives in some cases! PASS 1 test-crypto-pbkdf /crypto/pbkdf/rfc3962/sha1/iter1 PASS 2 test-crypto-pbkdf /crypto/pbkdf/rfc3962/sha1/iter2 PASS 3 test-crypto-pbkdf /crypto/pbkdf/rfc3962/sha1/iter1200a --- 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" ==9045==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 1 test-logging /logging/parse_range PASS 2 test-logging /logging/parse_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" ==9072==WARNING: ASan doesn't fully support makecontext/swapcontext functions and may produce false positives in some cases! PASS 1 test-replication /replication/primary/read PASS 2 test-replication /replication/primary/write PASS 65 ahci-test /x86_64/ahci/migrate/dma/simple --- PASS 4 test-replication /replication/primary/stop PASS 5 test-replication /replication/primary/do_checkpoint PASS 6 test-replication /replication/primary/get_error_all ==9078==WARNING: ASan doesn't fully support makecontext/swapcontext functions and may produce false positives in some cases! ==9083==WARNING: ASan doesn't fully support makecontext/swapcontext functions and may produce false positives in some cases! PASS 7 test-replication /replication/secondary/read PASS 8 test-replication /replication/secondary/write PASS 66 ahci-test /x86_64/ahci/migrate/dma/halted ==9092==WARNING: ASan doesn't fully support makecontext/swapcontext functions and may produce false positives in some cases! ==9072==WARNING: ASan is ignoring requested __asan_handle_no_return: stack top: 0x7ffd3cef7000; bottom 0x7fbcdfcfc000; size: 0x00405d1fb000 (276440264704) False positive error reports may follow For details see https://github.com/google/sanitizers/issues/189 ==9097==WARNING: ASan doesn't fully support makecontext/swapcontext functions and may produce false positives in some cases! PASS 9 test-replication /replication/secondary/start PASS 67 ahci-test /x86_64/ahci/migrate/ncq/simple ==9125==WARNING: ASan doesn't fully support makecontext/swapcontext functions and may produce false positives in some cases! ==9130==WARNING: ASan doesn't fully support makecontext/swapcontext functions and may produce false positives in some cases! PASS 10 test-replication /replication/secondary/stop PASS 68 ahci-test /x86_64/ahci/migrate/ncq/halted ==9139==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 PASS 11 test-replication /replication/secondary/do_checkpoint ==9144==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 PASS 12 test-replication /replication/secondary/get_error_all 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" ==9150==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 ==9161==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 ==9167==WARNING: ASan doesn't fully support makecontext/swapcontext functions and may produce false positives in some cases! ==9167==WARNING: ASan is ignoring requested __asan_handle_no_return: stack top: 0x7ffed02e3000; bottom 0x7f71d63fe000; size: 0x008cf9ee5000 (605488566272) 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 ==9173==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 ==9187==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 ==9193==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 ==9199==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 ==9205==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 ==9211==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 ==9217==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 ==9223==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 ==9229==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 ==9234==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 ==9302==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 ==9321==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 ==9331==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 ==9337==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 ==9343==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 ==9350==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 ==9356==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 ==9362==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 ==9371==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 ==9377==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 ==9383==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 ==9389==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 ==9396==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 ==9402==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 ==9408==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 ==9492==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 ==9580==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 ==9775==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 ==9784==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 ==9890==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 ==9896==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 ==9902==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 ==10007==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 ==10012==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 ==10020==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 ==10025==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 ==10055==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 ==10060==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 ==10069==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 ==10074==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 ==10083==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 ==10088==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 ==10417==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 5 device-introspect-test /x86_64/device/introspect/abstract-interfaces ================================================================= ==10665==ERROR: LeakSanitizer: detected memory leaks Direct leak of 32 byte(s) in 1 object(s) allocated from: #0 0x55fa198bdb6e in calloc (/tmp/qemu-test/build/x86_64-softmmu/qemu-system-x86_64+0x19f9b6e) --- SUMMARY: AddressSanitizer: 64 byte(s) leaked in 2 allocation(s). /tmp/qemu-test/src/tests/libqtest.c:137: kill_qemu() tried to terminate QEMU process but encountered exit status 1 ERROR - too few tests run (expected 6, got 5) make: *** [/tmp/qemu-test/src/tests/Makefile.include:896: check-qtest-x86_64] Error 1 make: *** Waiting for unfinished jobs.... Traceback (most recent call last): The full log is available at http://patchew.org/logs/20190703154723.7327-1-imammedo@redhat.com/testing.asan/?type=message. --- Email generated automatically by Patchew [https://patchew.org/]. Please send your feedback to patchew-devel@redhat.com
On Wed, 3 Jul 2019 16:37:02 -0300 Eduardo Habkost <ehabkost@redhat.com> wrote: > On Wed, Jul 03, 2019 at 11:47:23AM -0400, Igor Mammedov wrote: > > it drops testing of deprecated 'mem' option and will test preferred memdev > > option instead. > > > > Signed-off-by: Igor Mammedov <imammedo@redhat.com> > > --- > > v2: > > - make backend size depend on initial RAM size and a number of backends > > fixes test faulure with spapr machine (Eduardo Habkost <ehabkost@redhat.com>) > > > > tests/numa-test.c | 85 +++++++++++++++++++++++++++++------------------ > > 1 file changed, 52 insertions(+), 33 deletions(-) > > > > diff --git a/tests/numa-test.c b/tests/numa-test.c > > index 8de8581231..e102b3b70f 100644 > > --- a/tests/numa-test.c > > +++ b/tests/numa-test.c > > @@ -14,9 +14,28 @@ > > #include "qapi/qmp/qdict.h" > > #include "qapi/qmp/qlist.h" > > > > -static char *make_cli(const char *generic_cli, const char *test_cli) > > +typedef struct { > > + const char *args; > > + int ram_size; /* size in MB */ > > +} TestData; > > + > > +static char *make_cli(const TestData *data, int memdev_count, > > + const char *test_cli) > > { > > - return g_strdup_printf("%s %s", generic_cli ? generic_cli : "", test_cli); > > + int i; > > + char *tmp = NULL; > > + char *cli = g_strdup_printf("%s -m %d", data->args ? : "", data->ram_size); > > + > > + for (i = 0; memdev_count && (i < memdev_count); i++) { > > + tmp = g_strdup_printf("%s -object memory-backend-ram,id=r%d,size=%dM", > > + cli, i, data->ram_size / memdev_count); > > + g_free(cli); > > + cli = tmp; > > + } > > + tmp = g_strdup_printf("%s %s", cli, test_cli); > > + g_free(cli); > > + cli = tmp; > > + return cli; > > } > [...] > > + TestData data = { .ram_size = 128 }; > > > > - if (strcmp(arch, "aarch64") == 0) { > > - args = "-machine virt"; > > + if (!strcmp(arch, "aarch64")) { > > + data.args = "-machine virt"; > > + } else if (!strcmp(arch, "ppc64")) { > > + data.ram_size = 512; > > Wouldn't it be simpler to always use "-m 512M" and the same node > sizes? it would, but it might make some CI instances start failing more often where it used to work before. So I picked side of being conservative and not to hog memory unless it's necessary.
On Thu, Jul 04, 2019 at 09:33:22AM +0200, Igor Mammedov wrote: > On Wed, 3 Jul 2019 16:37:02 -0300 > Eduardo Habkost <ehabkost@redhat.com> wrote: > > [...] > > > + TestData data = { .ram_size = 128 }; > > > > > > - if (strcmp(arch, "aarch64") == 0) { > > > - args = "-machine virt"; > > > + if (!strcmp(arch, "aarch64")) { > > > + data.args = "-machine virt"; > > > + } else if (!strcmp(arch, "ppc64")) { > > > + data.ram_size = 512; > > > > Wouldn't it be simpler to always use "-m 512M" and the same node > > sizes? > it would, but it might make some CI instances start failing more > often where it used to work before. So I picked side of being > conservative and not to hog memory unless it's necessary. I don't understand. Why would "-m 512M" make some CI instances start failing more often?
On Mon, 8 Jul 2019 19:25:01 -0300 Eduardo Habkost <ehabkost@redhat.com> wrote: > On Thu, Jul 04, 2019 at 09:33:22AM +0200, Igor Mammedov wrote: > > On Wed, 3 Jul 2019 16:37:02 -0300 > > Eduardo Habkost <ehabkost@redhat.com> wrote: > > > [...] > > > > + TestData data = { .ram_size = 128 }; > > > > > > > > - if (strcmp(arch, "aarch64") == 0) { > > > > - args = "-machine virt"; > > > > + if (!strcmp(arch, "aarch64")) { > > > > + data.args = "-machine virt"; > > > > + } else if (!strcmp(arch, "ppc64")) { > > > > + data.ram_size = 512; > > > > > > Wouldn't it be simpler to always use "-m 512M" and the same node > > > sizes? > > it would, but it might make some CI instances start failing more > > often where it used to work before. So I picked side of being > > conservative and not to hog memory unless it's necessary. > > I don't understand. Why would "-m 512M" make some CI instances > start failing more often? well, test would consume 4 times more RAM and if running in parallel with other tests it might hit RAM limits set on test instance (it seems travis-ci should be fine with 7G VMs (assuming it runs on them) but who knows where else tests are running). Anyways if you feel it should be 512, I can respin with it default set to 512M (it will save a couple of lines, so honestly I don't see a good reason to consume more where it's not necessary) As for "the same node sizes?" it depends on testcases, for some it might be fine but not for all (current numa-test cases are mostly focused on CPU related parts but in bios-tables tests there is memory-less node testcase, which hints that numa-test is rather incomplete).
diff --git a/tests/numa-test.c b/tests/numa-test.c index 8de8581231..e102b3b70f 100644 --- a/tests/numa-test.c +++ b/tests/numa-test.c @@ -14,9 +14,28 @@ #include "qapi/qmp/qdict.h" #include "qapi/qmp/qlist.h" -static char *make_cli(const char *generic_cli, const char *test_cli) +typedef struct { + const char *args; + int ram_size; /* size in MB */ +} TestData; + +static char *make_cli(const TestData *data, int memdev_count, + const char *test_cli) { - return g_strdup_printf("%s %s", generic_cli ? generic_cli : "", test_cli); + int i; + char *tmp = NULL; + char *cli = g_strdup_printf("%s -m %d", data->args ? : "", data->ram_size); + + for (i = 0; memdev_count && (i < memdev_count); i++) { + tmp = g_strdup_printf("%s -object memory-backend-ram,id=r%d,size=%dM", + cli, i, data->ram_size / memdev_count); + g_free(cli); + cli = tmp; + } + tmp = g_strdup_printf("%s %s", cli, test_cli); + g_free(cli); + cli = tmp; + return cli; } static void test_mon_explicit(const void *data) @@ -25,9 +44,8 @@ static void test_mon_explicit(const void *data) char *cli; QTestState *qts; - cli = make_cli(data, "-smp 8 " - "-numa node,nodeid=0,cpus=0-3 " - "-numa node,nodeid=1,cpus=4-7 "); + cli = make_cli(data, 2, "-smp 8 -numa node,nodeid=0,cpus=0-3,memdev=r0 " + "-numa node,nodeid=1,cpus=4-7,memdev=r1 "); qts = qtest_init(cli); s = qtest_hmp(qts, "info numa"); @@ -45,7 +63,7 @@ static void test_mon_default(const void *data) char *cli; QTestState *qts; - cli = make_cli(data, "-smp 8 -numa node -numa node"); + cli = make_cli(data, 2, "-smp 8 -numa node,memdev=r0 -numa node,memdev=r1"); qts = qtest_init(cli); s = qtest_hmp(qts, "info numa"); @@ -63,9 +81,8 @@ static void test_mon_partial(const void *data) char *cli; QTestState *qts; - cli = make_cli(data, "-smp 8 " - "-numa node,nodeid=0,cpus=0-1 " - "-numa node,nodeid=1,cpus=4-5 "); + cli = make_cli(data, 2, "-smp 8 -numa node,nodeid=0,cpus=0-1,memdev=r0 " + "-numa node,nodeid=1,cpus=4-5,memdev=r1"); qts = qtest_init(cli); s = qtest_hmp(qts, "info numa"); @@ -93,7 +110,8 @@ static void test_query_cpus(const void *data) QObject *e; QTestState *qts; - cli = make_cli(data, "-smp 8 -numa node,cpus=0-3 -numa node,cpus=4-7"); + cli = make_cli(data, 2, "-smp 8 -numa node,cpus=0-3,memdev=r0 " + "-numa node,cpus=4-7,memdev=r1"); qts = qtest_init(cli); cpus = get_cpus(qts, &resp); g_assert(cpus); @@ -131,8 +149,8 @@ static void pc_numa_cpu(const void *data) QObject *e; QTestState *qts; - cli = make_cli(data, "-cpu pentium -smp 8,sockets=2,cores=2,threads=2 " - "-numa node,nodeid=0 -numa node,nodeid=1 " + cli = make_cli(data, 2, "-cpu pentium -smp 8,sockets=2,cores=2,threads=2 " + "-numa node,nodeid=0,memdev=r0 -numa node,nodeid=1,memdev=r1 " "-numa cpu,node-id=1,socket-id=0 " "-numa cpu,node-id=0,socket-id=1,core-id=0 " "-numa cpu,node-id=0,socket-id=1,core-id=1,thread-id=0 " @@ -185,8 +203,8 @@ static void spapr_numa_cpu(const void *data) QObject *e; QTestState *qts; - cli = make_cli(data, "-smp 4,cores=4 " - "-numa node,nodeid=0 -numa node,nodeid=1 " + cli = make_cli(data, 2, "-smp 4,cores=4 " + "-numa node,nodeid=0,memdev=r0 -numa node,nodeid=1,memdev=r1 " "-numa cpu,node-id=0,core-id=0 " "-numa cpu,node-id=0,core-id=1 " "-numa cpu,node-id=0,core-id=2 " @@ -231,8 +249,8 @@ static void aarch64_numa_cpu(const void *data) QObject *e; QTestState *qts; - cli = make_cli(data, "-smp 2 " - "-numa node,nodeid=0 -numa node,nodeid=1 " + cli = make_cli(data, 2, "-smp 2 " + "-numa node,nodeid=0,memdev=r0 -numa node,nodeid=1,memdev=r1 " "-numa cpu,node-id=1,thread-id=0 " "-numa cpu,node-id=0,thread-id=1"); qts = qtest_init(cli); @@ -272,16 +290,14 @@ static void pc_dynamic_cpu_cfg(const void *data) QObject *e; QDict *resp; QList *cpus; - QTestState *qs; - - qs = qtest_initf("%s -nodefaults --preconfig -smp 2", - data ? (char *)data : ""); + char *cli = make_cli(data, 2, "-nodefaults --preconfig -smp 2"); + QTestState *qs = qtest_init(cli); /* create 2 numa nodes */ g_assert(!qmp_rsp_is_err(qtest_qmp(qs, "{ 'execute': 'set-numa-node'," - " 'arguments': { 'type': 'node', 'nodeid': 0 } }"))); + " 'arguments': { 'type': 'node', 'nodeid': 0, 'memdev': 'r0' } }"))); g_assert(!qmp_rsp_is_err(qtest_qmp(qs, "{ 'execute': 'set-numa-node'," - " 'arguments': { 'type': 'node', 'nodeid': 1 } }"))); + " 'arguments': { 'type': 'node', 'nodeid': 1, 'memdev': 'r1' } }"))); /* map 2 cpus in non default reverse order * i.e socket1->node0, socket0->node1 @@ -325,35 +341,38 @@ static void pc_dynamic_cpu_cfg(const void *data) qobject_unref(resp); qtest_quit(qs); + g_free(cli); } int main(int argc, char **argv) { - const char *args = NULL; const char *arch = qtest_get_arch(); + TestData data = { .ram_size = 128 }; - if (strcmp(arch, "aarch64") == 0) { - args = "-machine virt"; + if (!strcmp(arch, "aarch64")) { + data.args = "-machine virt"; + } else if (!strcmp(arch, "ppc64")) { + data.ram_size = 512; } g_test_init(&argc, &argv, NULL); - qtest_add_data_func("/numa/mon/default", args, test_mon_default); - qtest_add_data_func("/numa/mon/cpus/explicit", args, test_mon_explicit); - qtest_add_data_func("/numa/mon/cpus/partial", args, test_mon_partial); - qtest_add_data_func("/numa/qmp/cpus/query-cpus", args, test_query_cpus); + qtest_add_data_func("/numa/mon/default", &data, test_mon_default); + qtest_add_data_func("/numa/mon/cpus/explicit", &data, test_mon_explicit); + qtest_add_data_func("/numa/mon/cpus/partial", &data, test_mon_partial); + qtest_add_data_func("/numa/qmp/cpus/query-cpus", &data, test_query_cpus); if (!strcmp(arch, "i386") || !strcmp(arch, "x86_64")) { - qtest_add_data_func("/numa/pc/cpu/explicit", args, pc_numa_cpu); - qtest_add_data_func("/numa/pc/dynamic/cpu", args, pc_dynamic_cpu_cfg); + qtest_add_data_func("/numa/pc/cpu/explicit", &data, pc_numa_cpu); + qtest_add_data_func("/numa/pc/dynamic/cpu", &data, pc_dynamic_cpu_cfg); } if (!strcmp(arch, "ppc64")) { - qtest_add_data_func("/numa/spapr/cpu/explicit", args, spapr_numa_cpu); + qtest_add_data_func("/numa/spapr/cpu/explicit", &data, spapr_numa_cpu); } if (!strcmp(arch, "aarch64")) { - qtest_add_data_func("/numa/aarch64/cpu/explicit", args, + qtest_add_data_func("/numa/aarch64/cpu/explicit", &data, aarch64_numa_cpu); }
it drops testing of deprecated 'mem' option and will test preferred memdev option instead. Signed-off-by: Igor Mammedov <imammedo@redhat.com> --- v2: - make backend size depend on initial RAM size and a number of backends fixes test faulure with spapr machine (Eduardo Habkost <ehabkost@redhat.com>) tests/numa-test.c | 85 +++++++++++++++++++++++++++++------------------ 1 file changed, 52 insertions(+), 33 deletions(-)