Message ID | 20171030040056.11780-1-f4bug@amsat.org (mailing list archive) |
---|---|
State | New, archived |
Headers | show |
Hi, This series failed automatic build test. Please find the testing commands and their output below. If you have docker installed, you can probably reproduce it locally. Subject: [Qemu-devel] [RFC PATCH] vl: only display available accelerators Type: series Message-id: 20171030040056.11780-1-f4bug@amsat.org === TEST SCRIPT BEGIN === #!/bin/bash set -e git submodule update --init dtc # Let docker tests dump environment info export SHOW_ENV=1 export J=8 time make docker-test-quick@centos6 time make docker-test-build@min-glib time make docker-test-mingw@fedora time make docker-test-block@fedora === TEST SCRIPT END === Updating 3c8cf5a9c21ff8782164d1def7f44bd888713384 Switched to a new branch 'test' e627514954 vl: only display available accelerators === OUTPUT BEGIN === Submodule 'dtc' (git://git.qemu-project.org/dtc.git) registered for path 'dtc' Cloning into '/var/tmp/patchew-tester-tmp-5starz_f/src/dtc'... Submodule path 'dtc': checked out '558cd81bdd432769b59bff01240c44f82cfb1a9d' BUILD centos6 make[1]: Entering directory '/var/tmp/patchew-tester-tmp-5starz_f/src' GEN /var/tmp/patchew-tester-tmp-5starz_f/src/docker-src.2017-10-30-00.10.34.32148/qemu.tar Cloning into '/var/tmp/patchew-tester-tmp-5starz_f/src/docker-src.2017-10-30-00.10.34.32148/qemu.tar.vroot'... done. Your branch is up-to-date with 'origin/test'. Submodule 'dtc' (git://git.qemu-project.org/dtc.git) registered for path 'dtc' Cloning into '/var/tmp/patchew-tester-tmp-5starz_f/src/docker-src.2017-10-30-00.10.34.32148/qemu.tar.vroot/dtc'... Submodule path 'dtc': checked out '558cd81bdd432769b59bff01240c44f82cfb1a9d' Submodule 'ui/keycodemapdb' (git://git.qemu.org/keycodemapdb.git) registered for path 'ui/keycodemapdb' Cloning into '/var/tmp/patchew-tester-tmp-5starz_f/src/docker-src.2017-10-30-00.10.34.32148/qemu.tar.vroot/ui/keycodemapdb'... Submodule path 'ui/keycodemapdb': checked out '10739aa26051a5d49d88132604539d3ed085e72e' COPY RUNNER RUN test-quick in qemu:centos6 Packages installed: SDL-devel-1.2.14-7.el6_7.1.x86_64 bison-2.4.1-5.el6.x86_64 bzip2-devel-1.0.5-7.el6_0.x86_64 ccache-3.1.6-2.el6.x86_64 csnappy-devel-0-6.20150729gitd7bc683.el6.x86_64 flex-2.5.35-9.el6.x86_64 gcc-4.4.7-18.el6.x86_64 gettext-0.17-18.el6.x86_64 git-1.7.1-9.el6_9.x86_64 glib2-devel-2.28.8-9.el6.x86_64 libepoxy-devel-1.2-3.el6.x86_64 libfdt-devel-1.4.0-1.el6.x86_64 librdmacm-devel-1.0.21-0.el6.x86_64 lzo-devel-2.03-3.1.el6_5.1.x86_64 make-3.81-23.el6.x86_64 mesa-libEGL-devel-11.0.7-4.el6.x86_64 mesa-libgbm-devel-11.0.7-4.el6.x86_64 package g++ is not installed pixman-devel-0.32.8-1.el6.x86_64 spice-glib-devel-0.26-8.el6.x86_64 spice-server-devel-0.12.4-16.el6.x86_64 tar-1.23-15.el6_8.x86_64 vte-devel-0.25.1-9.el6.x86_64 xen-devel-4.6.6-2.el6.x86_64 zlib-devel-1.2.3-29.el6.x86_64 Environment variables: PACKAGES=bison bzip2-devel ccache csnappy-devel flex g++ gcc gettext git glib2-devel libepoxy-devel libfdt-devel librdmacm-devel lzo-devel make mesa-libEGL-devel mesa-libgbm-devel pixman-devel SDL-devel spice-glib-devel spice-server-devel tar vte-devel xen-devel zlib-devel HOSTNAME=423690ba8c26 MAKEFLAGS= -j8 J=8 CCACHE_DIR=/var/tmp/ccache EXTRA_CONFIGURE_OPTS= V= SHOW_ENV=1 PATH=/usr/lib/ccache:/usr/lib64/ccache:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin PWD=/ TARGET_LIST= SHLVL=1 HOME=/root TEST_DIR=/tmp/qemu-test FEATURES= dtc DEBUG= _=/usr/bin/env Configure options: --enable-werror --target-list=x86_64-softmmu,aarch64-softmmu --prefix=/tmp/qemu-test/install No C++ compiler available; disabling C++ specific optional code Install prefix /tmp/qemu-test/install BIOS directory /tmp/qemu-test/install/share/qemu firmware path /tmp/qemu-test/install/share/qemu-firmware binary directory /tmp/qemu-test/install/bin library directory /tmp/qemu-test/install/lib module directory /tmp/qemu-test/install/lib/qemu libexec directory /tmp/qemu-test/install/libexec include directory /tmp/qemu-test/install/include config directory /tmp/qemu-test/install/etc local state directory /tmp/qemu-test/install/var Manual directory /tmp/qemu-test/install/share/man ELF interp prefix /usr/gnemul/qemu-%M Source path /tmp/qemu-test/src GIT submodules C compiler cc Host C compiler cc C++ compiler Objective-C compiler cc ARFLAGS rv CFLAGS -O2 -U_FORTIFY_SOURCE -D_FORTIFY_SOURCE=2 -g QEMU_CFLAGS -I/usr/include/pixman-1 -I$(SRC_PATH)/dtc/libfdt -pthread -I/usr/include/glib-2.0 -I/usr/lib64/glib-2.0/include -DNCURSES_WIDECHAR -fPIE -DPIE -m64 -mcx16 -D_GNU_SOURCE -D_FILE_OFFSET_BITS=64 -D_LARGEFILE_SOURCE -Wstrict-prototypes -Wredundant-decls -Wall -Wundef -Wwrite-strings -Wmissing-prototypes -fno-strict-aliasing -fno-common -fwrapv -Wendif-labels -Wno-missing-include-dirs -Wempty-body -Wnested-externs -Wformat-security -Wformat-y2k -Winit-self -Wignored-qualifiers -Wold-style-declaration -Wold-style-definition -Wtype-limits -fstack-protector-all -I/usr/include/libpng12 -I/usr/include/libdrm -I/usr/include/spice-server -I/usr/include/cacard -I/usr/include/glib-2.0 -I/usr/lib64/glib-2.0/include -I/usr/include/pixman-1 -I/usr/include/nss3 -I/usr/include/nspr4 -I/usr/include/spice-1 LDFLAGS -Wl,--warn-common -Wl,-z,relro -Wl,-z,now -pie -m64 -g make make install install python python -B smbd /usr/sbin/smbd module support no host CPU x86_64 host big endian no target list x86_64-softmmu aarch64-softmmu gprof enabled no sparse enabled no strip binaries yes profiler no static build no SDL support yes (1.2.14) GTK support yes (2.24.23) GTK GL support no VTE support yes (0.25.1) TLS priority NORMAL GNUTLS support no GNUTLS rnd no libgcrypt no libgcrypt kdf no nettle no nettle kdf no libtasn1 no curses support yes virgl support no curl support no mingw32 support no Audio drivers oss Block whitelist (rw) Block whitelist (ro) VirtFS support no Multipath support no VNC support yes VNC SASL support no VNC JPEG support yes VNC PNG support yes xen support yes xen ctrl version 40600 pv dom build no brlapi support no bluez support no Documentation no PIE yes vde support no netmap support no Linux AIO support no ATTR/XATTR support yes Install blobs yes KVM support yes HAX support no TCG support yes TCG debug enabled no TCG interpreter no RDMA support yes fdt support yes preadv support yes fdatasync yes madvise yes posix_madvise yes libcap-ng support no vhost-net support yes vhost-scsi support yes vhost-vsock support yes vhost-user support yes Trace backends log spice support yes (0.12.6/0.12.4) rbd support no xfsctl support no smartcard support yes libusb no usb net redir no OpenGL support yes OpenGL dmabufs no libiscsi support no libnfs support no build guest agent yes QGA VSS support no QGA w32 disk info no QGA MSI support no seccomp support no coroutine backend ucontext coroutine pool yes debug stack usage no crypto afalg no GlusterFS support no gcov gcov gcov enabled no TPM support yes libssh2 support no TPM passthrough yes TPM emulator yes QOM debugging yes Live block migration yes lzo support yes snappy support no bzip2 support yes NUMA host support no tcmalloc support no jemalloc support no avx2 optimization no replication support yes VxHS block device no capstone no mkdir -p dtc/libfdt GEN x86_64-softmmu/config-devices.mak.tmp mkdir -p dtc/tests GEN aarch64-softmmu/config-devices.mak.tmp GEN config-host.h GEN qemu-options.def GEN qmp-commands.h GEN qapi-types.h GEN qapi-visit.h GEN qapi-event.h GEN x86_64-softmmu/config-devices.mak GEN aarch64-softmmu/config-devices.mak GEN qmp-marshal.c GEN qapi-types.c GEN qapi-visit.c GEN qapi-event.c GEN qmp-introspect.h GEN qmp-introspect.c GEN trace/generated-tcg-tracers.h GEN trace/generated-helpers-wrappers.h GEN trace/generated-helpers.h GEN trace/generated-helpers.c GEN module_block.h GEN ui/input-keymap-linux-to-qcode.c GEN ui/input-keymap-qcode-to-qnum.c GEN ui/input-keymap-qnum-to-qcode.c GEN tests/test-qapi-types.h GEN tests/test-qapi-visit.h GEN tests/test-qmp-commands.h GEN tests/test-qapi-event.h GEN tests/test-qmp-introspect.h GEN trace-root.h GEN util/trace.h GEN crypto/trace.h GEN io/trace.h GEN migration/trace.h GEN block/trace.h GEN chardev/trace.h GEN hw/block/trace.h GEN hw/block/dataplane/trace.h GEN hw/char/trace.h GEN hw/intc/trace.h GEN hw/net/trace.h GEN hw/virtio/trace.h GEN hw/audio/trace.h GEN hw/misc/trace.h GEN hw/usb/trace.h GEN hw/scsi/trace.h GEN hw/nvram/trace.h GEN hw/display/trace.h GEN hw/input/trace.h GEN hw/timer/trace.h GEN hw/dma/trace.h GEN hw/sparc/trace.h GEN hw/sd/trace.h GEN hw/isa/trace.h GEN hw/mem/trace.h GEN hw/i386/trace.h GEN hw/i386/xen/trace.h GEN hw/9pfs/trace.h GEN hw/ppc/trace.h GEN hw/pci/trace.h GEN hw/s390x/trace.h GEN hw/vfio/trace.h GEN hw/acpi/trace.h GEN hw/arm/trace.h GEN hw/alpha/trace.h GEN hw/xen/trace.h GEN hw/ide/trace.h GEN ui/trace.h GEN audio/trace.h GEN net/trace.h GEN target/arm/trace.h GEN target/i386/trace.h GEN target/mips/trace.h GEN target/sparc/trace.h GEN target/s390x/trace.h GEN target/ppc/trace.h GEN qom/trace.h GEN linux-user/trace.h GEN qapi/trace.h GEN accel/tcg/trace.h GEN accel/kvm/trace.h GEN nbd/trace.h GEN scsi/trace.h GEN trace-root.c GEN util/trace.c GEN crypto/trace.c GEN io/trace.c GEN migration/trace.c GEN block/trace.c GEN chardev/trace.c GEN hw/block/trace.c GEN hw/block/dataplane/trace.c GEN hw/char/trace.c GEN hw/intc/trace.c GEN hw/net/trace.c GEN hw/virtio/trace.c GEN hw/audio/trace.c GEN hw/misc/trace.c GEN hw/usb/trace.c GEN hw/scsi/trace.c GEN hw/nvram/trace.c GEN hw/display/trace.c GEN hw/input/trace.c GEN hw/timer/trace.c GEN hw/dma/trace.c GEN hw/sparc/trace.c GEN hw/sd/trace.c GEN hw/isa/trace.c GEN hw/mem/trace.c GEN hw/i386/trace.c GEN hw/i386/xen/trace.c GEN hw/9pfs/trace.c GEN hw/ppc/trace.c GEN hw/pci/trace.c GEN hw/s390x/trace.c GEN hw/vfio/trace.c GEN hw/acpi/trace.c GEN hw/arm/trace.c GEN hw/alpha/trace.c GEN hw/xen/trace.c GEN hw/ide/trace.c GEN ui/trace.c GEN audio/trace.c GEN net/trace.c GEN target/arm/trace.c GEN target/i386/trace.c GEN target/mips/trace.c GEN target/sparc/trace.c GEN target/s390x/trace.c GEN target/ppc/trace.c GEN qom/trace.c GEN linux-user/trace.c GEN qapi/trace.c GEN accel/tcg/trace.c GEN accel/kvm/trace.c GEN nbd/trace.c GEN scsi/trace.c GEN config-all-devices.mak DEP /tmp/qemu-test/src/dtc/tests/dumptrees.c DEP /tmp/qemu-test/src/dtc/tests/trees.S DEP /tmp/qemu-test/src/dtc/tests/testutils.c DEP /tmp/qemu-test/src/dtc/tests/value-labels.c DEP /tmp/qemu-test/src/dtc/tests/asm_tree_dump.c DEP /tmp/qemu-test/src/dtc/tests/truncated_property.c DEP /tmp/qemu-test/src/dtc/tests/check_path.c DEP /tmp/qemu-test/src/dtc/tests/overlay_bad_fixup.c DEP /tmp/qemu-test/src/dtc/tests/overlay.c DEP /tmp/qemu-test/src/dtc/tests/subnode_iterate.c DEP /tmp/qemu-test/src/dtc/tests/property_iterate.c DEP /tmp/qemu-test/src/dtc/tests/integer-expressions.c DEP /tmp/qemu-test/src/dtc/tests/utilfdt_test.c DEP /tmp/qemu-test/src/dtc/tests/path_offset_aliases.c DEP /tmp/qemu-test/src/dtc/tests/add_subnode_with_nops.c DEP /tmp/qemu-test/src/dtc/tests/dtb_reverse.c DEP /tmp/qemu-test/src/dtc/tests/dtbs_equal_unordered.c DEP /tmp/qemu-test/src/dtc/tests/dtbs_equal_ordered.c DEP /tmp/qemu-test/src/dtc/tests/extra-terminating-null.c DEP /tmp/qemu-test/src/dtc/tests/incbin.c DEP /tmp/qemu-test/src/dtc/tests/boot-cpuid.c DEP /tmp/qemu-test/src/dtc/tests/phandle_format.c DEP /tmp/qemu-test/src/dtc/tests/path-references.c DEP /tmp/qemu-test/src/dtc/tests/references.c DEP /tmp/qemu-test/src/dtc/tests/string_escapes.c DEP /tmp/qemu-test/src/dtc/tests/propname_escapes.c DEP /tmp/qemu-test/src/dtc/tests/appendprop2.c DEP /tmp/qemu-test/src/dtc/tests/appendprop1.c DEP /tmp/qemu-test/src/dtc/tests/del_node.c DEP /tmp/qemu-test/src/dtc/tests/del_property.c DEP /tmp/qemu-test/src/dtc/tests/setprop.c DEP /tmp/qemu-test/src/dtc/tests/set_name.c DEP /tmp/qemu-test/src/dtc/tests/rw_tree1.c DEP /tmp/qemu-test/src/dtc/tests/open_pack.c DEP /tmp/qemu-test/src/dtc/tests/nopulate.c DEP /tmp/qemu-test/src/dtc/tests/mangle-layout.c DEP /tmp/qemu-test/src/dtc/tests/move_and_save.c DEP /tmp/qemu-test/src/dtc/tests/sw_tree1.c DEP /tmp/qemu-test/src/dtc/tests/nop_node.c DEP /tmp/qemu-test/src/dtc/tests/nop_property.c DEP /tmp/qemu-test/src/dtc/tests/setprop_inplace.c DEP /tmp/qemu-test/src/dtc/tests/stringlist.c DEP /tmp/qemu-test/src/dtc/tests/addr_size_cells.c DEP /tmp/qemu-test/src/dtc/tests/notfound.c DEP /tmp/qemu-test/src/dtc/tests/sized_cells.c DEP /tmp/qemu-test/src/dtc/tests/char_literal.c DEP /tmp/qemu-test/src/dtc/tests/get_alias.c DEP /tmp/qemu-test/src/dtc/tests/node_offset_by_compatible.c DEP /tmp/qemu-test/src/dtc/tests/node_check_compatible.c DEP /tmp/qemu-test/src/dtc/tests/node_offset_by_phandle.c DEP /tmp/qemu-test/src/dtc/tests/node_offset_by_prop_value.c DEP /tmp/qemu-test/src/dtc/tests/parent_offset.c DEP /tmp/qemu-test/src/dtc/tests/supernode_atdepth_offset.c DEP /tmp/qemu-test/src/dtc/tests/get_path.c DEP /tmp/qemu-test/src/dtc/tests/get_phandle.c DEP /tmp/qemu-test/src/dtc/tests/getprop.c DEP /tmp/qemu-test/src/dtc/tests/get_name.c DEP /tmp/qemu-test/src/dtc/tests/path_offset.c DEP /tmp/qemu-test/src/dtc/tests/subnode_offset.c DEP /tmp/qemu-test/src/dtc/tests/find_property.c DEP /tmp/qemu-test/src/dtc/tests/root_node.c DEP /tmp/qemu-test/src/dtc/tests/get_mem_rsv.c DEP /tmp/qemu-test/src/dtc/libfdt/fdt_overlay.c DEP /tmp/qemu-test/src/dtc/libfdt/fdt_addresses.c DEP /tmp/qemu-test/src/dtc/libfdt/fdt_empty_tree.c DEP /tmp/qemu-test/src/dtc/libfdt/fdt_rw.c DEP /tmp/qemu-test/src/dtc/libfdt/fdt_strerror.c DEP /tmp/qemu-test/src/dtc/libfdt/fdt_sw.c DEP /tmp/qemu-test/src/dtc/libfdt/fdt_wip.c DEP /tmp/qemu-test/src/dtc/libfdt/fdt_ro.c DEP /tmp/qemu-test/src/dtc/util.c DEP /tmp/qemu-test/src/dtc/libfdt/fdt.c DEP /tmp/qemu-test/src/dtc/fdtput.c DEP /tmp/qemu-test/src/dtc/fdtget.c LEX convert-dtsv0-lexer.lex.c DEP /tmp/qemu-test/src/dtc/srcpos.c BISON dtc-parser.tab.c DEP /tmp/qemu-test/src/dtc/fdtdump.c LEX dtc-lexer.lex.c DEP /tmp/qemu-test/src/dtc/treesource.c DEP /tmp/qemu-test/src/dtc/livetree.c DEP /tmp/qemu-test/src/dtc/fstree.c DEP /tmp/qemu-test/src/dtc/dtc.c DEP /tmp/qemu-test/src/dtc/flattree.c DEP /tmp/qemu-test/src/dtc/data.c DEP /tmp/qemu-test/src/dtc/checks.c DEP convert-dtsv0-lexer.lex.c DEP dtc-parser.tab.c DEP dtc-lexer.lex.c CHK version_gen.h UPD version_gen.h DEP /tmp/qemu-test/src/dtc/util.c CC libfdt/fdt.o CC libfdt/fdt_ro.o CC libfdt/fdt_wip.o CC libfdt/fdt_sw.o CC libfdt/fdt_rw.o CC libfdt/fdt_strerror.o CC libfdt/fdt_empty_tree.o CC libfdt/fdt_addresses.o CC libfdt/fdt_overlay.o AR libfdt/libfdt.a ar: creating libfdt/libfdt.a a - libfdt/fdt.o a - libfdt/fdt_ro.o a - libfdt/fdt_wip.o a - libfdt/fdt_sw.o a - libfdt/fdt_rw.o a - libfdt/fdt_strerror.o a - libfdt/fdt_empty_tree.o a - libfdt/fdt_addresses.o a - libfdt/fdt_overlay.o mkdir -p dtc/libfdt mkdir -p dtc/tests CC tests/qemu-iotests/socket_scm_helper.o GEN qga/qapi-generated/qga-qapi-types.h GEN qga/qapi-generated/qga-qapi-visit.h GEN qga/qapi-generated/qga-qapi-types.c GEN qga/qapi-generated/qga-qmp-commands.h GEN qga/qapi-generated/qga-qapi-visit.c GEN qga/qapi-generated/qga-qmp-marshal.c CC qmp-introspect.o CC qapi-types.o CC qapi-visit.o CC qapi-event.o CC qapi/qapi-visit-core.o CC qapi/qapi-dealloc-visitor.o CC qapi/qobject-input-visitor.o CC qapi/qobject-output-visitor.o CC qapi/qmp-registry.o CC qapi/qmp-dispatch.o CC qapi/string-input-visitor.o CC qapi/string-output-visitor.o CC qapi/opts-visitor.o CC qapi/qapi-clone-visitor.o CC qapi/qmp-event.o CC qapi/qapi-util.o CC qobject/qnull.o CC qobject/qnum.o CC qobject/qstring.o CC qobject/qdict.o CC qobject/qlist.o CC qobject/qjson.o CC qobject/qlit.o CC qobject/qbool.o CC qobject/qobject.o CC qobject/json-lexer.o CC qobject/json-streamer.o CC qobject/json-parser.o CC trace/control.o CC trace/qmp.o CC util/cutils.o CC util/unicode.o CC util/osdep.o CC util/qemu-timer-common.o CC util/bufferiszero.o CC util/lockcnt.o CC util/aiocb.o CC util/async.o CC util/qemu-timer.o CC util/thread-pool.o CC util/main-loop.o CC util/iohandler.o CC util/aio-posix.o CC util/compatfd.o CC util/event_notifier-posix.o CC util/mmap-alloc.o CC util/oslib-posix.o CC util/qemu-openpty.o CC util/qemu-thread-posix.o CC util/memfd.o CC util/envlist.o CC util/path.o CC util/module.o CC util/host-utils.o CC util/bitmap.o CC util/hbitmap.o CC util/bitops.o CC util/fifo8.o CC util/acl.o CC util/cacheinfo.o CC util/error.o CC util/qemu-error.o CC util/iov.o CC util/id.o CC util/qemu-config.o CC util/qemu-sockets.o CC util/notify.o CC util/uri.o CC util/qemu-option.o CC util/qemu-progress.o CC util/keyval.o CC util/hexdump.o CC util/uuid.o CC util/crc32c.o CC util/throttle.o CC util/getauxval.o CC util/readline.o CC util/rcu.o CC util/qemu-coroutine.o CC util/qemu-coroutine-lock.o CC util/qemu-coroutine-io.o CC util/qemu-coroutine-sleep.o CC util/coroutine-ucontext.o CC util/buffer.o CC util/timed-average.o CC util/base64.o CC util/log.o CC util/pagesize.o CC util/qdist.o CC util/qht.o CC util/range.o CC util/stats64.o CC util/systemd.o CC trace-root.o CC util/trace.o CC crypto/trace.o CC io/trace.o CC migration/trace.o CC block/trace.o CC chardev/trace.o CC hw/block/trace.o CC hw/block/dataplane/trace.o CC hw/intc/trace.o CC hw/char/trace.o CC hw/net/trace.o CC hw/audio/trace.o CC hw/virtio/trace.o CC hw/misc/trace.o CC hw/usb/trace.o CC hw/scsi/trace.o CC hw/nvram/trace.o CC hw/display/trace.o CC hw/input/trace.o CC hw/timer/trace.o CC hw/dma/trace.o CC hw/sparc/trace.o CC hw/sd/trace.o CC hw/isa/trace.o CC hw/mem/trace.o CC hw/i386/trace.o CC hw/i386/xen/trace.o CC hw/9pfs/trace.o CC hw/ppc/trace.o CC hw/pci/trace.o CC hw/s390x/trace.o CC hw/vfio/trace.o CC hw/acpi/trace.o CC hw/arm/trace.o CC hw/alpha/trace.o CC hw/xen/trace.o CC hw/ide/trace.o CC ui/trace.o CC audio/trace.o CC net/trace.o CC target/arm/trace.o CC target/mips/trace.o CC target/i386/trace.o CC target/sparc/trace.o CC target/s390x/trace.o CC target/ppc/trace.o CC linux-user/trace.o CC qom/trace.o CC accel/tcg/trace.o CC qapi/trace.o CC accel/kvm/trace.o CC nbd/trace.o CC scsi/trace.o CC crypto/pbkdf-stub.o CC stubs/arch-query-cpu-def.o CC stubs/arch-query-cpu-model-expansion.o CC stubs/arch-query-cpu-model-comparison.o CC stubs/arch-query-cpu-model-baseline.o CC stubs/blk-commit-all.o CC stubs/bdrv-next-monitor-owned.o CC stubs/blockdev-close-all-bdrv-states.o CC stubs/clock-warp.o CC stubs/cpu-get-clock.o CC stubs/cpu-get-icount.o CC stubs/dump.o CC stubs/error-printf.o CC stubs/fdset.o CC stubs/get-vm-name.o CC stubs/gdbstub.o CC stubs/iothread.o CC stubs/iothread-lock.o CC stubs/is-daemonized.o CC stubs/migr-blocker.o CC stubs/change-state-handler.o CC stubs/machine-init-done.o CC stubs/monitor.o CC stubs/notify-event.o CC stubs/qtest.o CC stubs/replay.o CC stubs/runstate-check.o CC stubs/set-fd-handler.o CC stubs/slirp.o CC stubs/sysbus.o CC stubs/tpm.o CC stubs/trace-control.o CC stubs/uuid.o CC stubs/vm-stop.o CC stubs/vmstate.o CC stubs/qmp_pc_dimm.o CC stubs/target-monitor-defs.o CC stubs/target-get-monitor-def.o CC stubs/pc_madt_cpu_entry.o CC stubs/vmgenid.o CC stubs/xen-hvm.o CC stubs/xen-common.o CC stubs/pci-host-piix.o CC contrib/ivshmem-client/ivshmem-client.o CC contrib/ivshmem-client/main.o CC contrib/ivshmem-server/ivshmem-server.o CC contrib/ivshmem-server/main.o CC qemu-nbd.o CC block.o CC blockjob.o CC qemu-io-cmds.o CC replication.o CC block/raw-format.o CC block/qcow.o CC block/vdi.o CC block/vmdk.o CC block/cloop.o CC block/bochs.o CC block/vpc.o CC block/vvfat.o CC block/dmg.o CC block/qcow2.o CC block/qcow2-refcount.o CC block/qcow2-cluster.o CC block/qcow2-snapshot.o CC block/qcow2-cache.o CC block/qcow2-bitmap.o CC block/qed.o CC block/qed-l2-cache.o CC block/qed-table.o CC block/qed-cluster.o CC block/qed-check.o CC block/vhdx.o CC block/vhdx-endian.o CC block/vhdx-log.o CC block/quorum.o CC block/blkdebug.o CC block/parallels.o CC block/blkverify.o CC block/blkreplay.o CC block/block-backend.o CC block/snapshot.o CC block/qapi.o CC block/file-posix.o CC block/null.o CC block/mirror.o CC block/commit.o CC block/io.o CC block/throttle-groups.o CC block/nbd.o CC block/nbd-client.o CC block/sheepdog.o CC block/accounting.o CC block/dirty-bitmap.o CC block/write-threshold.o CC block/backup.o CC block/replication.o CC block/throttle.o CC block/crypto.o CC nbd/server.o CC nbd/common.o CC nbd/client.o CC scsi/utils.o CC scsi/pr-manager.o CC scsi/pr-manager-helper.o CC block/dmg-bz2.o CC crypto/init.o CC crypto/hash.o CC crypto/hash-glib.o CC crypto/hmac.o CC crypto/hmac-glib.o CC crypto/aes.o CC crypto/desrfb.o CC crypto/cipher.o CC crypto/tlscreds.o CC crypto/tlscredsanon.o CC crypto/tlscredsx509.o CC crypto/tlssession.o CC crypto/secret.o CC crypto/random-platform.o CC crypto/pbkdf.o CC crypto/ivgen.o CC crypto/ivgen-essiv.o CC crypto/ivgen-plain.o CC crypto/ivgen-plain64.o CC crypto/afsplit.o CC crypto/xts.o CC crypto/block.o CC crypto/block-qcow.o CC crypto/block-luks.o CC io/channel.o CC io/channel-buffer.o CC io/channel-command.o CC io/channel-file.o CC io/channel-socket.o CC io/channel-tls.o CC io/channel-watch.o CC io/channel-websock.o CC io/channel-util.o CC io/dns-resolver.o CC io/task.o CC qom/object.o CC qom/container.o CC qom/qom-qobject.o GEN qemu-img-cmds.h CC qom/object_interfaces.o CC qemu-io.o CC scsi/qemu-pr-helper.o CC qemu-bridge-helper.o CC blockdev.o CC blockdev-nbd.o CC bootdevice.o CC iothread.o CC qdev-monitor.o CC device-hotplug.o CC os-posix.o CC bt-host.o CC bt-vhci.o CC dma-helpers.o CC vl.o CC tpm.o CC device_tree.o CC qmp-marshal.o CC qmp.o CC hmp.o CC cpus-common.o CC audio/audio.o CC audio/noaudio.o CC audio/wavaudio.o CC audio/mixeng.o CC audio/sdlaudio.o CC audio/ossaudio.o CC audio/spiceaudio.o CC audio/wavcapture.o CC backends/rng.o CC backends/rng-egd.o CC backends/rng-random.o CC backends/hostmem.o CC backends/tpm.o CC backends/hostmem-ram.o CC backends/hostmem-file.o CC backends/cryptodev.o CC backends/cryptodev-builtin.o CC block/stream.o CC chardev/msmouse.o CC chardev/testdev.o CC chardev/wctablet.o CC chardev/spice.o CC disas/arm.o CC disas/i386.o CC fsdev/qemu-fsdev-dummy.o CC fsdev/qemu-fsdev-throttle.o CC fsdev/qemu-fsdev-opts.o CC hw/acpi/core.o CC hw/acpi/piix4.o CC hw/acpi/ich9.o CC hw/acpi/pcihp.o CC hw/acpi/tco.o CC hw/acpi/cpu_hotplug.o CC hw/acpi/memory_hotplug.o CC hw/acpi/cpu.o CC hw/acpi/nvdimm.o CC hw/acpi/vmgenid.o CC hw/acpi/acpi_interface.o CC hw/acpi/aml-build.o CC hw/acpi/bios-linker-loader.o CC hw/acpi/ipmi.o CC hw/acpi/ipmi-stub.o CC hw/acpi/acpi-stub.o CC hw/audio/sb16.o CC hw/audio/es1370.o CC hw/audio/ac97.o CC hw/audio/fmopl.o CC hw/audio/adlib.o CC hw/audio/gus.o CC hw/audio/gusemu_hal.o CC hw/audio/gusemu_mixer.o CC hw/audio/cs4231a.o CC hw/audio/intel-hda.o CC hw/audio/hda-codec.o CC hw/audio/pcspk.o CC hw/audio/wm8750.o CC hw/audio/pl041.o CC hw/audio/lm4549.o CC hw/audio/marvell_88w8618.o CC hw/audio/soundhw.o CC hw/block/block.o CC hw/block/hd-geometry.o CC hw/block/cdrom.o CC hw/block/fdc.o CC hw/block/m25p80.o CC hw/block/nand.o CC hw/block/pflash_cfi01.o CC hw/block/pflash_cfi02.o CC hw/block/xen_disk.o CC hw/block/ecc.o CC hw/block/onenand.o CC hw/block/nvme.o CC hw/bt/core.o CC hw/bt/l2cap.o CC hw/bt/sdp.o CC hw/bt/hci.o CC hw/bt/hid.o CC hw/bt/hci-csr.o CC hw/char/ipoctal232.o CC hw/char/parallel.o CC hw/char/serial.o CC hw/char/pl011.o CC hw/char/serial-isa.o CC hw/char/virtio-console.o CC hw/char/serial-pci.o CC hw/char/xen_console.o CC hw/char/cadence_uart.o CC hw/char/cmsdk-apb-uart.o CC hw/char/debugcon.o CC hw/char/imx_serial.o CC hw/core/qdev.o CC hw/core/qdev-properties.o CC hw/core/reset.o CC hw/core/bus.o CC hw/core/fw-path-provider.o CC hw/core/irq.o CC hw/core/hotplug.o CC hw/core/nmi.o CC hw/core/ptimer.o CC hw/core/sysbus.o CC hw/core/machine.o CC hw/core/loader.o CC hw/core/qdev-properties-system.o CC hw/core/or-irq.o CC hw/core/register.o CC hw/core/platform-bus.o CC hw/cpu/core.o CC hw/display/ads7846.o CC hw/display/cirrus_vga.o CC hw/display/pl110.o CC hw/display/ssd0303.o CC hw/display/xenfb.o CC hw/display/vga-pci.o CC hw/display/ssd0323.o CC hw/display/vga-isa.o CC hw/display/vmware_vga.o CC hw/display/blizzard.o CC hw/display/exynos4210_fimd.o CC hw/display/framebuffer.o CC hw/display/qxl.o CC hw/display/tc6393xb.o CC hw/display/qxl-logger.o CC hw/display/qxl-render.o CC hw/dma/pl080.o CC hw/dma/pl330.o CC hw/dma/i8257.o CC hw/dma/xlnx-zynq-devcfg.o CC hw/gpio/max7310.o CC hw/gpio/pl061.o CC hw/gpio/zaurus.o CC hw/gpio/gpio_key.o CC hw/i2c/core.o CC hw/i2c/smbus_eeprom.o CC hw/i2c/smbus.o CC hw/i2c/i2c-ddc.o CC hw/i2c/versatile_i2c.o CC hw/i2c/smbus_ich9.o CC hw/i2c/pm_smbus.o CC hw/i2c/bitbang_i2c.o CC hw/i2c/exynos4210_i2c.o CC hw/i2c/imx_i2c.o CC hw/i2c/aspeed_i2c.o CC hw/ide/core.o CC hw/ide/atapi.o CC hw/ide/qdev.o CC hw/ide/pci.o CC hw/ide/isa.o CC hw/ide/piix.o CC hw/ide/microdrive.o CC hw/ide/ich.o CC hw/ide/ahci.o CC hw/input/hid.o CC hw/input/lm832x.o CC hw/input/pckbd.o CC hw/input/pl050.o CC hw/input/ps2.o CC hw/input/stellaris_input.o CC hw/input/tsc2005.o CC hw/input/vmmouse.o CC hw/input/virtio-input.o CC hw/input/virtio-input-hid.o CC hw/input/virtio-input-host.o CC hw/intc/i8259_common.o CC hw/intc/i8259.o CC hw/intc/pl190.o CC hw/intc/imx_avic.o CC hw/intc/realview_gic.o CC hw/intc/ioapic_common.o CC hw/intc/arm_gic_common.o CC hw/intc/arm_gic.o CC hw/intc/arm_gicv2m.o CC hw/intc/arm_gicv3_common.o CC hw/intc/arm_gicv3_dist.o CC hw/intc/arm_gicv3_redist.o CC hw/intc/arm_gicv3.o CC hw/intc/arm_gicv3_its_common.o CC hw/intc/intc.o CC hw/ipack/ipack.o CC hw/ipack/tpci200.o CC hw/ipmi/ipmi.o CC hw/ipmi/ipmi_bmc_sim.o CC hw/ipmi/ipmi_bmc_extern.o CC hw/ipmi/isa_ipmi_kcs.o CC hw/ipmi/isa_ipmi_bt.o CC hw/isa/isa-bus.o CC hw/isa/apm.o CC hw/mem/pc-dimm.o CC hw/misc/applesmc.o CC hw/misc/max111x.o CC hw/mem/nvdimm.o CC hw/misc/tmp105.o CC hw/misc/tmp421.o CC hw/misc/debugexit.o CC hw/misc/pc-testdev.o CC hw/misc/sga.o CC hw/misc/pci-testdev.o CC hw/misc/edu.o CC hw/misc/unimp.o CC hw/misc/vmcoreinfo.o CC hw/misc/arm_l2x0.o CC hw/misc/arm_integrator_debug.o CC hw/misc/arm11scu.o CC hw/misc/a9scu.o CC hw/net/xen_nic.o CC hw/net/ne2000.o CC hw/net/eepro100.o CC hw/net/pcnet-pci.o CC hw/net/pcnet.o CC hw/net/e1000.o CC hw/net/e1000x_common.o CC hw/net/net_tx_pkt.o CC hw/net/net_rx_pkt.o CC hw/net/e1000e.o CC hw/net/e1000e_core.o CC hw/net/rtl8139.o CC hw/net/vmxnet3.o CC hw/net/smc91c111.o CC hw/net/lan9118.o CC hw/net/ne2000-isa.o CC hw/net/xgmac.o CC hw/net/allwinner_emac.o CC hw/net/imx_fec.o CC hw/net/cadence_gem.o CC hw/net/stellaris_enet.o CC hw/net/ftgmac100.o CC hw/net/rocker/rocker.o CC hw/net/rocker/rocker_fp.o CC hw/net/rocker/rocker_desc.o CC hw/net/rocker/rocker_world.o CC hw/net/rocker/rocker_of_dpa.o CC hw/nvram/eeprom93xx.o CC hw/nvram/fw_cfg.o CC hw/nvram/chrp_nvram.o CC hw/pci-bridge/pcie_pci_bridge.o CC hw/pci-bridge/pci_bridge_dev.o CC hw/pci-bridge/pcie_root_port.o CC hw/pci-bridge/gen_pcie_root_port.o CC hw/pci-bridge/pci_expander_bridge.o CC hw/pci-bridge/xio3130_upstream.o CC hw/pci-bridge/xio3130_downstream.o CC hw/pci-bridge/ioh3420.o CC hw/pci-bridge/i82801b11.o CC hw/pci-host/pam.o CC hw/pci-host/versatile.o CC hw/pci-host/piix.o CC hw/pci-host/q35.o CC hw/pci-host/gpex.o CC hw/pci/pci.o CC hw/pci/pci_bridge.o CC hw/pci/msix.o CC hw/pci/msi.o CC hw/pci/shpc.o CC hw/pci/slotid_cap.o CC hw/pci/pci_host.o CC hw/pci/pcie_host.o CC hw/pci/pcie.o CC hw/pci/pcie_aer.o CC hw/pci/pcie_port.o CC hw/pci/pci-stub.o CC hw/pcmcia/pcmcia.o CC hw/scsi/scsi-disk.o CC hw/scsi/scsi-bus.o CC hw/scsi/scsi-generic.o CC hw/scsi/lsi53c895a.o CC hw/scsi/mptsas.o CC hw/scsi/mptconfig.o CC hw/scsi/mptendian.o CC hw/scsi/megasas.o CC hw/scsi/vmw_pvscsi.o CC hw/scsi/esp.o CC hw/scsi/esp-pci.o CC hw/sd/ssi-sd.o CC hw/sd/pl181.o CC hw/sd/sd.o CC hw/sd/core.o CC hw/sd/sdhci.o CC hw/smbios/smbios.o CC hw/smbios/smbios_type_38.o CC hw/smbios/smbios-stub.o CC hw/smbios/smbios_type_38-stub.o CC hw/ssi/pl022.o CC hw/ssi/ssi.o CC hw/ssi/xilinx_spips.o CC hw/ssi/aspeed_smc.o CC hw/ssi/stm32f2xx_spi.o CC hw/ssi/mss-spi.o CC hw/timer/arm_timer.o CC hw/timer/arm_mptimer.o CC hw/timer/armv7m_systick.o CC hw/timer/a9gtimer.o CC hw/timer/cadence_ttc.o CC hw/timer/ds1338.o CC hw/timer/hpet.o CC hw/timer/i8254_common.o CC hw/timer/i8254.o CC hw/timer/pl031.o CC hw/timer/twl92230.o CC hw/timer/imx_epit.o CC hw/timer/imx_gpt.o CC hw/timer/stm32f2xx_timer.o CC hw/timer/cmsdk-apb-timer.o CC hw/timer/aspeed_timer.o CC hw/timer/mss-timer.o CC hw/tpm/tpm_tis.o CC hw/tpm/tpm_passthrough.o CC hw/tpm/tpm_util.o CC hw/tpm/tpm_emulator.o CC hw/usb/core.o CC hw/usb/combined-packet.o CC hw/usb/bus.o CC hw/usb/libhw.o CC hw/usb/desc.o CC hw/usb/desc-msos.o CC hw/usb/hcd-uhci.o CC hw/usb/hcd-ohci.o CC hw/usb/hcd-ehci.o CC hw/usb/hcd-ehci-pci.o CC hw/usb/hcd-ehci-sysbus.o CC hw/usb/hcd-xhci.o CC hw/usb/hcd-xhci-nec.o CC hw/usb/hcd-musb.o CC hw/usb/dev-hub.o CC hw/usb/dev-hid.o CC hw/usb/dev-wacom.o CC hw/usb/dev-storage.o CC hw/usb/dev-uas.o CC hw/usb/dev-audio.o CC hw/usb/dev-serial.o CC hw/usb/dev-network.o CC hw/usb/dev-bluetooth.o CC hw/usb/dev-smartcard-reader.o CC hw/usb/ccid-card-passthru.o CC hw/usb/ccid-card-emulated.o CC hw/usb/dev-mtp.o CC hw/usb/host-stub.o CC hw/virtio/virtio-rng.o CC hw/virtio/virtio-pci.o CC hw/virtio/virtio-bus.o CC hw/virtio/virtio-mmio.o CC hw/virtio/vhost-stub.o CC hw/watchdog/watchdog.o CC hw/watchdog/wdt_i6300esb.o CC hw/watchdog/wdt_ib700.o CC hw/watchdog/wdt_aspeed.o CC hw/xen/xen_backend.o CC hw/xen/xen_devconfig.o CC hw/xen/xen_pvdev.o CC hw/xen/xen-common.o CC migration/migration.o CC migration/socket.o CC migration/fd.o CC migration/exec.o CC migration/tls.o CC migration/channel.o CC migration/colo-comm.o CC migration/savevm.o CC migration/colo.o CC migration/colo-failover.o CC migration/vmstate.o CC migration/vmstate-types.o CC migration/page_cache.o CC migration/qemu-file.o CC migration/global_state.o CC migration/qemu-file-channel.o CC migration/xbzrle.o CC migration/postcopy-ram.o CC migration/qjson.o CC migration/rdma.o CC migration/block.o CC net/net.o CC net/queue.o CC net/checksum.o CC net/util.o CC net/hub.o CC net/socket.o CC net/dump.o CC net/eth.o CC net/l2tpv3.o CC net/vhost-user.o CC net/slirp.o CC net/filter-buffer.o CC net/filter.o CC net/filter-mirror.o CC net/colo-compare.o CC net/colo.o CC net/filter-rewriter.o CC net/filter-replay.o CC net/tap.o CC net/tap-linux.o CC qom/cpu.o CC replay/replay.o CC replay/replay-internal.o CC replay/replay-events.o CC replay/replay-input.o CC replay/replay-time.o CC replay/replay-char.o CC replay/replay-snapshot.o CC replay/replay-net.o CC replay/replay-audio.o CC slirp/cksum.o CC slirp/if.o CC slirp/ip_icmp.o CC slirp/ip6_icmp.o CC slirp/ip6_input.o CC slirp/ip6_output.o CC slirp/ip_input.o /tmp/qemu-test/src/replay/replay-internal.c: In function 'replay_put_array': /tmp/qemu-test/src/replay/replay-internal.c:65: warning: ignoring return value of 'fwrite', declared with attribute warn_unused_result CC slirp/ip_output.o CC slirp/dnssearch.o CC slirp/dhcpv6.o CC slirp/slirp.o CC slirp/mbuf.o CC slirp/sbuf.o CC slirp/misc.o CC slirp/socket.o CC slirp/tcp_input.o CC slirp/tcp_output.o CC slirp/tcp_subr.o CC slirp/tcp_timer.o CC slirp/udp.o CC slirp/udp6.o CC slirp/bootp.o CC slirp/tftp.o CC slirp/arp_table.o CC slirp/ndp_table.o CC slirp/ncsi.o CC ui/keymaps.o CC ui/console.o CC ui/cursor.o CC ui/qemu-pixman.o CC ui/input.o CC ui/input-keymap.o CC ui/input-legacy.o /tmp/qemu-test/src/slirp/tcp_input.c: In function 'tcp_input': /tmp/qemu-test/src/slirp/tcp_input.c:219: warning: 'save_ip.ip_p' may be used uninitialized in this function /tmp/qemu-test/src/slirp/tcp_input.c:219: warning: 'save_ip.ip_len' may be used uninitialized in this function /tmp/qemu-test/src/slirp/tcp_input.c:219: warning: 'save_ip.ip_tos' may be used uninitialized in this function /tmp/qemu-test/src/slirp/tcp_input.c:219: warning: 'save_ip.ip_id' may be used uninitialized in this function /tmp/qemu-test/src/slirp/tcp_input.c:219: warning: 'save_ip.ip_off' may be used uninitialized in this function /tmp/qemu-test/src/slirp/tcp_input.c:219: warning: 'save_ip.ip_ttl' may be used uninitialized in this function /tmp/qemu-test/src/slirp/tcp_input.c:219: warning: 'save_ip.ip_sum' may be used uninitialized in this function /tmp/qemu-test/src/slirp/tcp_input.c:219: warning: 'save_ip.ip_src.s_addr' may be used uninitialized in this function /tmp/qemu-test/src/slirp/tcp_input.c:219: warning: 'save_ip.ip_dst.s_addr' may be used uninitialized in this function /tmp/qemu-test/src/slirp/tcp_input.c:220: warning: 'save_ip6.ip_nh' may be used uninitialized in this function CC ui/input-linux.o CC ui/spice-core.o CC ui/spice-input.o CC ui/spice-display.o CC ui/sdl.o CC ui/sdl_zoom.o CC ui/x_keymap.o CC ui/curses.o CC ui/vnc.o CC ui/vnc-enc-zlib.o CC ui/vnc-enc-hextile.o CC ui/vnc-enc-tight.o CC ui/vnc-palette.o CC ui/vnc-enc-zrle.o CC ui/vnc-auth-vencrypt.o CC ui/vnc-ws.o CC ui/vnc-jobs.o CC ui/gtk.o VERT ui/shader/texture-blit-vert.h FRAG ui/shader/texture-blit-frag.h VERT ui/shader/texture-blit-flip-vert.h CC ui/console-gl.o CC ui/egl-helpers.o CC ui/egl-context.o CC ui/gtk-egl.o CC chardev/char.o CC chardev/char-fd.o CC chardev/char-fe.o CC chardev/char-file.o CC chardev/char-io.o CC chardev/char-mux.o CC chardev/char-null.o CC chardev/char-parallel.o CC chardev/char-pipe.o CC chardev/char-pty.o CC chardev/char-ringbuf.o CC chardev/char-serial.o CC chardev/char-socket.o CC chardev/char-stdio.o CC chardev/char-udp.o LINK tests/qemu-iotests/socket_scm_helper CC qga/commands.o CC qga/guest-agent-command-state.o CC qga/main.o CC qga/commands-posix.o CC qga/channel-posix.o CC qga/qapi-generated/qga-qapi-types.o CC qga/qapi-generated/qga-qapi-visit.o CC qga/qapi-generated/qga-qmp-marshal.o AR libqemuutil.a CC qemu-img.o CC ui/shader.o AS optionrom/multiboot.o CC optionrom/linuxboot_dma.o AS optionrom/linuxboot.o AS optionrom/kvmvapic.o cc: unrecognized option '-no-integrated-as' cc: unrecognized option '-no-integrated-as' BUILD optionrom/linuxboot_dma.img BUILD optionrom/multiboot.img BUILD optionrom/linuxboot.img BUILD optionrom/linuxboot_dma.raw BUILD optionrom/multiboot.raw BUILD optionrom/linuxboot.raw BUILD optionrom/kvmvapic.img BUILD optionrom/kvmvapic.raw SIGN optionrom/linuxboot.bin SIGN optionrom/kvmvapic.bin SIGN optionrom/multiboot.bin SIGN optionrom/linuxboot_dma.bin LINK qemu-ga LINK ivshmem-client LINK ivshmem-server LINK qemu-nbd LINK qemu-img LINK qemu-io LINK scsi/qemu-pr-helper LINK qemu-bridge-helper In file included from /usr/include/gtk-2.0/gtk/gtk.h:235, from /tmp/qemu-test/src/include/ui/gtk.h:10, from /tmp/qemu-test/src/ui/gtk-egl.c:21: /usr/include/gtk-2.0/gtk/gtkitemfactory.h:47: warning: function declaration isn't a prototype In file included from /usr/include/gtk-2.0/gtk/gtk.h:235, from /tmp/qemu-test/src/include/ui/gtk.h:10, from /tmp/qemu-test/src/ui/gtk.c:43: /usr/include/gtk-2.0/gtk/gtkitemfactory.h:47: warning: function declaration isn't a prototype GEN x86_64-softmmu/hmp-commands.h GEN x86_64-softmmu/hmp-commands-info.h GEN x86_64-softmmu/config-target.h GEN aarch64-softmmu/hmp-commands.h GEN aarch64-softmmu/hmp-commands-info.h GEN aarch64-softmmu/config-target.h CC x86_64-softmmu/tcg/tcg-op.o CC x86_64-softmmu/tcg/tcg.o CC x86_64-softmmu/exec.o CC x86_64-softmmu/tcg/optimize.o CC x86_64-softmmu/tcg/tcg-common.o CC x86_64-softmmu/disas.o CC x86_64-softmmu/fpu/softfloat.o CC aarch64-softmmu/exec.o GEN x86_64-softmmu/gdbstub-xml.c CC x86_64-softmmu/arch_init.o CC x86_64-softmmu/cpus.o CC x86_64-softmmu/monitor.o CC x86_64-softmmu/gdbstub.o CC x86_64-softmmu/balloon.o CC x86_64-softmmu/ioport.o CC x86_64-softmmu/numa.o CC x86_64-softmmu/qtest.o CC x86_64-softmmu/memory.o CC x86_64-softmmu/memory_mapping.o CC x86_64-softmmu/dump.o CC aarch64-softmmu/tcg/tcg.o CC x86_64-softmmu/migration/ram.o CC x86_64-softmmu/accel/accel.o CC x86_64-softmmu/accel/kvm/kvm-all.o CC x86_64-softmmu/accel/stubs/hax-stub.o CC aarch64-softmmu/tcg/tcg-op.o CC aarch64-softmmu/tcg/optimize.o CC aarch64-softmmu/tcg/tcg-common.o CC aarch64-softmmu/fpu/softfloat.o CC x86_64-softmmu/accel/tcg/tcg-all.o CC x86_64-softmmu/accel/tcg/cputlb.o CC aarch64-softmmu/disas.o CC x86_64-softmmu/accel/tcg/tcg-runtime.o GEN aarch64-softmmu/gdbstub-xml.c CC x86_64-softmmu/accel/tcg/cpu-exec.o CC aarch64-softmmu/arch_init.o CC aarch64-softmmu/cpus.o CC x86_64-softmmu/accel/tcg/cpu-exec-common.o CC aarch64-softmmu/monitor.o CC x86_64-softmmu/accel/tcg/translate-all.o CC aarch64-softmmu/gdbstub.o CC aarch64-softmmu/balloon.o CC x86_64-softmmu/accel/tcg/translator.o CC x86_64-softmmu/hw/block/virtio-blk.o CC x86_64-softmmu/hw/block/dataplane/virtio-blk.o CC aarch64-softmmu/ioport.o CC x86_64-softmmu/hw/char/virtio-serial-bus.o CC aarch64-softmmu/numa.o CC aarch64-softmmu/qtest.o CC x86_64-softmmu/hw/core/generic-loader.o CC aarch64-softmmu/memory.o CC x86_64-softmmu/hw/core/null-machine.o CC aarch64-softmmu/memory_mapping.o CC aarch64-softmmu/dump.o CC x86_64-softmmu/hw/display/vga.o CC aarch64-softmmu/migration/ram.o CC x86_64-softmmu/hw/display/virtio-gpu.o CC aarch64-softmmu/accel/accel.o CC aarch64-softmmu/accel/stubs/hax-stub.o CC aarch64-softmmu/accel/tcg/tcg-all.o CC aarch64-softmmu/accel/stubs/kvm-stub.o CC x86_64-softmmu/hw/display/virtio-gpu-3d.o CC aarch64-softmmu/accel/tcg/cputlb.o CC aarch64-softmmu/accel/tcg/tcg-runtime.o CC aarch64-softmmu/accel/tcg/cpu-exec.o CC aarch64-softmmu/accel/tcg/cpu-exec-common.o CC aarch64-softmmu/accel/tcg/translate-all.o CC aarch64-softmmu/accel/tcg/translator.o CC aarch64-softmmu/hw/adc/stm32f2xx_adc.o CC aarch64-softmmu/hw/block/virtio-blk.o CC x86_64-softmmu/hw/display/virtio-gpu-pci.o CC aarch64-softmmu/hw/block/dataplane/virtio-blk.o CC x86_64-softmmu/hw/display/virtio-vga.o CC aarch64-softmmu/hw/char/exynos4210_uart.o CC aarch64-softmmu/hw/char/omap_uart.o CC aarch64-softmmu/hw/char/digic-uart.o CC aarch64-softmmu/hw/char/stm32f2xx_usart.o CC x86_64-softmmu/hw/intc/apic.o CC aarch64-softmmu/hw/char/bcm2835_aux.o CC aarch64-softmmu/hw/char/virtio-serial-bus.o CC aarch64-softmmu/hw/core/generic-loader.o CC aarch64-softmmu/hw/core/null-machine.o CC x86_64-softmmu/hw/intc/apic_common.o CC aarch64-softmmu/hw/cpu/arm11mpcore.o CC aarch64-softmmu/hw/cpu/realview_mpcore.o CC aarch64-softmmu/hw/cpu/a9mpcore.o CC aarch64-softmmu/hw/cpu/a15mpcore.o CC x86_64-softmmu/hw/intc/ioapic.o CC aarch64-softmmu/hw/display/omap_dss.o CC aarch64-softmmu/hw/display/omap_lcdc.o CC x86_64-softmmu/hw/isa/lpc_ich9.o CC aarch64-softmmu/hw/display/pxa2xx_lcd.o CC aarch64-softmmu/hw/display/bcm2835_fb.o CC x86_64-softmmu/hw/misc/vmport.o CC aarch64-softmmu/hw/display/vga.o CC aarch64-softmmu/hw/display/virtio-gpu.o CC x86_64-softmmu/hw/misc/ivshmem.o CC aarch64-softmmu/hw/display/virtio-gpu-3d.o CC aarch64-softmmu/hw/display/virtio-gpu-pci.o CC x86_64-softmmu/hw/misc/pvpanic.o CC aarch64-softmmu/hw/display/dpcd.o CC aarch64-softmmu/hw/display/xlnx_dp.o CC aarch64-softmmu/hw/dma/xlnx_dpdma.o CC x86_64-softmmu/hw/misc/hyperv_testdev.o CC aarch64-softmmu/hw/dma/omap_dma.o CC aarch64-softmmu/hw/dma/soc_dma.o CC x86_64-softmmu/hw/misc/mmio_interface.o CC x86_64-softmmu/hw/net/virtio-net.o CC aarch64-softmmu/hw/dma/pxa2xx_dma.o CC aarch64-softmmu/hw/dma/bcm2835_dma.o CC aarch64-softmmu/hw/gpio/omap_gpio.o CC aarch64-softmmu/hw/gpio/imx_gpio.o CC x86_64-softmmu/hw/net/vhost_net.o CC aarch64-softmmu/hw/gpio/bcm2835_gpio.o CC x86_64-softmmu/hw/scsi/virtio-scsi.o CC aarch64-softmmu/hw/i2c/omap_i2c.o CC aarch64-softmmu/hw/input/pxa2xx_keypad.o CC x86_64-softmmu/hw/scsi/virtio-scsi-dataplane.o CC aarch64-softmmu/hw/input/tsc210x.o CC aarch64-softmmu/hw/intc/armv7m_nvic.o CC x86_64-softmmu/hw/scsi/vhost-scsi-common.o CC aarch64-softmmu/hw/intc/exynos4210_gic.o CC x86_64-softmmu/hw/scsi/vhost-scsi.o CC x86_64-softmmu/hw/scsi/vhost-user-scsi.o CC aarch64-softmmu/hw/intc/exynos4210_combiner.o CC x86_64-softmmu/hw/timer/mc146818rtc.o CC aarch64-softmmu/hw/intc/omap_intc.o CC aarch64-softmmu/hw/intc/bcm2835_ic.o CC aarch64-softmmu/hw/intc/bcm2836_control.o CC x86_64-softmmu/hw/vfio/common.o CC aarch64-softmmu/hw/intc/allwinner-a10-pic.o CC aarch64-softmmu/hw/intc/aspeed_vic.o CC aarch64-softmmu/hw/intc/arm_gicv3_cpuif.o CC aarch64-softmmu/hw/misc/ivshmem.o CC aarch64-softmmu/hw/misc/arm_sysctl.o CC aarch64-softmmu/hw/misc/cbus.o CC aarch64-softmmu/hw/misc/exynos4210_pmu.o CC aarch64-softmmu/hw/misc/exynos4210_clk.o CC x86_64-softmmu/hw/vfio/pci.o CC aarch64-softmmu/hw/misc/exynos4210_rng.o CC aarch64-softmmu/hw/misc/imx_ccm.o CC x86_64-softmmu/hw/vfio/pci-quirks.o CC aarch64-softmmu/hw/misc/imx31_ccm.o CC aarch64-softmmu/hw/misc/imx25_ccm.o CC aarch64-softmmu/hw/misc/imx6_ccm.o CC x86_64-softmmu/hw/vfio/platform.o CC aarch64-softmmu/hw/misc/imx6_src.o CC x86_64-softmmu/hw/vfio/spapr.o CC aarch64-softmmu/hw/misc/mst_fpga.o CC x86_64-softmmu/hw/virtio/virtio.o CC aarch64-softmmu/hw/misc/omap_clk.o CC x86_64-softmmu/hw/virtio/virtio-balloon.o CC aarch64-softmmu/hw/misc/omap_gpmc.o CC x86_64-softmmu/hw/virtio/vhost.o CC aarch64-softmmu/hw/misc/omap_l4.o CC aarch64-softmmu/hw/misc/omap_sdrc.o CC x86_64-softmmu/hw/virtio/vhost-backend.o CC x86_64-softmmu/hw/virtio/vhost-user.o CC x86_64-softmmu/hw/virtio/vhost-vsock.o CC x86_64-softmmu/hw/virtio/virtio-crypto.o CC aarch64-softmmu/hw/misc/omap_tap.o CC x86_64-softmmu/hw/virtio/virtio-crypto-pci.o CC aarch64-softmmu/hw/misc/bcm2835_mbox.o CC aarch64-softmmu/hw/misc/bcm2835_property.o CC aarch64-softmmu/hw/misc/bcm2835_rng.o CC aarch64-softmmu/hw/misc/zynq_slcr.o CC aarch64-softmmu/hw/misc/zynq-xadc.o CC aarch64-softmmu/hw/misc/stm32f2xx_syscfg.o CC x86_64-softmmu/hw/xen/xen-host-pci-device.o CC x86_64-softmmu/hw/xen/xen_pt.o CC x86_64-softmmu/hw/xen/xen_pt_config_init.o CC aarch64-softmmu/hw/misc/mps2-scc.o CC x86_64-softmmu/hw/xen/xen_pt_graphics.o CC aarch64-softmmu/hw/misc/auxbus.o CC aarch64-softmmu/hw/misc/aspeed_scu.o CC x86_64-softmmu/hw/xen/xen_pt_msi.o CC aarch64-softmmu/hw/misc/aspeed_sdmc.o CC x86_64-softmmu/hw/i386/multiboot.o CC aarch64-softmmu/hw/misc/mmio_interface.o CC x86_64-softmmu/hw/i386/pc.o CC x86_64-softmmu/hw/i386/pc_piix.o CC x86_64-softmmu/hw/i386/pc_q35.o CC aarch64-softmmu/hw/misc/msf2-sysreg.o CC x86_64-softmmu/hw/i386/pc_sysfw.o CC aarch64-softmmu/hw/net/virtio-net.o CC aarch64-softmmu/hw/net/vhost_net.o CC x86_64-softmmu/hw/i386/x86-iommu.o CC x86_64-softmmu/hw/i386/intel_iommu.o CC x86_64-softmmu/hw/i386/amd_iommu.o /tmp/qemu-test/src/hw/i386/pc_piix.c: In function 'igd_passthrough_isa_bridge_create': /tmp/qemu-test/src/hw/i386/pc_piix.c:1072: warning: 'pch_rev_id' may be used uninitialized in this function CC x86_64-softmmu/hw/i386/kvmvapic.o CC x86_64-softmmu/hw/i386/acpi-build.o CC x86_64-softmmu/hw/i386/pci-assign-load-rom.o CC aarch64-softmmu/hw/pcmcia/pxa2xx.o CC aarch64-softmmu/hw/scsi/virtio-scsi.o CC aarch64-softmmu/hw/scsi/virtio-scsi-dataplane.o CC aarch64-softmmu/hw/scsi/vhost-scsi-common.o CC x86_64-softmmu/hw/i386/../xenpv/xen_machine_pv.o CC x86_64-softmmu/hw/i386/kvm/clock.o /tmp/qemu-test/src/hw/i386/acpi-build.c: In function 'build_append_pci_bus_devices': /tmp/qemu-test/src/hw/i386/acpi-build.c:509: warning: 'notify_method' may be used uninitialized in this function CC aarch64-softmmu/hw/scsi/vhost-scsi.o CC x86_64-softmmu/hw/i386/kvm/apic.o CC aarch64-softmmu/hw/sd/omap_mmc.o CC aarch64-softmmu/hw/scsi/vhost-user-scsi.o CC x86_64-softmmu/hw/i386/kvm/i8259.o CC x86_64-softmmu/hw/i386/kvm/ioapic.o CC x86_64-softmmu/hw/i386/kvm/i8254.o CC aarch64-softmmu/hw/sd/pxa2xx_mmci.o CC aarch64-softmmu/hw/sd/bcm2835_sdhost.o CC x86_64-softmmu/hw/i386/kvm/pci-assign.o CC aarch64-softmmu/hw/ssi/omap_spi.o CC x86_64-softmmu/hw/i386/xen/xen_platform.o CC aarch64-softmmu/hw/ssi/imx_spi.o CC x86_64-softmmu/hw/i386/xen/xen_apic.o CC aarch64-softmmu/hw/timer/exynos4210_mct.o CC aarch64-softmmu/hw/timer/exynos4210_pwm.o CC x86_64-softmmu/hw/i386/xen/xen_pvdevice.o CC aarch64-softmmu/hw/timer/exynos4210_rtc.o CC x86_64-softmmu/hw/i386/xen/xen-hvm.o CC aarch64-softmmu/hw/timer/omap_gptimer.o CC x86_64-softmmu/hw/i386/xen/xen-mapcache.o CC x86_64-softmmu/target/i386/helper.o CC x86_64-softmmu/target/i386/cpu.o CC x86_64-softmmu/target/i386/gdbstub.o CC x86_64-softmmu/target/i386/xsave_helper.o CC aarch64-softmmu/hw/timer/omap_synctimer.o CC aarch64-softmmu/hw/timer/pxa2xx_timer.o CC aarch64-softmmu/hw/timer/digic-timer.o CC x86_64-softmmu/target/i386/translate.o CC x86_64-softmmu/target/i386/bpt_helper.o CC aarch64-softmmu/hw/timer/allwinner-a10-pit.o CC x86_64-softmmu/target/i386/cc_helper.o CC aarch64-softmmu/hw/usb/tusb6010.o CC x86_64-softmmu/target/i386/excp_helper.o CC aarch64-softmmu/hw/vfio/common.o CC aarch64-softmmu/hw/vfio/pci.o CC x86_64-softmmu/target/i386/fpu_helper.o CC aarch64-softmmu/hw/vfio/pci-quirks.o CC aarch64-softmmu/hw/vfio/platform.o CC x86_64-softmmu/target/i386/int_helper.o CC x86_64-softmmu/target/i386/mem_helper.o CC aarch64-softmmu/hw/vfio/calxeda-xgmac.o CC x86_64-softmmu/target/i386/misc_helper.o CC aarch64-softmmu/hw/vfio/amd-xgbe.o CC x86_64-softmmu/target/i386/mpx_helper.o CC aarch64-softmmu/hw/vfio/spapr.o CC x86_64-softmmu/target/i386/seg_helper.o CC aarch64-softmmu/hw/virtio/virtio.o CC aarch64-softmmu/hw/virtio/virtio-balloon.o CC x86_64-softmmu/target/i386/smm_helper.o CC x86_64-softmmu/target/i386/svm_helper.o CC aarch64-softmmu/hw/virtio/vhost.o CC aarch64-softmmu/hw/virtio/vhost-backend.o CC aarch64-softmmu/hw/virtio/vhost-user.o CC aarch64-softmmu/hw/virtio/vhost-vsock.o CC x86_64-softmmu/target/i386/machine.o CC aarch64-softmmu/hw/virtio/virtio-crypto.o CC x86_64-softmmu/target/i386/arch_memory_mapping.o CC x86_64-softmmu/target/i386/arch_dump.o CC x86_64-softmmu/target/i386/monitor.o CC aarch64-softmmu/hw/virtio/virtio-crypto-pci.o CC aarch64-softmmu/hw/arm/boot.o CC aarch64-softmmu/hw/arm/collie.o CC x86_64-softmmu/target/i386/kvm.o CC aarch64-softmmu/hw/arm/exynos4_boards.o CC x86_64-softmmu/target/i386/hyperv.o CC aarch64-softmmu/hw/arm/gumstix.o CC aarch64-softmmu/hw/arm/highbank.o CC aarch64-softmmu/hw/arm/digic_boards.o CC aarch64-softmmu/hw/arm/integratorcp.o CC aarch64-softmmu/hw/arm/mainstone.o GEN trace/generated-helpers.c CC aarch64-softmmu/hw/arm/musicpal.o CC aarch64-softmmu/hw/arm/nseries.o CC aarch64-softmmu/hw/arm/omap_sx1.o CC aarch64-softmmu/hw/arm/palm.o CC aarch64-softmmu/hw/arm/realview.o CC aarch64-softmmu/hw/arm/spitz.o CC x86_64-softmmu/trace/control-target.o CC aarch64-softmmu/hw/arm/stellaris.o CC aarch64-softmmu/hw/arm/tosa.o CC aarch64-softmmu/hw/arm/versatilepb.o CC x86_64-softmmu/gdbstub-xml.o CC aarch64-softmmu/hw/arm/vexpress.o CC aarch64-softmmu/hw/arm/virt.o CC aarch64-softmmu/hw/arm/xilinx_zynq.o CC x86_64-softmmu/trace/generated-helpers.o CC aarch64-softmmu/hw/arm/z2.o CC aarch64-softmmu/hw/arm/virt-acpi-build.o CC aarch64-softmmu/hw/arm/netduino2.o CC aarch64-softmmu/hw/arm/sysbus-fdt.o CC aarch64-softmmu/hw/arm/armv7m.o CC aarch64-softmmu/hw/arm/exynos4210.o CC aarch64-softmmu/hw/arm/pxa2xx.o CC aarch64-softmmu/hw/arm/pxa2xx_gpio.o CC aarch64-softmmu/hw/arm/pxa2xx_pic.o CC aarch64-softmmu/hw/arm/digic.o CC aarch64-softmmu/hw/arm/omap2.o CC aarch64-softmmu/hw/arm/omap1.o CC aarch64-softmmu/hw/arm/allwinner-a10.o CC aarch64-softmmu/hw/arm/cubieboard.o CC aarch64-softmmu/hw/arm/strongarm.o LINK x86_64-softmmu/qemu-system-x86_64 CC aarch64-softmmu/hw/arm/bcm2835_peripherals.o CC aarch64-softmmu/hw/arm/bcm2836.o CC aarch64-softmmu/hw/arm/raspi.o CC aarch64-softmmu/hw/arm/stm32f205_soc.o CC aarch64-softmmu/hw/arm/xlnx-zynqmp.o CC aarch64-softmmu/hw/arm/xlnx-zcu102.o CC aarch64-softmmu/hw/arm/fsl-imx25.o CC aarch64-softmmu/hw/arm/imx25_pdk.o CC aarch64-softmmu/hw/arm/fsl-imx31.o CC aarch64-softmmu/hw/arm/kzm.o CC aarch64-softmmu/hw/arm/fsl-imx6.o CC aarch64-softmmu/hw/arm/sabrelite.o CC aarch64-softmmu/hw/arm/aspeed_soc.o CC aarch64-softmmu/hw/arm/aspeed.o CC aarch64-softmmu/hw/arm/mps2.o CC aarch64-softmmu/hw/arm/msf2-soc.o CC aarch64-softmmu/hw/arm/msf2-som.o CC aarch64-softmmu/target/arm/arm-semi.o CC aarch64-softmmu/target/arm/machine.o CC aarch64-softmmu/target/arm/psci.o CC aarch64-softmmu/target/arm/arch_dump.o CC aarch64-softmmu/target/arm/monitor.o CC aarch64-softmmu/target/arm/kvm-stub.o CC aarch64-softmmu/target/arm/translate.o CC aarch64-softmmu/target/arm/op_helper.o CC aarch64-softmmu/target/arm/helper.o CC aarch64-softmmu/target/arm/cpu.o CC aarch64-softmmu/target/arm/neon_helper.o CC aarch64-softmmu/target/arm/iwmmxt_helper.o CC aarch64-softmmu/target/arm/gdbstub.o CC aarch64-softmmu/target/arm/cpu64.o CC aarch64-softmmu/target/arm/translate-a64.o CC aarch64-softmmu/target/arm/helper-a64.o CC aarch64-softmmu/target/arm/gdbstub64.o CC aarch64-softmmu/target/arm/crypto_helper.o CC aarch64-softmmu/target/arm/arm-powerctl.o GEN trace/generated-helpers.c CC aarch64-softmmu/trace/control-target.o CC aarch64-softmmu/gdbstub-xml.o /tmp/qemu-test/src/target/arm/translate-a64.c: In function 'handle_shri_with_rndacc': /tmp/qemu-test/src/target/arm/translate-a64.c:6390: warning: 'tcg_src_hi' may be used uninitialized in this function /tmp/qemu-test/src/target/arm/translate-a64.c: In function 'disas_simd_scalar_two_reg_misc': /tmp/qemu-test/src/target/arm/translate-a64.c:8117: warning: 'rmode' may be used uninitialized in this function CC aarch64-softmmu/trace/generated-helpers.o LINK aarch64-softmmu/qemu-system-aarch64 mkdir -p dtc/libfdt mkdir -p dtc/tests TEST tests/qapi-schema/alternate-any.out TEST tests/qapi-schema/alternate-clash.out TEST tests/qapi-schema/alternate-array.out TEST tests/qapi-schema/alternate-conflict-dict.out TEST tests/qapi-schema/alternate-conflict-enum-bool.out TEST tests/qapi-schema/alternate-base.out TEST tests/qapi-schema/alternate-conflict-enum-int.out TEST tests/qapi-schema/alternate-conflict-string.out TEST tests/qapi-schema/alternate-conflict-bool-string.out TEST tests/qapi-schema/alternate-conflict-num-string.out TEST tests/qapi-schema/alternate-empty.out TEST tests/qapi-schema/alternate-nested.out TEST tests/qapi-schema/alternate-unknown.out TEST tests/qapi-schema/args-alternate.out TEST tests/qapi-schema/args-any.out TEST tests/qapi-schema/args-array-empty.out TEST tests/qapi-schema/args-array-unknown.out TEST tests/qapi-schema/args-bad-boxed.out TEST tests/qapi-schema/args-boxed-anon.out TEST tests/qapi-schema/args-boxed-empty.out TEST tests/qapi-schema/args-boxed-string.out TEST tests/qapi-schema/args-int.out TEST tests/qapi-schema/args-invalid.out TEST tests/qapi-schema/args-member-array-bad.out TEST tests/qapi-schema/args-member-case.out TEST tests/qapi-schema/args-member-unknown.out TEST tests/qapi-schema/args-name-clash.out TEST tests/qapi-schema/args-union.out TEST tests/qapi-schema/args-unknown.out TEST tests/qapi-schema/bad-base.out TEST tests/qapi-schema/bad-data.out TEST tests/qapi-schema/bad-ident.out TEST tests/qapi-schema/bad-type-bool.out TEST tests/qapi-schema/bad-type-dict.out TEST tests/qapi-schema/bad-type-int.out TEST tests/qapi-schema/base-cycle-direct.out TEST tests/qapi-schema/base-cycle-indirect.out TEST tests/qapi-schema/command-int.out TEST tests/qapi-schema/doc-bad-alternate-member.out TEST tests/qapi-schema/doc-bad-command-arg.out TEST tests/qapi-schema/comments.out TEST tests/qapi-schema/doc-bad-symbol.out TEST tests/qapi-schema/doc-bad-union-member.out TEST tests/qapi-schema/doc-before-include.out TEST tests/qapi-schema/doc-before-pragma.out TEST tests/qapi-schema/doc-duplicated-arg.out TEST tests/qapi-schema/doc-duplicated-return.out TEST tests/qapi-schema/doc-duplicated-since.out TEST tests/qapi-schema/doc-empty-section.out TEST tests/qapi-schema/doc-empty-arg.out TEST tests/qapi-schema/doc-empty-symbol.out TEST tests/qapi-schema/doc-good.out TEST tests/qapi-schema/doc-interleaved-section.out TEST tests/qapi-schema/doc-invalid-end.out TEST tests/qapi-schema/doc-invalid-end2.out TEST tests/qapi-schema/doc-invalid-return.out TEST tests/qapi-schema/doc-invalid-section.out TEST tests/qapi-schema/doc-invalid-start.out TEST tests/qapi-schema/doc-missing.out TEST tests/qapi-schema/doc-missing-colon.out TEST tests/qapi-schema/doc-missing-expr.out TEST tests/qapi-schema/doc-missing-space.out TEST tests/qapi-schema/doc-no-symbol.out TEST tests/qapi-schema/double-data.out TEST tests/qapi-schema/double-type.out TEST tests/qapi-schema/duplicate-key.out TEST tests/qapi-schema/empty.out TEST tests/qapi-schema/enum-bad-name.out TEST tests/qapi-schema/enum-bad-prefix.out TEST tests/qapi-schema/enum-clash-member.out TEST tests/qapi-schema/enum-dict-member.out TEST tests/qapi-schema/enum-int-member.out TEST tests/qapi-schema/enum-member-case.out TEST tests/qapi-schema/enum-missing-data.out TEST tests/qapi-schema/enum-wrong-data.out TEST tests/qapi-schema/escape-outside-string.out TEST tests/qapi-schema/escape-too-big.out TEST tests/qapi-schema/escape-too-short.out TEST tests/qapi-schema/event-boxed-empty.out TEST tests/qapi-schema/event-case.out TEST tests/qapi-schema/event-nest-struct.out TEST tests/qapi-schema/flat-union-array-branch.out TEST tests/qapi-schema/flat-union-bad-base.out TEST tests/qapi-schema/flat-union-bad-discriminator.out TEST tests/qapi-schema/flat-union-base-any.out TEST tests/qapi-schema/flat-union-base-union.out TEST tests/qapi-schema/flat-union-clash-member.out TEST tests/qapi-schema/flat-union-empty.out TEST tests/qapi-schema/flat-union-incomplete-branch.out TEST tests/qapi-schema/flat-union-inline.out TEST tests/qapi-schema/flat-union-int-branch.out TEST tests/qapi-schema/flat-union-invalid-branch-key.out TEST tests/qapi-schema/flat-union-invalid-discriminator.out TEST tests/qapi-schema/flat-union-no-base.out TEST tests/qapi-schema/flat-union-optional-discriminator.out TEST tests/qapi-schema/flat-union-string-discriminator.out TEST tests/qapi-schema/funny-char.out TEST tests/qapi-schema/ident-with-escape.out TEST tests/qapi-schema/include-cycle.out TEST tests/qapi-schema/include-before-err.out TEST tests/qapi-schema/include-extra-junk.out TEST tests/qapi-schema/include-format-err.out TEST tests/qapi-schema/include-nested-err.out TEST tests/qapi-schema/include-no-file.out TEST tests/qapi-schema/include-non-file.out TEST tests/qapi-schema/include-relpath.out TEST tests/qapi-schema/include-repetition.out TEST tests/qapi-schema/include-self-cycle.out TEST tests/qapi-schema/include-simple.out TEST tests/qapi-schema/indented-expr.out TEST tests/qapi-schema/leading-comma-object.out TEST tests/qapi-schema/leading-comma-list.out TEST tests/qapi-schema/missing-colon.out TEST tests/qapi-schema/missing-comma-list.out TEST tests/qapi-schema/missing-comma-object.out TEST tests/qapi-schema/missing-type.out TEST tests/qapi-schema/nested-struct-data.out TEST tests/qapi-schema/non-objects.out TEST tests/qapi-schema/pragma-doc-required-crap.out TEST tests/qapi-schema/pragma-extra-junk.out TEST tests/qapi-schema/pragma-name-case-whitelist-crap.out TEST tests/qapi-schema/pragma-non-dict.out TEST tests/qapi-schema/pragma-returns-whitelist-crap.out TEST tests/qapi-schema/qapi-schema-test.out TEST tests/qapi-schema/quoted-structural-chars.out TEST tests/qapi-schema/redefined-builtin.out TEST tests/qapi-schema/redefined-command.out TEST tests/qapi-schema/redefined-event.out TEST tests/qapi-schema/redefined-type.out TEST tests/qapi-schema/reserved-command-q.out TEST tests/qapi-schema/reserved-enum-q.out TEST tests/qapi-schema/reserved-member-has.out TEST tests/qapi-schema/reserved-member-q.out TEST tests/qapi-schema/reserved-member-u.out TEST tests/qapi-schema/reserved-member-underscore.out TEST tests/qapi-schema/reserved-type-kind.out TEST tests/qapi-schema/reserved-type-list.out TEST tests/qapi-schema/returns-alternate.out TEST tests/qapi-schema/returns-array-bad.out TEST tests/qapi-schema/returns-dict.out TEST tests/qapi-schema/returns-unknown.out TEST tests/qapi-schema/returns-whitelist.out TEST tests/qapi-schema/struct-base-clash-deep.out TEST tests/qapi-schema/struct-base-clash.out TEST tests/qapi-schema/struct-data-invalid.out TEST tests/qapi-schema/struct-member-invalid.out TEST tests/qapi-schema/trailing-comma-list.out TEST tests/qapi-schema/trailing-comma-object.out TEST tests/qapi-schema/type-bypass-bad-gen.out TEST tests/qapi-schema/unclosed-list.out TEST tests/qapi-schema/unclosed-object.out TEST tests/qapi-schema/unclosed-string.out TEST tests/qapi-schema/unicode-str.out TEST tests/qapi-schema/union-base-empty.out TEST tests/qapi-schema/union-base-no-discriminator.out TEST tests/qapi-schema/union-branch-case.out TEST tests/qapi-schema/union-clash-branches.out TEST tests/qapi-schema/union-empty.out TEST tests/qapi-schema/union-invalid-base.out TEST tests/qapi-schema/union-optional-branch.out TEST tests/qapi-schema/union-unknown.out TEST tests/qapi-schema/unknown-escape.out TEST tests/qapi-schema/unknown-expr-key.out GEN tests/qapi-schema/doc-good.test.texi CC tests/check-qdict.o CC tests/test-char.o CC tests/check-qstring.o CC tests/check-qnum.o CC tests/check-qlist.o CC tests/check-qjson.o CC tests/check-qnull.o CC tests/check-qlit.o CC tests/test-qobject-output-visitor.o GEN tests/test-qapi-visit.c GEN tests/test-qapi-types.c GEN tests/test-qapi-event.c GEN tests/test-qmp-introspect.c CC tests/test-clone-visitor.o CC tests/test-qobject-input-visitor.o CC tests/test-qmp-commands.o GEN tests/test-qmp-marshal.c CC tests/test-string-input-visitor.o CC tests/test-string-output-visitor.o CC tests/test-qmp-event.o CC tests/test-opts-visitor.o CC tests/test-coroutine.o CC tests/iothread.o CC tests/test-visitor-serialization.o CC tests/test-iov.o CC tests/test-aio.o CC tests/test-aio-multithread.o CC tests/test-throttle.o CC tests/test-thread-pool.o CC tests/test-hbitmap.o CC tests/test-blockjob.o CC tests/test-blockjob-txn.o CC tests/test-x86-cpuid.o CC tests/test-xbzrle.o CC tests/test-vmstate.o CC tests/test-cutils.o CC tests/test-shift128.o CC tests/test-mul64.o CC tests/test-int128.o CC tests/rcutorture.o CC tests/test-rcu-list.o CC tests/test-qdist.o CC tests/test-qht.o CC tests/test-qht-par.o /tmp/qemu-test/src/tests/test-int128.c:180: warning: '__noclone__' attribute directive ignored CC tests/qht-bench.o CC tests/test-bitops.o CC tests/check-qom-interface.o CC tests/test-bitcnt.o CC tests/check-qom-proplist.o CC tests/test-qemu-opts.o CC tests/test-keyval.o CC tests/test-write-threshold.o CC tests/test-crypto-hash.o CC tests/test-crypto-hmac.o CC tests/test-crypto-cipher.o CC tests/test-crypto-secret.o CC tests/test-qga.o CC tests/libqtest.o CC tests/test-timed-average.o CC tests/test-io-task.o CC tests/test-io-channel-socket.o CC tests/io-channel-helpers.o CC tests/test-io-channel-command.o CC tests/test-io-channel-file.o CC tests/test-io-channel-buffer.o CC tests/test-base64.o CC tests/test-crypto-ivgen.o CC tests/test-crypto-afsplit.o CC tests/test-crypto-xts.o CC tests/test-crypto-block.o CC tests/test-logging.o CC tests/test-replication.o CC tests/test-bufferiszero.o CC tests/test-uuid.o CC tests/ptimer-test.o CC tests/ptimer-test-stubs.o CC tests/test-qapi-util.o CC tests/vhost-user-test.o CC tests/libqos/pci.o CC tests/libqos/fw_cfg.o CC tests/libqos/malloc.o CC tests/libqos/i2c.o CC tests/libqos/libqos.o CC tests/libqos/malloc-spapr.o CC tests/libqos/libqos-spapr.o CC tests/libqos/rtas.o CC tests/libqos/pci-spapr.o CC tests/libqos/pci-pc.o CC tests/libqos/malloc-pc.o CC tests/libqos/libqos-pc.o CC tests/libqos/ahci.o CC tests/libqos/virtio.o CC tests/libqos/virtio-pci.o CC tests/libqos/virtio-mmio.o CC tests/libqos/malloc-generic.o CC tests/endianness-test.o CC tests/fdc-test.o CC tests/ide-test.o CC tests/ahci-test.o CC tests/hd-geo-test.o CC tests/boot-order-test.o CC tests/bios-tables-test.o CC tests/boot-sector.o CC tests/acpi-utils.o CC tests/boot-serial-test.o CC tests/pxe-test.o CC tests/rtc-test.o CC tests/ipmi-kcs-test.o CC tests/ipmi-bt-test.o CC tests/i440fx-test.o CC tests/fw_cfg-test.o CC tests/drive_del-test.o CC tests/wdt_ib700-test.o CC tests/tco-test.o CC tests/e1000-test.o CC tests/e1000e-test.o CC tests/rtl8139-test.o CC tests/pcnet-test.o CC tests/eepro100-test.o CC tests/ne2000-test.o CC tests/nvme-test.o CC tests/ac97-test.o CC tests/es1370-test.o CC tests/virtio-net-test.o CC tests/virtio-balloon-test.o CC tests/virtio-blk-test.o CC tests/virtio-rng-test.o CC tests/virtio-scsi-test.o CC tests/virtio-serial-test.o CC tests/virtio-console-test.o CC tests/tpci200-test.o CC tests/ipoctal232-test.o CC tests/intel-hda-test.o CC tests/display-vga-test.o CC tests/ivshmem-test.o CC tests/megasas-test.o CC tests/vmxnet3-test.o CC tests/pvpanic-test.o CC tests/i82801b11-test.o CC tests/ioh3420-test.o CC tests/usb-hcd-ohci-test.o CC tests/libqos/usb.o CC tests/usb-hcd-uhci-test.o CC tests/usb-hcd-ehci-test.o CC tests/usb-hcd-xhci-test.o CC tests/pc-cpu-test.o CC tests/q35-test.o CC tests/vmgenid-test.o CC tests/test-netfilter.o CC tests/test-filter-mirror.o CC tests/test-filter-redirector.o CC tests/postcopy-test.o CC tests/test-x86-cpuid-compat.o CC tests/numa-test.o CC tests/qmp-test.o CC tests/device-introspect-test.o CC tests/qom-test.o CC tests/test-hmp.o LINK tests/check-qdict LINK tests/test-char LINK tests/check-qnum LINK tests/check-qstring LINK tests/check-qlist LINK tests/check-qnull LINK tests/check-qjson LINK tests/check-qlit CC tests/test-qapi-visit.o CC tests/test-qapi-types.o CC tests/test-qapi-event.o CC tests/test-qmp-introspect.o CC tests/test-qmp-marshal.o LINK tests/test-coroutine LINK tests/test-visitor-serialization LINK tests/test-iov LINK tests/test-aio LINK tests/test-aio-multithread LINK tests/test-throttle LINK tests/test-thread-pool LINK tests/test-hbitmap LINK tests/test-blockjob LINK tests/test-blockjob-txn LINK tests/test-x86-cpuid LINK tests/test-xbzrle LINK tests/test-vmstate LINK tests/test-cutils LINK tests/test-shift128 LINK tests/test-int128 LINK tests/test-mul64 LINK tests/rcutorture LINK tests/test-rcu-list LINK tests/test-qdist LINK tests/test-qht LINK tests/qht-bench LINK tests/test-bitops LINK tests/test-bitcnt LINK tests/check-qom-interface LINK tests/check-qom-proplist LINK tests/test-qemu-opts LINK tests/test-keyval LINK tests/test-write-threshold LINK tests/test-crypto-hash LINK tests/test-crypto-hmac LINK tests/test-crypto-cipher LINK tests/test-crypto-secret LINK tests/test-qga LINK tests/test-timed-average LINK tests/test-io-task LINK tests/test-io-channel-socket LINK tests/test-io-channel-file LINK tests/test-io-channel-command LINK tests/test-io-channel-buffer LINK tests/test-base64 LINK tests/test-crypto-ivgen LINK tests/test-crypto-afsplit LINK tests/test-crypto-xts LINK tests/test-crypto-block LINK tests/test-logging LINK tests/test-replication LINK tests/test-bufferiszero LINK tests/test-uuid LINK tests/ptimer-test LINK tests/test-qapi-util LINK tests/vhost-user-test LINK tests/endianness-test LINK tests/fdc-test LINK tests/ide-test LINK tests/ahci-test LINK tests/hd-geo-test LINK tests/boot-order-test LINK tests/bios-tables-test LINK tests/boot-serial-test LINK tests/pxe-test LINK tests/rtc-test LINK tests/ipmi-kcs-test LINK tests/ipmi-bt-test LINK tests/i440fx-test LINK tests/fw_cfg-test LINK tests/drive_del-test LINK tests/wdt_ib700-test LINK tests/tco-test LINK tests/e1000-test LINK tests/e1000e-test LINK tests/rtl8139-test LINK tests/pcnet-test LINK tests/eepro100-test LINK tests/ne2000-test LINK tests/nvme-test LINK tests/ac97-test LINK tests/es1370-test LINK tests/virtio-net-test LINK tests/virtio-balloon-test LINK tests/virtio-blk-test LINK tests/virtio-rng-test LINK tests/virtio-scsi-test LINK tests/virtio-serial-test LINK tests/virtio-console-test LINK tests/tpci200-test LINK tests/ipoctal232-test LINK tests/display-vga-test LINK tests/intel-hda-test LINK tests/ivshmem-test LINK tests/megasas-test LINK tests/vmxnet3-test LINK tests/pvpanic-test LINK tests/i82801b11-test LINK tests/ioh3420-test LINK tests/usb-hcd-ohci-test LINK tests/usb-hcd-uhci-test LINK tests/usb-hcd-ehci-test LINK tests/usb-hcd-xhci-test LINK tests/pc-cpu-test LINK tests/q35-test LINK tests/vmgenid-test LINK tests/test-netfilter LINK tests/test-filter-mirror LINK tests/test-filter-redirector LINK tests/postcopy-test LINK tests/test-x86-cpuid-compat LINK tests/numa-test LINK tests/qmp-test LINK tests/device-introspect-test LINK tests/qom-test LINK tests/test-hmp GTESTER tests/check-qdict GTESTER tests/test-char GTESTER tests/check-qnum GTESTER tests/check-qstring GTESTER tests/check-qlist GTESTER tests/check-qnull GTESTER tests/check-qjson GTESTER tests/check-qlit LINK tests/test-qobject-output-visitor LINK tests/test-clone-visitor LINK tests/test-qobject-input-visitor LINK tests/test-qmp-commands LINK tests/test-string-input-visitor LINK tests/test-string-output-visitor LINK tests/test-qmp-event LINK tests/test-opts-visitor GTESTER tests/test-coroutine GTESTER tests/test-visitor-serialization GTESTER tests/test-iov GTESTER tests/test-aio GTESTER tests/test-aio-multithread GTESTER tests/test-throttle GTESTER tests/test-thread-pool GTESTER tests/test-hbitmap GTESTER tests/test-blockjob GTESTER tests/test-x86-cpuid GTESTER tests/test-blockjob-txn GTESTER tests/test-xbzrle GTESTER tests/test-vmstate GTESTER tests/test-cutils Failed to load simple/primitive:b_1 Failed to load simple/primitive:i64_2 Failed to load simple/primitive:i32_1 Failed to load simple/primitive:i32_1 Failed to load test/with_tmp:a Failed to load test/tmp_child_parent:f Failed to load test/tmp_child:parent Failed to load test/with_tmp:tmp Failed to load test/tmp_child:diff Failed to load test/with_tmp:tmp Failed to load test/tmp_child:diff Failed to load test/with_tmp:tmp GTESTER tests/test-shift128 GTESTER tests/test-mul64 GTESTER tests/test-int128 GTESTER tests/rcutorture GTESTER tests/test-rcu-list GTESTER tests/test-qdist GTESTER tests/test-qht LINK tests/test-qht-par GTESTER tests/test-bitops GTESTER tests/test-bitcnt GTESTER tests/check-qom-interface GTESTER tests/check-qom-proplist GTESTER tests/test-qemu-opts GTESTER tests/test-keyval GTESTER tests/test-write-threshold GTESTER tests/test-crypto-hash GTESTER tests/test-crypto-hmac GTESTER tests/test-crypto-cipher GTESTER tests/test-crypto-secret GTESTER tests/test-qga GTESTER tests/test-timed-average GTESTER tests/test-io-task GTESTER tests/test-io-channel-socket GTESTER tests/test-io-channel-file GTESTER tests/test-io-channel-command GTESTER tests/test-io-channel-buffer GTESTER tests/test-base64 GTESTER tests/test-crypto-ivgen GTESTER tests/test-crypto-afsplit GTESTER tests/test-crypto-xts GTESTER tests/test-crypto-block GTESTER tests/test-logging GTESTER tests/test-replication ** ERROR:/tmp/qemu-test/src/tests/rcutorture.c:388:gtest_stress: assertion failed (n_mberror == 0): (1 == 0) GTester: last random seed: R02Sf277a4366889473a6df3c7eadc312965 make: *** [check-tests/rcutorture] Error 1 make: *** Waiting for unfinished jobs.... Traceback (most recent call last): File "./tests/docker/docker.py", line 385, in <module> sys.exit(main()) File "./tests/docker/docker.py", line 382, in main return args.cmdobj.run(args, argv) File "./tests/docker/docker.py", line 239, in run return Docker().run(argv, args.keep, quiet=args.quiet) File "./tests/docker/docker.py", line 207, in run quiet=quiet) File "./tests/docker/docker.py", line 125, in _do_check return subprocess.check_call(self._command + cmd, **kwargs) File "/usr/lib64/python2.7/subprocess.py", line 186, in check_call raise CalledProcessError(retcode, cmd) subprocess.CalledProcessError: Command '['docker', 'run', '--label', 'com.qemu.instance.uuid=4d7a272ebd2811e797c352540069c830', '-u', '0', '--security-opt', 'seccomp=unconfined', '--rm', '--net=none', '-e', 'TARGET_LIST=', '-e', 'EXTRA_CONFIGURE_OPTS=', '-e', 'V=', '-e', 'J=8', '-e', 'DEBUG=', '-e', 'SHOW_ENV=1', '-e', 'CCACHE_DIR=/var/tmp/ccache', '-v', '/root/.cache/qemu-docker-ccache:/var/tmp/ccache:z', '-v', '/var/tmp/patchew-tester-tmp-5starz_f/src/docker-src.2017-10-30-00.10.34.32148:/var/tmp/qemu:z,ro', 'qemu:centos6', '/var/tmp/qemu/run', 'test-quick']' returned non-zero exit status 2 make[1]: *** [tests/docker/Makefile.include:129: docker-run] Error 1 make[1]: Leaving directory '/var/tmp/patchew-tester-tmp-5starz_f/src' make: *** [tests/docker/Makefile.include:163: docker-run-test-quick@centos6] Error 2 real 3m14.312s user 0m4.082s sys 0m4.246s === OUTPUT END === Test command exited with code: 2 --- Email generated automatically by Patchew [http://patchew.org/]. Please send your feedback to patchew-devel@freelists.org
On Mon, Oct 30, 2017 at 01:00:56AM -0300, Philippe Mathieu-Daudé wrote: > examples configuring with '--enable-kvm --disable-tcg' > > - before > > $ qemu-system-x86_64 -accel help > Possible accelerators: kvm, xen, hax, tcg > > $ qemu-system-x86_64 -accel tcg > qemu-system-x86_64: -machine accel=tcg: No accelerator found > > # qemu-system-x86_64 -accel hax > qemu-system-x86_64: -machine accel=hax: No accelerator found > > # qemu-system-x86_64 -accel xen > xencall: error: Could not obtain handle on privileged command interface: No such file or directory > xen be core: xen be core: can't open xen interface > can't open xen interface > qemu-system-x86_64: failed to initialize Xen: Operation not permitted > > - after > > $ qemu-system-x86_64 -accel help > Possible accelerators: kvm > > Signed-off-by: Philippe Mathieu-Daudé <f4bug@amsat.org> > --- > RFC because: > - I don't think this is the nicest way, too much #ifdef'fery in main() I suggest using object_class_get_list(TYPE_ACCEL, false). > - I'm not sure the correct use of CONFIG_KVM_IS_POSSIBLE > - shouldn't CONFIG_XEN/CONFIG_HAX be as poisoned as CONFIG_KVM? > > vl.c | 15 ++++++++++++++- > 1 file changed, 14 insertions(+), 1 deletion(-) > > diff --git a/vl.c b/vl.c > index ec299099ff..13fce86a6e 100644 > --- a/vl.c > +++ b/vl.c > @@ -3883,7 +3883,20 @@ int main(int argc, char **argv, char **envp) > optarg, true); > optarg = qemu_opt_get(accel_opts, "accel"); > if (!optarg || is_help_option(optarg)) { > - error_printf("Possible accelerators: kvm, xen, hax, tcg\n"); > + error_printf("Possible accelerators: "); > +#ifdef CONFIG_KVM_IS_POSSIBLE > + error_printf("kvm "); > +#endif > +#ifdef CONFIG_XEN > + error_printf("xen "); > +#endif > +#ifdef CONFIG_HAX > + error_printf("hax "); > +#endif > +#ifdef CONFIG_TCG > + error_printf("tcg "); > +#endif > + error_printf("\n"); > exit(0); > } > opts = qemu_opts_create(qemu_find_opts("machine"), NULL, > -- > 2.15.0.rc2 >
On 10/30/2017 05:20 AM, Eduardo Habkost wrote: > On Mon, Oct 30, 2017 at 01:00:56AM -0300, Philippe Mathieu-Daudé wrote: >> - I don't think this is the nicest way, too much #ifdef'fery in main() > > I suggest using object_class_get_list(TYPE_ACCEL, false). OK, this gives: $ qemu-system-x86_64 -accel help Possible accelerators: xen kvm qtest I was not aware of the qtest accel :) (gdb) r -accel qtest -nographic Starting program: x86_64-softmmu/qemu-system-x86_64 -accel qtest -nographic [Thread debugging using libthread_db enabled] Using host libthread_db library "/lib/x86_64-linux-gnu/libthread_db.so.1". [New Thread 0x7fffd7f4b700 (LWP 4085)] [New Thread 0x7fffd774a700 (LWP 4086)] Thread 1 "qemu-system-x86" received signal SIGTERM, Terminated. 0x00007fffde70f731 in __GI_ppoll (fds=0x555556bcc9e0, nfds=5, timeout=<optimized out>, sigmask=0x0) at ../sysdeps/unix/sysv/linux/ppoll.c:39 39 ../sysdeps/unix/sysv/linux/ppoll.c: No such file or directory. (gdb) i th Id Target Id Frame * 1 Thread 0x7ffff7f9eec0 (LWP 4080) "qemu-system-x86" 0x00007fffde70f731 in __GI_ppoll (fds=0x555556bcc9e0, nfds=5, timeout=<optimized out>, sigmask=0x0) at ../sysdeps/unix/sysv/linux/ppoll.c:39 2 Thread 0x7fffd7f4b700 (LWP 4085) "qemu-system-x86" syscall () at ../sysdeps/unix/sysv/linux/x86_64/syscall.S:38 3 Thread 0x7fffd774a700 (LWP 4086) "qemu-system-x86" do_sigwait (set=<optimized out>, set@entry=0x7fffd7747700, sig=sig@entry=0x7fffd77476fc) at ../sysdeps/unix/sysv/linux/sigwait.c:64 (gdb) bt #0 0x00007fffde70f731 in __GI_ppoll (fds=0x555556bcc9e0, nfds=5, timeout=<optimized out>, sigmask=0x0) at ../sysdeps/unix/sysv/linux/ppoll.c:39 #1 0x0000555555c3702c in qemu_poll_ns (fds=0x555556bcc9e0, nfds=5, timeout=1000000000) at util/qemu-timer.c:334 #2 0x0000555555c37f66 in os_host_main_loop_wait (timeout=1000000000) at util/main-loop.c:255 #3 0x0000555555c38026 in main_loop_wait (nonblocking=0) at util/main-loop.c:515 #4 0x00005555558aa6fc in main_loop () at vl.c:1995 #5 0x00005555558b1fc3 in main (argc=4, argv=0x7fffffffe088, envp=0x7fffffffe0b0) at vl.c:4948
On 30 October 2017 at 15:01, Philippe Mathieu-Daudé <f4bug@amsat.org> wrote: > On 10/30/2017 05:20 AM, Eduardo Habkost wrote: >> On Mon, Oct 30, 2017 at 01:00:56AM -0300, Philippe Mathieu-Daudé wrote: >>> - I don't think this is the nicest way, too much #ifdef'fery in main() >> >> I suggest using object_class_get_list(TYPE_ACCEL, false). > > OK, this gives: > > $ qemu-system-x86_64 -accel help > Possible accelerators: > xen > kvm > qtest > > I was not aware of the qtest accel :) We should special-case that one out, as it's only intended to be used by our test cases. (In an ideal world we'd diagnose "you used '-accel qtest' but didn't also pass '-qtest something' to set up the communications channel with the test harness" better than just SIGTERMing. But it's test code :-)) thanks -- PMM
On Mon, Oct 30, 2017 at 09:20:29AM +0100, Eduardo Habkost wrote: > On Mon, Oct 30, 2017 at 01:00:56AM -0300, Philippe Mathieu-Daudé wrote: > > examples configuring with '--enable-kvm --disable-tcg' > > > > - before > > > > $ qemu-system-x86_64 -accel help > > Possible accelerators: kvm, xen, hax, tcg > > > > $ qemu-system-x86_64 -accel tcg > > qemu-system-x86_64: -machine accel=tcg: No accelerator found > > > > # qemu-system-x86_64 -accel hax > > qemu-system-x86_64: -machine accel=hax: No accelerator found > > > > # qemu-system-x86_64 -accel xen > > xencall: error: Could not obtain handle on privileged command interface: No such file or directory > > xen be core: xen be core: can't open xen interface > > can't open xen interface > > qemu-system-x86_64: failed to initialize Xen: Operation not permitted > > > > - after > > > > $ qemu-system-x86_64 -accel help > > Possible accelerators: kvm > > > > Signed-off-by: Philippe Mathieu-Daudé <f4bug@amsat.org> > > --- > > RFC because: > > - I don't think this is the nicest way, too much #ifdef'fery in main() > > I suggest using object_class_get_list(TYPE_ACCEL, false). And check the result of the available() method on the returned classes too, to filter the results. Regards, Daniel
On 11/08/2017 10:28 AM, Daniel P. Berrange wrote: > On Mon, Oct 30, 2017 at 09:20:29AM +0100, Eduardo Habkost wrote: >> On Mon, Oct 30, 2017 at 01:00:56AM -0300, Philippe Mathieu-Daudé wrote: >>> examples configuring with '--enable-kvm --disable-tcg' >>> >>> - before >>> >>> $ qemu-system-x86_64 -accel help >>> Possible accelerators: kvm, xen, hax, tcg >>> >>> $ qemu-system-x86_64 -accel tcg >>> qemu-system-x86_64: -machine accel=tcg: No accelerator found >>> >>> # qemu-system-x86_64 -accel hax >>> qemu-system-x86_64: -machine accel=hax: No accelerator found >>> >>> # qemu-system-x86_64 -accel xen >>> xencall: error: Could not obtain handle on privileged command interface: No such file or directory >>> xen be core: xen be core: can't open xen interface >>> can't open xen interface >>> qemu-system-x86_64: failed to initialize Xen: Operation not permitted >>> >>> - after >>> >>> $ qemu-system-x86_64 -accel help >>> Possible accelerators: kvm >>> >>> Signed-off-by: Philippe Mathieu-Daudé <f4bug@amsat.org> >>> --- >>> RFC because: >>> - I don't think this is the nicest way, too much #ifdef'fery in main() >> >> I suggest using object_class_get_list(TYPE_ACCEL, false). > > And check the result of the available() method on the returned classes > too, to filter the results. Good idea! I'll use that.
On Wed, Nov 08, 2017 at 01:21:33PM -0300, Philippe Mathieu-Daudé wrote: > On 11/08/2017 10:28 AM, Daniel P. Berrange wrote: > > On Mon, Oct 30, 2017 at 09:20:29AM +0100, Eduardo Habkost wrote: > >> On Mon, Oct 30, 2017 at 01:00:56AM -0300, Philippe Mathieu-Daudé wrote: > >>> examples configuring with '--enable-kvm --disable-tcg' > >>> > >>> - before > >>> > >>> $ qemu-system-x86_64 -accel help > >>> Possible accelerators: kvm, xen, hax, tcg > >>> > >>> $ qemu-system-x86_64 -accel tcg > >>> qemu-system-x86_64: -machine accel=tcg: No accelerator found > >>> > >>> # qemu-system-x86_64 -accel hax > >>> qemu-system-x86_64: -machine accel=hax: No accelerator found > >>> > >>> # qemu-system-x86_64 -accel xen > >>> xencall: error: Could not obtain handle on privileged command interface: No such file or directory > >>> xen be core: xen be core: can't open xen interface > >>> can't open xen interface > >>> qemu-system-x86_64: failed to initialize Xen: Operation not permitted > >>> > >>> - after > >>> > >>> $ qemu-system-x86_64 -accel help > >>> Possible accelerators: kvm > >>> > >>> Signed-off-by: Philippe Mathieu-Daudé <f4bug@amsat.org> > >>> --- > >>> RFC because: > >>> - I don't think this is the nicest way, too much #ifdef'fery in main() > >> > >> I suggest using object_class_get_list(TYPE_ACCEL, false). > > > > And check the result of the available() method on the returned classes > > too, to filter the results. > > Good idea! I'll use that. It looks like QTest is the only accelerator that implements ->available(), and its return value is a build-time constant that depends only on CONFIG_POSIX. I wonder why we don't simply avoid compiling the qtest class if CONFIG_POSIX is unset, making the ->available() method unnecessary.
On Wed, Nov 08, 2017 at 02:59:05PM -0200, Eduardo Habkost wrote: > On Wed, Nov 08, 2017 at 01:21:33PM -0300, Philippe Mathieu-Daudé wrote: > > On 11/08/2017 10:28 AM, Daniel P. Berrange wrote: > > > On Mon, Oct 30, 2017 at 09:20:29AM +0100, Eduardo Habkost wrote: > > >> On Mon, Oct 30, 2017 at 01:00:56AM -0300, Philippe Mathieu-Daudé wrote: > > >>> examples configuring with '--enable-kvm --disable-tcg' > > >>> > > >>> - before > > >>> > > >>> $ qemu-system-x86_64 -accel help > > >>> Possible accelerators: kvm, xen, hax, tcg > > >>> > > >>> $ qemu-system-x86_64 -accel tcg > > >>> qemu-system-x86_64: -machine accel=tcg: No accelerator found > > >>> > > >>> # qemu-system-x86_64 -accel hax > > >>> qemu-system-x86_64: -machine accel=hax: No accelerator found > > >>> > > >>> # qemu-system-x86_64 -accel xen > > >>> xencall: error: Could not obtain handle on privileged command interface: No such file or directory > > >>> xen be core: xen be core: can't open xen interface > > >>> can't open xen interface > > >>> qemu-system-x86_64: failed to initialize Xen: Operation not permitted > > >>> > > >>> - after > > >>> > > >>> $ qemu-system-x86_64 -accel help > > >>> Possible accelerators: kvm > > >>> > > >>> Signed-off-by: Philippe Mathieu-Daudé <f4bug@amsat.org> > > >>> --- > > >>> RFC because: > > >>> - I don't think this is the nicest way, too much #ifdef'fery in main() > > >> > > >> I suggest using object_class_get_list(TYPE_ACCEL, false). > > > > > > And check the result of the available() method on the returned classes > > > too, to filter the results. > > > > Good idea! I'll use that. > > It looks like QTest is the only accelerator that implements > ->available(), and its return value is a build-time constant that > depends only on CONFIG_POSIX. > > I wonder why we don't simply avoid compiling the qtest class if > CONFIG_POSIX is unset, making the ->available() method > unnecessary. Yeah that does seem simpler, though I'm surprised that Xen does not implement the available method. Xen is an accel I'd expect to see compiled into an x86 build, but is only available if the host is actually booted under a Xen hypervisor. Likewise shouldn't kvm only report itself as available if the /dev/kvm actually exists. But maybe that's not the kind of semantics code using available() expects ? Regards, Daniel
On Wed, Nov 08, 2017 at 05:06:29PM +0000, Daniel P. Berrange wrote: > On Wed, Nov 08, 2017 at 02:59:05PM -0200, Eduardo Habkost wrote: > > On Wed, Nov 08, 2017 at 01:21:33PM -0300, Philippe Mathieu-Daudé wrote: > > > On 11/08/2017 10:28 AM, Daniel P. Berrange wrote: > > > > On Mon, Oct 30, 2017 at 09:20:29AM +0100, Eduardo Habkost wrote: > > > >> On Mon, Oct 30, 2017 at 01:00:56AM -0300, Philippe Mathieu-Daudé wrote: > > > >>> examples configuring with '--enable-kvm --disable-tcg' > > > >>> > > > >>> - before > > > >>> > > > >>> $ qemu-system-x86_64 -accel help > > > >>> Possible accelerators: kvm, xen, hax, tcg > > > >>> > > > >>> $ qemu-system-x86_64 -accel tcg > > > >>> qemu-system-x86_64: -machine accel=tcg: No accelerator found > > > >>> > > > >>> # qemu-system-x86_64 -accel hax > > > >>> qemu-system-x86_64: -machine accel=hax: No accelerator found > > > >>> > > > >>> # qemu-system-x86_64 -accel xen > > > >>> xencall: error: Could not obtain handle on privileged command interface: No such file or directory > > > >>> xen be core: xen be core: can't open xen interface > > > >>> can't open xen interface > > > >>> qemu-system-x86_64: failed to initialize Xen: Operation not permitted > > > >>> > > > >>> - after > > > >>> > > > >>> $ qemu-system-x86_64 -accel help > > > >>> Possible accelerators: kvm > > > >>> > > > >>> Signed-off-by: Philippe Mathieu-Daudé <f4bug@amsat.org> > > > >>> --- > > > >>> RFC because: > > > >>> - I don't think this is the nicest way, too much #ifdef'fery in main() > > > >> > > > >> I suggest using object_class_get_list(TYPE_ACCEL, false). > > > > > > > > And check the result of the available() method on the returned classes > > > > too, to filter the results. > > > > > > Good idea! I'll use that. > > > > It looks like QTest is the only accelerator that implements > > ->available(), and its return value is a build-time constant that > > depends only on CONFIG_POSIX. > > > > I wonder why we don't simply avoid compiling the qtest class if > > CONFIG_POSIX is unset, making the ->available() method > > unnecessary. > > Yeah that does seem simpler, though I'm surprised that Xen does not > implement the available method. Xen is an accel I'd expect to see > compiled into an x86 build, but is only available if the host is > actually booted under a Xen hypervisor. Likewise shouldn't kvm > only report itself as available if the /dev/kvm actually exists. > But maybe that's not the kind of semantics code using available() > expects ? Currently the only caller of ->available() calls ->init_machine() immediately afterwards, so for the current code it doesn't matter if the check is inside ->available() or ->init_machine(). That said, I'm not sure we should look for /dev/kvm or check for the Xen hypervisor when handling "-accel help". I expect help text to tell the user what the QEMU binary supports, not what the current host supports.
On Wed, Nov 08, 2017 at 03:25:47PM -0200, Eduardo Habkost wrote: > On Wed, Nov 08, 2017 at 05:06:29PM +0000, Daniel P. Berrange wrote: > > On Wed, Nov 08, 2017 at 02:59:05PM -0200, Eduardo Habkost wrote: > > > On Wed, Nov 08, 2017 at 01:21:33PM -0300, Philippe Mathieu-Daudé wrote: > > > > On 11/08/2017 10:28 AM, Daniel P. Berrange wrote: > > > > > On Mon, Oct 30, 2017 at 09:20:29AM +0100, Eduardo Habkost wrote: > > > > >> On Mon, Oct 30, 2017 at 01:00:56AM -0300, Philippe Mathieu-Daudé wrote: > > > > >>> examples configuring with '--enable-kvm --disable-tcg' > > > > >>> > > > > >>> - before > > > > >>> > > > > >>> $ qemu-system-x86_64 -accel help > > > > >>> Possible accelerators: kvm, xen, hax, tcg > > > > >>> > > > > >>> $ qemu-system-x86_64 -accel tcg > > > > >>> qemu-system-x86_64: -machine accel=tcg: No accelerator found > > > > >>> > > > > >>> # qemu-system-x86_64 -accel hax > > > > >>> qemu-system-x86_64: -machine accel=hax: No accelerator found > > > > >>> > > > > >>> # qemu-system-x86_64 -accel xen > > > > >>> xencall: error: Could not obtain handle on privileged command interface: No such file or directory > > > > >>> xen be core: xen be core: can't open xen interface > > > > >>> can't open xen interface > > > > >>> qemu-system-x86_64: failed to initialize Xen: Operation not permitted > > > > >>> > > > > >>> - after > > > > >>> > > > > >>> $ qemu-system-x86_64 -accel help > > > > >>> Possible accelerators: kvm > > > > >>> > > > > >>> Signed-off-by: Philippe Mathieu-Daudé <f4bug@amsat.org> > > > > >>> --- > > > > >>> RFC because: > > > > >>> - I don't think this is the nicest way, too much #ifdef'fery in main() > > > > >> > > > > >> I suggest using object_class_get_list(TYPE_ACCEL, false). > > > > > > > > > > And check the result of the available() method on the returned classes > > > > > too, to filter the results. > > > > > > > > Good idea! I'll use that. > > > > > > It looks like QTest is the only accelerator that implements > > > ->available(), and its return value is a build-time constant that > > > depends only on CONFIG_POSIX. > > > > > > I wonder why we don't simply avoid compiling the qtest class if > > > CONFIG_POSIX is unset, making the ->available() method > > > unnecessary. > > > > Yeah that does seem simpler, though I'm surprised that Xen does not > > implement the available method. Xen is an accel I'd expect to see > > compiled into an x86 build, but is only available if the host is > > actually booted under a Xen hypervisor. Likewise shouldn't kvm > > only report itself as available if the /dev/kvm actually exists. > > But maybe that's not the kind of semantics code using available() > > expects ? > > Currently the only caller of ->available() calls ->init_machine() > immediately afterwards, so for the current code it doesn't matter > if the check is inside ->available() or ->init_machine(). > > That said, I'm not sure we should look for /dev/kvm or check for > the Xen hypervisor when handling "-accel help". I expect help > text to tell the user what the QEMU binary supports, not what the > current host supports. Yeah, that's sensible. Regards, Daniel
On 11/08/2017 02:25 PM, Eduardo Habkost wrote: > On Wed, Nov 08, 2017 at 05:06:29PM +0000, Daniel P. Berrange wrote: >> On Wed, Nov 08, 2017 at 02:59:05PM -0200, Eduardo Habkost wrote: >>> On Wed, Nov 08, 2017 at 01:21:33PM -0300, Philippe Mathieu-Daudé wrote: >>>> On 11/08/2017 10:28 AM, Daniel P. Berrange wrote: >>>>> On Mon, Oct 30, 2017 at 09:20:29AM +0100, Eduardo Habkost wrote: >>>>>> On Mon, Oct 30, 2017 at 01:00:56AM -0300, Philippe Mathieu-Daudé wrote: >>>>>>> examples configuring with '--enable-kvm --disable-tcg' >>>>>>> >>>>>>> - before >>>>>>> >>>>>>> $ qemu-system-x86_64 -accel help >>>>>>> Possible accelerators: kvm, xen, hax, tcg >>>>>>> >>>>>>> $ qemu-system-x86_64 -accel tcg >>>>>>> qemu-system-x86_64: -machine accel=tcg: No accelerator found >>>>>>> >>>>>>> # qemu-system-x86_64 -accel hax >>>>>>> qemu-system-x86_64: -machine accel=hax: No accelerator found >>>>>>> >>>>>>> # qemu-system-x86_64 -accel xen >>>>>>> xencall: error: Could not obtain handle on privileged command interface: No such file or directory >>>>>>> xen be core: xen be core: can't open xen interface >>>>>>> can't open xen interface >>>>>>> qemu-system-x86_64: failed to initialize Xen: Operation not permitted >>>>>>> >>>>>>> - after >>>>>>> >>>>>>> $ qemu-system-x86_64 -accel help >>>>>>> Possible accelerators: kvm >>>>>>> >>>>>>> Signed-off-by: Philippe Mathieu-Daudé <f4bug@amsat.org> >>>>>>> --- >>>>>>> RFC because: >>>>>>> - I don't think this is the nicest way, too much #ifdef'fery in main() >>>>>> >>>>>> I suggest using object_class_get_list(TYPE_ACCEL, false). >>>>> >>>>> And check the result of the available() method on the returned classes >>>>> too, to filter the results. >>>> >>>> Good idea! I'll use that. >>> >>> It looks like QTest is the only accelerator that implements >>> ->available(), and its return value is a build-time constant that >>> depends only on CONFIG_POSIX. >>> >>> I wonder why we don't simply avoid compiling the qtest class if >>> CONFIG_POSIX is unset, making the ->available() method >>> unnecessary. >> >> Yeah that does seem simpler, though I'm surprised that Xen does not >> implement the available method. Xen is an accel I'd expect to see >> compiled into an x86 build, but is only available if the host is >> actually booted under a Xen hypervisor. Likewise shouldn't kvm >> only report itself as available if the /dev/kvm actually exists. >> But maybe that's not the kind of semantics code using available() >> expects ? > > Currently the only caller of ->available() calls ->init_machine() > immediately afterwards, so for the current code it doesn't matter > if the check is inside ->available() or ->init_machine(). > > That said, I'm not sure we should look for /dev/kvm or check for > the Xen hypervisor when handling "-accel help". I expect help > text to tell the user what the QEMU binary supports, not what the > current host supports. Yes I prefer that too, I'll write something up such: static bool kvm_available(void) { return access("/dev/kvm", R_OK|W_OK) == 0; } However I wonder, if an user is not in the kvm group but is in sudoers and run "qemu-system-aarch64 -accel help" he won't see KVM as available... (I tend to not use sudo when looking for -help output). same with: static bool hax_available(void) { return access("/dev/HAX", R_OK|W_OK) == 0; } ok for: static bool xen_available(void) { return access("/sys/hypervisor/properties/features", F_OK) == 0; } On POWER7 we have: /* On ppc64, the test only works with kvm-hv, but not with kvm-pr */ accel = access("/sys/module/kvm_hv", F_OK) ? "tcg" : "kvm:tcg"; Isn't it cleaner to register 2 accelerators, KVM-PR and KVM-HV and have KVM being an alias?
On Wed, Nov 08, 2017 at 03:03:34PM -0300, Philippe Mathieu-Daudé wrote: > On 11/08/2017 02:25 PM, Eduardo Habkost wrote: > > On Wed, Nov 08, 2017 at 05:06:29PM +0000, Daniel P. Berrange wrote: > >> On Wed, Nov 08, 2017 at 02:59:05PM -0200, Eduardo Habkost wrote: > >>> On Wed, Nov 08, 2017 at 01:21:33PM -0300, Philippe Mathieu-Daudé wrote: > >>>> On 11/08/2017 10:28 AM, Daniel P. Berrange wrote: > >>>>> On Mon, Oct 30, 2017 at 09:20:29AM +0100, Eduardo Habkost wrote: > >>>>>> On Mon, Oct 30, 2017 at 01:00:56AM -0300, Philippe Mathieu-Daudé wrote: > >>>>>>> examples configuring with '--enable-kvm --disable-tcg' > >>>>>>> > >>>>>>> - before > >>>>>>> > >>>>>>> $ qemu-system-x86_64 -accel help > >>>>>>> Possible accelerators: kvm, xen, hax, tcg > >>>>>>> > >>>>>>> $ qemu-system-x86_64 -accel tcg > >>>>>>> qemu-system-x86_64: -machine accel=tcg: No accelerator found > >>>>>>> > >>>>>>> # qemu-system-x86_64 -accel hax > >>>>>>> qemu-system-x86_64: -machine accel=hax: No accelerator found > >>>>>>> > >>>>>>> # qemu-system-x86_64 -accel xen > >>>>>>> xencall: error: Could not obtain handle on privileged command interface: No such file or directory > >>>>>>> xen be core: xen be core: can't open xen interface > >>>>>>> can't open xen interface > >>>>>>> qemu-system-x86_64: failed to initialize Xen: Operation not permitted > >>>>>>> > >>>>>>> - after > >>>>>>> > >>>>>>> $ qemu-system-x86_64 -accel help > >>>>>>> Possible accelerators: kvm > >>>>>>> > >>>>>>> Signed-off-by: Philippe Mathieu-Daudé <f4bug@amsat.org> > >>>>>>> --- > >>>>>>> RFC because: > >>>>>>> - I don't think this is the nicest way, too much #ifdef'fery in main() > >>>>>> > >>>>>> I suggest using object_class_get_list(TYPE_ACCEL, false). > >>>>> > >>>>> And check the result of the available() method on the returned classes > >>>>> too, to filter the results. > >>>> > >>>> Good idea! I'll use that. > >>> > >>> It looks like QTest is the only accelerator that implements > >>> ->available(), and its return value is a build-time constant that > >>> depends only on CONFIG_POSIX. > >>> > >>> I wonder why we don't simply avoid compiling the qtest class if > >>> CONFIG_POSIX is unset, making the ->available() method > >>> unnecessary. > >> > >> Yeah that does seem simpler, though I'm surprised that Xen does not > >> implement the available method. Xen is an accel I'd expect to see > >> compiled into an x86 build, but is only available if the host is > >> actually booted under a Xen hypervisor. Likewise shouldn't kvm > >> only report itself as available if the /dev/kvm actually exists. > >> But maybe that's not the kind of semantics code using available() > >> expects ? > > > > Currently the only caller of ->available() calls ->init_machine() > > immediately afterwards, so for the current code it doesn't matter > > if the check is inside ->available() or ->init_machine(). > > > > That said, I'm not sure we should look for /dev/kvm or check for > > the Xen hypervisor when handling "-accel help". I expect help > > text to tell the user what the QEMU binary supports, not what the > > current host supports. > > Yes I prefer that too, I'll write something up such: > > static bool kvm_available(void) > { > return access("/dev/kvm", R_OK|W_OK) == 0; > } > > However I wonder, if an user is not in the kvm group but is in sudoers > and run "qemu-system-aarch64 -accel help" he won't see KVM as > available... (I tend to not use sudo when looking for -help output). If we do that, I think we should include kvm in the list anyway, but just add a column indicating that it doesn't seem to be available on the host. In either case, I suggest implementing it as a separate patch, and just ignore ->available() in the first version. > > same with: > > static bool hax_available(void) > { > return access("/dev/HAX", R_OK|W_OK) == 0; > } > > ok for: > > static bool xen_available(void) > { > return access("/sys/hypervisor/properties/features", F_OK) == 0; > } > > On POWER7 we have: > > /* On ppc64, the test only works with kvm-hv, but not with kvm-pr */ > accel = access("/sys/module/kvm_hv", F_OK) ? "tcg" : "kvm:tcg"; > > Isn't it cleaner to register 2 accelerators, KVM-PR and KVM-HV and have > KVM being an alias? I believe "-accel kvm,kvm-type=HV" and "-accel kvm,kvm-type=PR" would be cleaner ways to represent the two modes, instead of having two different accelerator classes. This is not supported by the current "<accel1>:<accel2>" syntax, but I think we should replace that syntax with something better anyway.
On 11/08/2017 03:35 PM, Eduardo Habkost wrote: > On Wed, Nov 08, 2017 at 03:03:34PM -0300, Philippe Mathieu-Daudé wrote: >> On 11/08/2017 02:25 PM, Eduardo Habkost wrote: >>> On Wed, Nov 08, 2017 at 05:06:29PM +0000, Daniel P. Berrange wrote: >>>> On Wed, Nov 08, 2017 at 02:59:05PM -0200, Eduardo Habkost wrote: >>>>> On Wed, Nov 08, 2017 at 01:21:33PM -0300, Philippe Mathieu-Daudé wrote: >>>>>> On 11/08/2017 10:28 AM, Daniel P. Berrange wrote: >>>>>>> On Mon, Oct 30, 2017 at 09:20:29AM +0100, Eduardo Habkost wrote: >>>>>>>> On Mon, Oct 30, 2017 at 01:00:56AM -0300, Philippe Mathieu-Daudé wrote: >>>>>>>>> examples configuring with '--enable-kvm --disable-tcg' >>>>>>>>> >>>>>>>>> - before >>>>>>>>> >>>>>>>>> $ qemu-system-x86_64 -accel help >>>>>>>>> Possible accelerators: kvm, xen, hax, tcg >>>>>>>>> >>>>>>>>> $ qemu-system-x86_64 -accel tcg >>>>>>>>> qemu-system-x86_64: -machine accel=tcg: No accelerator found >>>>>>>>> >>>>>>>>> # qemu-system-x86_64 -accel hax >>>>>>>>> qemu-system-x86_64: -machine accel=hax: No accelerator found >>>>>>>>> >>>>>>>>> # qemu-system-x86_64 -accel xen >>>>>>>>> xencall: error: Could not obtain handle on privileged command interface: No such file or directory >>>>>>>>> xen be core: xen be core: can't open xen interface >>>>>>>>> can't open xen interface >>>>>>>>> qemu-system-x86_64: failed to initialize Xen: Operation not permitted >>>>>>>>> >>>>>>>>> - after >>>>>>>>> >>>>>>>>> $ qemu-system-x86_64 -accel help >>>>>>>>> Possible accelerators: kvm >>>>>>>>> >>>>>>>>> Signed-off-by: Philippe Mathieu-Daudé <f4bug@amsat.org> >>>>>>>>> --- >>>>>>>>> RFC because: >>>>>>>>> - I don't think this is the nicest way, too much #ifdef'fery in main() >>>>>>>> >>>>>>>> I suggest using object_class_get_list(TYPE_ACCEL, false). >>>>>>> >>>>>>> And check the result of the available() method on the returned classes >>>>>>> too, to filter the results. >>>>>> >>>>>> Good idea! I'll use that. >>>>> >>>>> It looks like QTest is the only accelerator that implements >>>>> ->available(), and its return value is a build-time constant that >>>>> depends only on CONFIG_POSIX. >>>>> >>>>> I wonder why we don't simply avoid compiling the qtest class if >>>>> CONFIG_POSIX is unset, making the ->available() method >>>>> unnecessary. >>>> >>>> Yeah that does seem simpler, though I'm surprised that Xen does not >>>> implement the available method. Xen is an accel I'd expect to see >>>> compiled into an x86 build, but is only available if the host is >>>> actually booted under a Xen hypervisor. Likewise shouldn't kvm >>>> only report itself as available if the /dev/kvm actually exists. >>>> But maybe that's not the kind of semantics code using available() >>>> expects ? >>> >>> Currently the only caller of ->available() calls ->init_machine() >>> immediately afterwards, so for the current code it doesn't matter >>> if the check is inside ->available() or ->init_machine(). >>> >>> That said, I'm not sure we should look for /dev/kvm or check for >>> the Xen hypervisor when handling "-accel help". I expect help >>> text to tell the user what the QEMU binary supports, not what the >>> current host supports. >> >> Yes I prefer that too, I'll write something up such: >> >> static bool kvm_available(void) >> { >> return access("/dev/kvm", R_OK|W_OK) == 0; >> } >> >> However I wonder, if an user is not in the kvm group but is in sudoers >> and run "qemu-system-aarch64 -accel help" he won't see KVM as >> available... (I tend to not use sudo when looking for -help output). > > If we do that, I think we should include kvm in the list anyway, > but just add a column indicating that it doesn't seem to be > available on the host. So with CONFIG_KVM we have 'KVM enabled' and we should list it, OK. kvm_available() could be: return access("/dev/kvm", F_OK) == 0; (missing kmod). Checking for R_OK|W_OK would give kvm_usable() but if the user forgot to use sudo kvm_arch_init() will fail anyway, so no need to worry about it. > > In either case, I suggest implementing it as a separate patch, > and just ignore ->available() in the first version. Sure, availability check are for 2.12. This -accel help message was added before 2.10, so this is not a bug fix (nobody complained about it since 2.10). I'll postpone this series for 2.12. >> On POWER7 we have: >> >> /* On ppc64, the test only works with kvm-hv, but not with kvm-pr */ >> accel = access("/sys/module/kvm_hv", F_OK) ? "tcg" : "kvm:tcg"; >> >> Isn't it cleaner to register 2 accelerators, KVM-PR and KVM-HV and have >> KVM being an alias? > > I believe "-accel kvm,kvm-type=HV" and "-accel kvm,kvm-type=PR" > would be cleaner ways to represent the two modes, instead of > having two different accelerator classes. This is not supported > by the current "<accel1>:<accel2>" syntax, but I think we should > replace that syntax with something better anyway. Ok. Thanks, Phil.
diff --git a/vl.c b/vl.c index ec299099ff..13fce86a6e 100644 --- a/vl.c +++ b/vl.c @@ -3883,7 +3883,20 @@ int main(int argc, char **argv, char **envp) optarg, true); optarg = qemu_opt_get(accel_opts, "accel"); if (!optarg || is_help_option(optarg)) { - error_printf("Possible accelerators: kvm, xen, hax, tcg\n"); + error_printf("Possible accelerators: "); +#ifdef CONFIG_KVM_IS_POSSIBLE + error_printf("kvm "); +#endif +#ifdef CONFIG_XEN + error_printf("xen "); +#endif +#ifdef CONFIG_HAX + error_printf("hax "); +#endif +#ifdef CONFIG_TCG + error_printf("tcg "); +#endif + error_printf("\n"); exit(0); } opts = qemu_opts_create(qemu_find_opts("machine"), NULL,
examples configuring with '--enable-kvm --disable-tcg' - before $ qemu-system-x86_64 -accel help Possible accelerators: kvm, xen, hax, tcg $ qemu-system-x86_64 -accel tcg qemu-system-x86_64: -machine accel=tcg: No accelerator found # qemu-system-x86_64 -accel hax qemu-system-x86_64: -machine accel=hax: No accelerator found # qemu-system-x86_64 -accel xen xencall: error: Could not obtain handle on privileged command interface: No such file or directory xen be core: xen be core: can't open xen interface can't open xen interface qemu-system-x86_64: failed to initialize Xen: Operation not permitted - after $ qemu-system-x86_64 -accel help Possible accelerators: kvm Signed-off-by: Philippe Mathieu-Daudé <f4bug@amsat.org> --- RFC because: - I don't think this is the nicest way, too much #ifdef'fery in main() - I'm not sure the correct use of CONFIG_KVM_IS_POSSIBLE - shouldn't CONFIG_XEN/CONFIG_HAX be as poisoned as CONFIG_KVM? vl.c | 15 ++++++++++++++- 1 file changed, 14 insertions(+), 1 deletion(-)