[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] [qemu-xen staging] Merge tag 'v6.1.0' into 'staging'
=== This changeset includes merge from high-traffic branch === Commits on that branch are not reported individually. commit 0e95e1df345bce95ac4d6b15c6ed1bf07659fac1 Merge: f9baca549e44791be0dd98de15add3d8452a8af0 136c34c9bc4179dc64b15b2bb5f0c54ca4ddf823 Author: Anthony PERARD <anthony.perard@xxxxxxxxxx> AuthorDate: Tue Aug 31 11:48:55 2021 +0100 Commit: Anthony PERARD <anthony.perard@xxxxxxxxxx> CommitDate: Tue Aug 31 11:48:55 2021 +0100 Merge tag 'v6.1.0' into 'staging' .cirrus.yml | 59 +- .github/lockdown.yml | 6 +- .gitignore | 2 + .gitlab-ci.d/buildtest-template.yml | 81 + .gitlab-ci.d/buildtest.yml | 724 + .gitlab-ci.d/cirrus.yml | 87 + .gitlab-ci.d/cirrus/README.rst | 54 + .gitlab-ci.d/cirrus/build.yml | 35 + .gitlab-ci.d/cirrus/freebsd-12.vars | 13 + .gitlab-ci.d/cirrus/freebsd-13.vars | 13 + .gitlab-ci.d/cirrus/macos-11.vars | 15 + .gitlab-ci.d/container-core.yml | 17 + .gitlab-ci.d/container-cross.yml | 192 + .gitlab-ci.d/container-template.yml | 21 + .gitlab-ci.d/containers.yml | 236 +- .gitlab-ci.d/crossbuild-template.yml | 47 + .gitlab-ci.d/crossbuilds.yml | 76 +- .gitlab-ci.d/custom-runners.yml | 238 + .gitlab-ci.d/edk2.yml | 29 +- .gitlab-ci.d/opensbi.yml | 30 +- .gitlab-ci.d/qemu-project.yml | 13 + .gitlab-ci.d/stages.yml | 8 + .gitlab-ci.d/static_checks.yml | 49 + .gitlab-ci.yml | 853 +- .gitlab/issue_templates/bug.md | 64 + .gitlab/issue_templates/feature_request.md | 32 + .mailmap | 5 + .patchew.yml | 9 +- .travis.yml | 12 +- Kconfig | 1 + MAINTAINERS | 294 +- Makefile | 14 +- README.rst | 6 +- VERSION | 2 +- accel/Kconfig | 3 + accel/accel-common.c | 34 +- accel/accel-softmmu.c | 2 +- accel/hvf/hvf-accel-ops.c | 471 + accel/hvf/hvf-all.c | 47 + accel/hvf/meson.build | 7 + accel/kvm/kvm-all.c | 625 +- accel/kvm/trace-events | 9 +- accel/meson.build | 1 + accel/qtest/meson.build | 8 +- accel/qtest/qtest.c | 2 + accel/stubs/kvm-stub.c | 1 - accel/stubs/tcg-stub.c | 1 - accel/tcg/atomic_common.c.inc | 107 +- accel/tcg/atomic_template.h | 142 +- accel/tcg/cpu-exec-common.c | 1 - accel/tcg/cpu-exec.c | 335 +- accel/tcg/cputlb.c | 349 +- accel/tcg/hmp.c | 29 + accel/tcg/internal.h | 2 + accel/tcg/meson.build | 6 +- accel/tcg/plugin-gen.c | 21 +- accel/tcg/plugin-helpers.h | 5 +- accel/tcg/tb-context.h | 42 + accel/tcg/tb-hash.h | 69 + accel/tcg/tcg-accel-ops-icount.c | 1 - accel/tcg/tcg-accel-ops-rr.c | 1 - accel/tcg/tcg-accel-ops.c | 2 +- accel/tcg/tcg-all.c | 33 +- accel/tcg/tcg-runtime-gvec.c | 36 +- accel/tcg/tcg-runtime.c | 22 - accel/tcg/tcg-runtime.h | 46 - accel/tcg/trace-events | 2 +- accel/tcg/translate-all.c | 485 +- accel/tcg/translator.c | 47 +- accel/tcg/user-exec-stub.c | 1 - accel/tcg/user-exec.c | 60 +- audio/alsaaudio.c | 10 +- audio/audio.c | 25 +- audio/audio_int.h | 2 + audio/coreaudio.c | 150 +- audio/jackaudio.c | 3 +- audio/paaudio.c | 10 +- audio/spiceaudio.c | 2 + audio/trace-events | 2 +- authz/meson.build | 2 +- authz/trace-events | 2 +- backends/cryptodev-vhost.c | 5 +- backends/hostmem-file.c | 12 +- backends/hostmem-memfd.c | 9 +- backends/hostmem-ram.c | 7 +- backends/hostmem.c | 37 +- backends/tpm/tpm_emulator.c | 34 +- backends/tpm/trace-events | 2 +- backends/trace-events | 2 +- backends/vhost-user.c | 4 +- block.c | 1707 +- block/backup-top.c | 48 +- block/backup.c | 2 +- block/blkdebug.c | 136 +- block/block-backend.c | 76 +- block/block-copy.c | 388 +- block/commit.c | 28 +- block/copy-on-read.c | 33 +- block/coroutines.h | 6 + block/dirty-bitmap.c | 2 +- block/export/export.c | 5 +- block/export/fuse.c | 129 +- block/export/vhost-user-blk-server.c | 9 +- block/file-posix.c | 293 +- block/io.c | 65 +- block/io_uring.c | 16 +- block/iscsi-opts.c | 1 + block/linux-aio.c | 9 +- block/meson.build | 22 +- block/mirror.c | 22 +- block/monitor/block-hmp-cmds.c | 31 +- block/nbd.c | 573 +- block/nfs.c | 5 +- block/nvme.c | 22 + block/progress_meter.c | 64 + block/qapi.c | 13 +- block/qcow2-snapshot.c | 2 +- block/qcow2.c | 48 +- block/quorum.c | 2 +- block/rbd.c | 781 +- block/replication.c | 120 +- block/sheepdog.c | 3356 --- block/snapshot.c | 16 +- block/ssh.c | 66 +- block/trace-events | 17 +- block/vhdx-log.c | 2 +- block/vvfat.c | 53 +- block/write-threshold.c | 91 +- blockdev-nbd.c | 6 +- blockdev.c | 84 +- blockjob.c | 60 +- bsd-user/bsdload.c | 59 +- bsd-user/elfload.c | 328 +- bsd-user/i386/target_signal.h | 20 - bsd-user/main.c | 296 +- bsd-user/mmap.c | 22 +- bsd-user/qemu.h | 131 +- bsd-user/signal.c | 1 - bsd-user/sparc/target_signal.h | 27 - bsd-user/sparc64/target_signal.h | 27 - bsd-user/strace.c | 8 - bsd-user/syscall.c | 25 +- bsd-user/uaccess.c | 2 +- bsd-user/x86_64/target_signal.h | 19 - chardev/baum.c | 1 + chardev/char-fd.c | 119 +- chardev/char-fe.c | 2 +- chardev/char-mux.c | 1 - chardev/char-socket.c | 22 +- chardev/char.c | 27 +- chardev/spice.c | 5 + chardev/trace-events | 2 +- configs/devices/aarch64-softmmu/default.mak | 8 + configs/devices/aarch64-softmmu/minimal.mak | 9 + configs/devices/alpha-softmmu/default.mak | 10 + configs/devices/arm-softmmu/default.mak | 44 + configs/devices/avr-softmmu/default.mak | 5 + configs/devices/cris-softmmu/default.mak | 5 + configs/devices/hppa-softmmu/default.mak | 9 + configs/devices/i386-softmmu/default.mak | 31 + configs/devices/m68k-softmmu/default.mak | 11 + configs/devices/microblaze-softmmu/default.mak | 7 + configs/devices/microblazeel-softmmu/default.mak | 3 + configs/devices/mips-softmmu/common.mak | 41 + configs/devices/mips-softmmu/default.mak | 3 + configs/devices/mips64-softmmu/default.mak | 4 + configs/devices/mips64el-softmmu/default.mak | 11 + configs/devices/mipsel-softmmu/default.mak | 3 + configs/devices/nios2-softmmu/default.mak | 8 + configs/devices/or1k-softmmu/default.mak | 5 + configs/devices/ppc-softmmu/default.mak | 19 + configs/devices/ppc64-softmmu/default.mak | 10 + configs/devices/riscv32-softmmu/default.mak | 15 + configs/devices/riscv64-softmmu/default.mak | 16 + configs/devices/rx-softmmu/default.mak | 3 + configs/devices/s390x-softmmu/default.mak | 13 + configs/devices/sh4-softmmu/default.mak | 11 + configs/devices/sh4eb-softmmu/default.mak | 3 + configs/devices/sparc-softmmu/default.mak | 11 + configs/devices/sparc64-softmmu/default.mak | 12 + configs/devices/tricore-softmmu/default.mak | 2 + configs/devices/x86_64-softmmu/default.mak | 3 + configs/devices/xtensa-softmmu/default.mak | 9 + configs/devices/xtensaeb-softmmu/default.mak | 3 + configs/targets/aarch64-linux-user.mak | 5 + configs/targets/aarch64-softmmu.mak | 5 + configs/targets/aarch64_be-linux-user.mak | 6 + configs/targets/alpha-linux-user.mak | 4 + configs/targets/alpha-softmmu.mak | 3 + configs/targets/arm-linux-user.mak | 6 + configs/targets/arm-softmmu.mak | 4 + configs/targets/armeb-linux-user.mak | 7 + configs/targets/avr-softmmu.mak | 2 + configs/targets/cris-linux-user.mak | 1 + configs/targets/cris-softmmu.mak | 1 + configs/targets/hexagon-linux-user.mak | 1 + configs/targets/hppa-linux-user.mak | 5 + configs/targets/hppa-softmmu.mak | 4 + configs/targets/i386-bsd-user.mak | 2 + configs/targets/i386-linux-user.mak | 4 + configs/targets/i386-softmmu.mak | 3 + configs/targets/m68k-linux-user.mak | 6 + configs/targets/m68k-softmmu.mak | 3 + configs/targets/microblaze-linux-user.mak | 5 + configs/targets/microblaze-softmmu.mak | 4 + configs/targets/microblazeel-linux-user.mak | 4 + configs/targets/microblazeel-softmmu.mak | 3 + configs/targets/mips-linux-user.mak | 6 + configs/targets/mips-softmmu.mak | 4 + configs/targets/mips64-linux-user.mak | 7 + configs/targets/mips64-softmmu.mak | 4 + configs/targets/mips64el-linux-user.mak | 6 + configs/targets/mips64el-softmmu.mak | 4 + configs/targets/mipsel-linux-user.mak | 5 + configs/targets/mipsel-softmmu.mak | 3 + configs/targets/mipsn32-linux-user.mak | 8 + configs/targets/mipsn32el-linux-user.mak | 7 + configs/targets/nios2-linux-user.mak | 1 + configs/targets/nios2-softmmu.mak | 1 + configs/targets/or1k-linux-user.mak | 2 + configs/targets/or1k-softmmu.mak | 2 + configs/targets/ppc-linux-user.mak | 5 + configs/targets/ppc-softmmu.mak | 4 + configs/targets/ppc64-linux-user.mak | 7 + configs/targets/ppc64-softmmu.mak | 6 + configs/targets/ppc64abi32-linux-user.mak | 8 + configs/targets/ppc64le-linux-user.mak | 6 + configs/targets/riscv32-linux-user.mak | 5 + configs/targets/riscv32-softmmu.mak | 5 + configs/targets/riscv64-linux-user.mak | 5 + configs/targets/riscv64-softmmu.mak | 5 + configs/targets/rx-softmmu.mak | 3 + configs/targets/s390x-linux-user.mak | 5 + configs/targets/s390x-softmmu.mak | 4 + configs/targets/sh4-linux-user.mak | 5 + configs/targets/sh4-softmmu.mak | 2 + configs/targets/sh4eb-linux-user.mak | 6 + configs/targets/sh4eb-softmmu.mak | 3 + configs/targets/sparc-linux-user.mak | 5 + configs/targets/sparc-softmmu.mak | 3 + configs/targets/sparc32plus-linux-user.mak | 8 + configs/targets/sparc64-linux-user.mak | 7 + configs/targets/sparc64-softmmu.mak | 4 + configs/targets/tricore-softmmu.mak | 1 + configs/targets/x86_64-bsd-user.mak | 3 + configs/targets/x86_64-linux-user.mak | 5 + configs/targets/x86_64-softmmu.mak | 4 + configs/targets/xtensa-linux-user.mak | 4 + configs/targets/xtensa-softmmu.mak | 2 + configs/targets/xtensaeb-linux-user.mak | 5 + configs/targets/xtensaeb-softmmu.mak | 3 + configure | 2032 +- contrib/gitdm/aliases | 6 + contrib/gitdm/domain-map | 7 + contrib/gitdm/group-map-academics | 3 + contrib/gitdm/group-map-individuals | 5 + contrib/gitdm/group-map-interns | 13 + contrib/gitdm/group-map-netflix | 5 + contrib/gitdm/group-map-robots | 7 + contrib/plugins/Makefile | 4 +- contrib/plugins/cache.c | 640 + contrib/plugins/execlog.c | 153 + contrib/vhost-user-gpu/meson.build | 2 +- contrib/vhost-user-gpu/vhost-user-gpu.c | 29 +- contrib/vhost-user-gpu/virgl.c | 20 +- contrib/vhost-user-gpu/vugpu.h | 2 +- contrib/vhost-user-input/main.c | 8 +- cpu.c | 68 +- crypto/cipher-builtin.c.inc | 132 - crypto/cipher-gcrypt.c.inc | 143 +- crypto/cipher-gnutls.c.inc | 335 + crypto/cipher-nettle.c.inc | 117 +- crypto/cipher.c | 30 +- crypto/desrfb.c | 416 - crypto/hash-gnutls.c | 104 + crypto/hash-nettle.c | 10 +- crypto/hmac-gnutls.c | 139 + crypto/hmac-nettle.c | 12 +- crypto/init.c | 62 - crypto/meson.build | 49 +- crypto/pbkdf-gnutls.c | 90 + crypto/tls-cipher-suites.c | 7 + crypto/tlscreds.c | 12 + crypto/tlscredsanon.c | 2 + crypto/tlscredspriv.h | 45 + crypto/tlscredspsk.c | 2 + crypto/tlscredsx509.c | 3 +- crypto/tlssession.c | 1 + crypto/trace-events | 2 +- default-configs/devices/aarch64-softmmu.mak | 8 - default-configs/devices/alpha-softmmu.mak | 10 - default-configs/devices/arm-softmmu.mak | 46 - default-configs/devices/avr-softmmu.mak | 5 - default-configs/devices/cris-softmmu.mak | 5 - default-configs/devices/hppa-softmmu.mak | 9 - default-configs/devices/i386-softmmu.mak | 31 - default-configs/devices/lm32-softmmu.mak | 12 - default-configs/devices/m68k-softmmu.mak | 11 - default-configs/devices/microblaze-softmmu.mak | 7 - default-configs/devices/microblazeel-softmmu.mak | 3 - default-configs/devices/mips-softmmu-common.mak | 41 - default-configs/devices/mips-softmmu.mak | 3 - default-configs/devices/mips64-softmmu.mak | 4 - default-configs/devices/mips64el-softmmu.mak | 15 - default-configs/devices/mipsel-softmmu.mak | 3 - default-configs/devices/moxie-softmmu.mak | 5 - default-configs/devices/nios2-softmmu.mak | 8 - default-configs/devices/or1k-softmmu.mak | 5 - default-configs/devices/ppc-softmmu.mak | 18 - default-configs/devices/ppc64-softmmu.mak | 11 - default-configs/devices/riscv32-softmmu.mak | 15 - default-configs/devices/riscv64-softmmu.mak | 15 - default-configs/devices/rx-softmmu.mak | 3 - default-configs/devices/s390x-softmmu.mak | 13 - default-configs/devices/sh4-softmmu.mak | 11 - default-configs/devices/sh4eb-softmmu.mak | 3 - default-configs/devices/sparc-softmmu.mak | 11 - default-configs/devices/sparc64-softmmu.mak | 12 - default-configs/devices/tricore-softmmu.mak | 1 - default-configs/devices/unicore32-softmmu.mak | 6 - default-configs/devices/x86_64-softmmu.mak | 3 - default-configs/devices/xtensa-softmmu.mak | 9 - default-configs/devices/xtensaeb-softmmu.mak | 3 - default-configs/targets/aarch64-linux-user.mak | 5 - default-configs/targets/aarch64-softmmu.mak | 5 - default-configs/targets/aarch64_be-linux-user.mak | 6 - default-configs/targets/alpha-linux-user.mak | 4 - default-configs/targets/alpha-softmmu.mak | 3 - default-configs/targets/arm-linux-user.mak | 6 - default-configs/targets/arm-softmmu.mak | 4 - default-configs/targets/armeb-linux-user.mak | 7 - default-configs/targets/avr-softmmu.mak | 2 - default-configs/targets/cris-linux-user.mak | 1 - default-configs/targets/cris-softmmu.mak | 1 - default-configs/targets/hexagon-linux-user.mak | 1 - default-configs/targets/hppa-linux-user.mak | 5 - default-configs/targets/hppa-softmmu.mak | 4 - default-configs/targets/i386-bsd-user.mak | 2 - default-configs/targets/i386-linux-user.mak | 4 - default-configs/targets/i386-softmmu.mak | 3 - default-configs/targets/lm32-softmmu.mak | 2 - default-configs/targets/m68k-linux-user.mak | 6 - default-configs/targets/m68k-softmmu.mak | 3 - default-configs/targets/microblaze-linux-user.mak | 5 - default-configs/targets/microblaze-softmmu.mak | 4 - .../targets/microblazeel-linux-user.mak | 4 - default-configs/targets/microblazeel-softmmu.mak | 3 - default-configs/targets/mips-linux-user.mak | 6 - default-configs/targets/mips-softmmu.mak | 4 - default-configs/targets/mips64-linux-user.mak | 7 - default-configs/targets/mips64-softmmu.mak | 4 - default-configs/targets/mips64el-linux-user.mak | 6 - default-configs/targets/mips64el-softmmu.mak | 4 - default-configs/targets/mipsel-linux-user.mak | 5 - default-configs/targets/mipsel-softmmu.mak | 3 - default-configs/targets/mipsn32-linux-user.mak | 8 - default-configs/targets/mipsn32el-linux-user.mak | 7 - default-configs/targets/moxie-softmmu.mak | 2 - default-configs/targets/nios2-linux-user.mak | 1 - default-configs/targets/nios2-softmmu.mak | 1 - default-configs/targets/or1k-linux-user.mak | 2 - default-configs/targets/or1k-softmmu.mak | 2 - default-configs/targets/ppc-linux-user.mak | 5 - default-configs/targets/ppc-softmmu.mak | 4 - default-configs/targets/ppc64-linux-user.mak | 7 - default-configs/targets/ppc64-softmmu.mak | 6 - default-configs/targets/ppc64abi32-linux-user.mak | 8 - default-configs/targets/ppc64le-linux-user.mak | 6 - default-configs/targets/riscv32-linux-user.mak | 5 - default-configs/targets/riscv32-softmmu.mak | 5 - default-configs/targets/riscv64-linux-user.mak | 5 - default-configs/targets/riscv64-softmmu.mak | 5 - default-configs/targets/rx-softmmu.mak | 3 - default-configs/targets/s390x-linux-user.mak | 5 - default-configs/targets/s390x-softmmu.mak | 4 - default-configs/targets/sh4-linux-user.mak | 5 - default-configs/targets/sh4-softmmu.mak | 2 - default-configs/targets/sh4eb-linux-user.mak | 6 - default-configs/targets/sh4eb-softmmu.mak | 3 - default-configs/targets/sparc-bsd-user.mak | 3 - default-configs/targets/sparc-linux-user.mak | 5 - default-configs/targets/sparc-softmmu.mak | 3 - default-configs/targets/sparc32plus-linux-user.mak | 8 - default-configs/targets/sparc64-bsd-user.mak | 4 - default-configs/targets/sparc64-linux-user.mak | 6 - default-configs/targets/sparc64-softmmu.mak | 4 - default-configs/targets/tricore-softmmu.mak | 1 - default-configs/targets/unicore32-softmmu.mak | 1 - default-configs/targets/x86_64-bsd-user.mak | 3 - default-configs/targets/x86_64-linux-user.mak | 5 - default-configs/targets/x86_64-softmmu.mak | 4 - default-configs/targets/xtensa-linux-user.mak | 5 - default-configs/targets/xtensa-softmmu.mak | 3 - default-configs/targets/xtensaeb-linux-user.mak | 6 - default-configs/targets/xtensaeb-softmmu.mak | 4 - disas.c | 1 - disas/arm-a64.cc | 2 - disas/hexagon.c | 3 +- disas/libvixl/vixl/code-buffer.h | 2 +- disas/libvixl/vixl/globals.h | 16 +- disas/libvixl/vixl/invalset.h | 2 +- disas/libvixl/vixl/platform.h | 2 + disas/libvixl/vixl/utils.cc | 2 +- disas/libvixl/vixl/utils.h | 2 +- disas/lm32.c | 361 - disas/meson.build | 2 - disas/moxie.c | 360 - disas/nanomips.cpp | 2 - docs/_templates/editpage.html | 5 - docs/_templates/footer.html | 14 + docs/about/build-platforms.rst | 62 + docs/about/deprecated.rst | 339 + docs/about/index.rst | 27 + docs/about/license.rst | 11 + docs/about/removed-features.rst | 713 + docs/amd-memory-encryption.txt | 89 +- docs/barrier.txt | 370 - docs/bootindex.txt | 52 - docs/bypass-iommu.txt | 89 + docs/ccid.txt | 15 +- docs/conf.py | 55 +- docs/devel/_templates/editpage.html | 5 - docs/devel/build-system.rst | 167 +- docs/devel/ci.rst | 167 + docs/devel/control-flow-integrity.rst | 4 +- docs/devel/decodetree.rst | 11 +- docs/devel/ebpf_rss.rst | 125 + docs/devel/index.rst | 14 +- docs/devel/kconfig.rst | 2 +- docs/devel/lockcnt.txt | 2 +- docs/devel/migration.rst | 36 +- docs/devel/modules.rst | 5 + docs/devel/multi-thread-tcg.rst | 5 +- docs/devel/qapi-code-gen.rst | 1986 ++ docs/devel/qapi-code-gen.txt | 1897 -- docs/devel/qgraph.rst | 66 +- docs/devel/qom.rst | 8 + docs/devel/secure-coding-practices.rst | 9 + docs/devel/tcg-plugins.rst | 100 +- docs/devel/tcg.rst | 103 +- docs/devel/testing.rst | 116 +- docs/devel/ui.rst | 8 + docs/devel/vfio-migration.rst | 150 + docs/devel/writing-qmp-commands.rst | 622 + docs/devel/writing-qmp-commands.txt | 597 - docs/hyperv.txt | 9 +- docs/index.rst | 1 + docs/interop/_templates/editpage.html | 5 - docs/interop/barrier.rst | 426 + docs/interop/firmware.json | 47 +- docs/interop/index.rst | 10 +- docs/interop/live-block-operations.rst | 32 +- docs/interop/qemu-ga-ref.rst | 10 +- docs/interop/qemu-qmp-ref.rst | 10 +- docs/interop/qemu-storage-daemon-qmp-ref.rst | 10 +- docs/interop/vhost-user-gpu.rst | 7 +- docs/interop/vhost-user.rst | 14 +- docs/meson.build | 8 +- docs/pcie_pci_bridge.txt | 6 +- docs/specs/_templates/editpage.html | 5 - docs/specs/index.rst | 7 +- docs/sphinx-static/theme_overrides.css | 161 + docs/sphinx/qapidoc.py | 3 +- docs/system/_templates/editpage.html | 5 - docs/system/arm/aspeed.rst | 7 +- docs/system/arm/cpu-features.rst | 131 +- docs/system/arm/cubieboard.rst | 16 + docs/system/arm/emcraft-sf2.rst | 15 + docs/system/arm/emulation.rst | 103 + docs/system/arm/highbank.rst | 19 + docs/system/arm/imx25-pdk.rst | 19 + docs/system/arm/kzm.rst | 18 + docs/system/arm/mainstone.rst | 25 + docs/system/arm/mps2.rst | 10 + docs/system/arm/nrf.rst | 51 + docs/system/arm/nuvoton.rst | 13 +- docs/system/arm/sabrelite.rst | 2 +- docs/system/arm/sbsa.rst | 6 +- docs/system/arm/stm32.rst | 66 + docs/system/arm/virt.rst | 2 +- docs/system/authz.rst | 263 + docs/system/barrier.rst | 44 + docs/system/bootindex.rst | 76 + docs/system/build-platforms.rst | 62 - docs/system/cpu-hotplug.rst | 2 +- docs/system/cpu-models-x86-abi.csv | 67 + docs/system/cpu-models-x86.rst.inc | 24 +- docs/system/deprecated.rst | 386 - docs/system/device-emulation.rst | 90 + docs/system/device-url-syntax.rst.inc | 18 - docs/system/devices/ivshmem.rst | 64 + docs/system/devices/net.rst | 100 + docs/system/devices/nvme.rst | 237 + docs/system/devices/usb.rst | 351 + docs/system/devices/vhost-user.rst | 59 + docs/system/devices/virtio-pmem.rst | 76 + docs/system/generic-loader.rst | 13 +- docs/system/guest-loader.rst | 6 +- docs/system/index.rst | 21 +- docs/system/ivshmem.rst | 64 - docs/system/license.rst | 11 - docs/system/net.rst | 100 - docs/system/nvme.rst | 225 - docs/system/ppc/powernv.rst | 8 +- docs/system/ppc/ppce500.rst | 164 + docs/system/qemu-block-drivers.rst.inc | 69 - docs/system/removed-features.rst | 463 - docs/system/riscv/microchip-icicle-kit.rst | 92 +- docs/system/riscv/shakti-c.rst | 82 + docs/system/riscv/sifive_u.rst | 77 +- docs/system/riscv/virt.rst | 138 + docs/system/s390x/protvirt.rst | 12 +- docs/system/secrets.rst | 162 + docs/system/target-arm.rst | 14 + docs/system/target-ppc.rst | 1 + docs/system/target-riscv.rst | 15 +- docs/system/usb.rst | 140 - docs/system/virtio-pmem.rst | 76 - docs/system/vnc-security.rst | 7 +- docs/tools/_templates/editpage.html | 5 - docs/tools/index.rst | 7 +- docs/tools/qemu-img.rst | 56 +- docs/tools/virtiofsd.rst | 80 +- docs/usb-storage.txt | 59 - docs/usb2.txt | 172 - docs/user/_templates/editpage.html | 5 - docs/user/index.rst | 7 +- dump/dump.c | 1 - dump/win_dump.c | 1 - ebpf/ebpf_rss-stub.c | 40 + ebpf/ebpf_rss.c | 165 + ebpf/ebpf_rss.h | 44 + ebpf/meson.build | 1 + ebpf/rss.bpf.skeleton.h | 431 + ebpf/trace-events | 4 + ebpf/trace.h | 1 + fpu/meson.build | 1 + fpu/softfloat-parts-addsub.c.inc | 62 + fpu/softfloat-parts.c.inc | 1492 ++ fpu/softfloat-specialize.c.inc | 444 +- fpu/softfloat.c | 7978 ++---- gdbstub.c | 344 +- gitdm.config | 13 +- hmp-commands-info.hx | 29 +- hmp-commands.hx | 22 +- hw/9pfs/9p-local.c | 5 + hw/9pfs/9p-posix-acl.c | 5 + hw/9pfs/9p-proxy.c | 5 + hw/9pfs/9p-synth.c | 5 + hw/9pfs/9p-util.c | 5 + hw/9pfs/9p-xattr-user.c | 5 + hw/9pfs/9p-xattr.c | 5 + hw/9pfs/9p.c | 142 +- hw/9pfs/9p.h | 2 +- hw/9pfs/codir.c | 5 + hw/9pfs/cofile.c | 5 + hw/9pfs/cofs.c | 5 + hw/9pfs/coth.c | 5 + hw/9pfs/coxattr.c | 5 + hw/9pfs/trace-events | 2 +- hw/9pfs/virtio-9p-device.c | 5 + hw/9pfs/xen-9p-backend.c | 5 + hw/Kconfig | 5 +- hw/acpi/Kconfig | 4 + hw/acpi/acpi-x86-stub.c | 6 + hw/acpi/aml-build.c | 17 +- hw/acpi/cpu.c | 1 - hw/acpi/generic_event_device.c | 3 +- hw/acpi/ghes-stub.c | 22 + hw/acpi/ghes.c | 17 + hw/acpi/ich9.c | 71 +- hw/acpi/memory_hotplug.c | 1 - hw/acpi/meson.build | 9 +- hw/acpi/pcihp.c | 27 +- hw/acpi/piix4.c | 5 +- hw/acpi/tpm.c | 2 +- hw/acpi/trace-events | 2 +- hw/adc/Kconfig | 3 + hw/adc/max111x.c | 236 + hw/adc/meson.build | 2 + hw/adc/trace-events | 2 +- hw/adc/zynq-xadc.c | 305 + hw/alpha/Kconfig | 4 +- hw/alpha/alpha_sys.h | 4 +- hw/alpha/dp264.c | 60 +- hw/alpha/trace-events | 2 +- hw/alpha/typhoon.c | 22 +- hw/arm/Kconfig | 24 +- hw/arm/allwinner-a10.c | 2 - hw/arm/allwinner-h3.c | 2 - hw/arm/armsse.c | 35 +- hw/arm/armv7m.c | 9 +- hw/arm/aspeed.c | 162 +- hw/arm/aspeed_ast2600.c | 25 +- hw/arm/aspeed_soc.c | 26 +- hw/arm/bcm2835_peripherals.c | 13 +- hw/arm/bcm2836.c | 1 - hw/arm/boot.c | 10 +- hw/arm/cubieboard.c | 4 - hw/arm/digic_boards.c | 3 - hw/arm/exynos4210.c | 1 - hw/arm/exynos4_boards.c | 2 - hw/arm/fsl-imx25.c | 2 - hw/arm/fsl-imx31.c | 1 - hw/arm/highbank.c | 3 +- hw/arm/imx25_pdk.c | 7 +- hw/arm/kzm.c | 1 - hw/arm/mcimx6ul-evk.c | 3 +- hw/arm/mcimx7d-sabre.c | 3 +- hw/arm/meson.build | 2 + hw/arm/mps2-tz.c | 147 +- hw/arm/msf2-soc.c | 1 - hw/arm/msf2-som.c | 1 - hw/arm/musicpal.c | 2 - hw/arm/npcm7xx.c | 1 - hw/arm/npcm7xx_boards.c | 113 +- hw/arm/nrf51_soc.c | 2 - hw/arm/nseries.c | 8 +- hw/arm/omap1.c | 1 - hw/arm/omap2.c | 1 - hw/arm/orangepi.c | 3 - hw/arm/palm.c | 1 - hw/arm/pxa2xx.c | 2 +- hw/arm/pxa2xx_pic.c | 2 +- hw/arm/raspi.c | 2 - hw/arm/realview.c | 1 - hw/arm/sabrelite.c | 3 +- hw/arm/sbsa-ref.c | 8 - hw/arm/smmu-common.c | 1 - hw/arm/smmuv3-internal.h | 2 +- hw/arm/smmuv3.c | 57 +- hw/arm/spitz.c | 10 +- hw/arm/stellaris.c | 57 +- hw/arm/stm32f100_soc.c | 182 + hw/arm/stm32vldiscovery.c | 66 + hw/arm/strongarm.c | 3 +- hw/arm/sysbus-fdt.c | 4 + hw/arm/trace-events | 2 +- hw/arm/versatilepb.c | 1 - hw/arm/vexpress.c | 1 - hw/arm/virt-acpi-build.c | 120 +- hw/arm/virt.c | 50 +- hw/arm/xilinx_zynq.c | 5 +- hw/arm/xlnx-versal-virt.c | 2 - hw/arm/xlnx-versal.c | 1 - hw/arm/xlnx-zcu102.c | 1 - hw/arm/xlnx-zynqmp.c | 2 - hw/arm/z2.c | 4 +- hw/audio/adlib.c | 3 +- hw/audio/meson.build | 1 - hw/audio/milkymist-ac97.c | 360 - hw/audio/sb16.c | 23 +- hw/audio/trace-events | 14 +- hw/avr/arduino.c | 1 - hw/avr/atmega.c | 3 +- hw/block/Kconfig | 17 +- hw/block/block.c | 42 +- hw/block/dataplane/trace-events | 2 +- hw/block/dataplane/virtio-blk.c | 52 +- hw/block/ecc.c | 2 +- hw/block/fdc-internal.h | 158 + hw/block/fdc-isa.c | 320 + hw/block/fdc-sysbus.c | 251 + hw/block/fdc.c | 621 +- hw/block/m25p80.c | 2 + hw/block/meson.build | 3 +- hw/block/nvme-dif.c | 518 - hw/block/nvme-dif.h | 63 - hw/block/nvme-ns.c | 594 - hw/block/nvme-ns.h | 229 - hw/block/nvme-subsys.c | 91 - hw/block/nvme-subsys.h | 59 - hw/block/nvme.c | 6363 ----- hw/block/nvme.h | 266 - hw/block/pflash_cfi02.c | 10 +- hw/block/trace-events | 211 +- hw/block/vhost-user-blk.c | 168 +- hw/block/virtio-blk.c | 2 +- hw/char/Kconfig | 1 + hw/char/cadence_uart.c | 2 +- hw/char/cmsdk-apb-uart.c | 2 +- hw/char/ibex_uart.c | 40 +- hw/char/lm32_juart.c | 166 - hw/char/lm32_uart.c | 314 - hw/char/mchp_pfsoc_mmuart.c | 1 - hw/char/meson.build | 4 +- hw/char/milkymist-uart.c | 258 - hw/char/nrf51_uart.c | 2 +- hw/char/riscv_htif.c | 1 - hw/char/serial.c | 2 +- hw/char/shakti_uart.c | 185 + hw/char/sifive_uart.c | 154 +- hw/char/spapr_vty.c | 1 - hw/char/trace-events | 23 +- hw/char/virtio-console.c | 2 +- hw/char/virtio-serial-bus.c | 1 - hw/core/cpu-common.c | 313 + hw/core/cpu-sysemu.c | 145 + hw/core/cpu.c | 438 - hw/core/generic-loader.c | 1 - hw/core/guest-loader.c | 1 - hw/core/loader.c | 1 - hw/core/machine-hmp-cmds.c | 6 + hw/core/machine-qmp-cmds.c | 10 +- hw/core/machine.c | 199 +- hw/core/meson.build | 3 +- hw/core/null-machine.c | 1 - hw/core/numa.c | 87 +- hw/cris/axis_dev88.c | 1 - hw/display/Kconfig | 4 - hw/display/ati.c | 2 +- hw/display/edid-generate.c | 214 +- hw/display/g364fb.c | 32 +- hw/display/macfb.c | 1 + hw/display/meson.build | 22 +- hw/display/milkymist-tmu2.c | 551 - hw/display/milkymist-vgafb.c | 360 - hw/display/milkymist-vgafb_template.h | 74 - hw/display/next-fb.c | 2 - hw/display/qxl.c | 49 +- hw/display/qxl.h | 1 - hw/display/sm501.c | 16 +- hw/display/trace-events | 14 +- hw/display/vga-pci.c | 2 +- hw/display/vga.c | 5 +- hw/display/vhost-user-gpu-pci.c | 1 + hw/display/vhost-user-gpu.c | 7 +- hw/display/vhost-user-vga.c | 1 + hw/display/virtio-gpu-3d.c | 628 - hw/display/virtio-gpu-base.c | 10 +- hw/display/virtio-gpu-gl.c | 171 + hw/display/virtio-gpu-pci-gl.c | 58 + hw/display/virtio-gpu-pci.c | 2 + hw/display/virtio-gpu-udmabuf.c | 223 + hw/display/virtio-gpu-virgl.c | 634 + hw/display/virtio-gpu.c | 632 +- hw/display/virtio-vga-gl.c | 50 + hw/display/virtio-vga.c | 2 + hw/display/xlnx_dp.c | 2 +- hw/dma/meson.build | 1 - hw/dma/pl080.c | 1 - hw/dma/puv3_dma.c | 119 - hw/dma/pxa2xx_dma.c | 4 +- hw/dma/sifive_pdma.c | 1 - hw/dma/trace-events | 2 +- hw/dma/xlnx_csu_dma.c | 1 - hw/gpio/aspeed_gpio.c | 7 +- hw/gpio/gpio_pwr.c | 2 +- hw/gpio/meson.build | 1 - hw/gpio/pl061.c | 345 +- hw/gpio/puv3_gpio.c | 154 - hw/gpio/trace-events | 11 +- hw/hppa/dino.c | 2 - hw/hppa/lasi.c | 3 - hw/hppa/machine.c | 1 - hw/hppa/trace-events | 2 +- hw/hyperv/vmbus.c | 20 +- hw/i2c/Kconfig | 8 + hw/i2c/aspeed_i2c.c | 5 +- hw/i2c/core.c | 131 +- hw/i2c/i2c_mux_pca954x.c | 290 + hw/i2c/imx_i2c.c | 2 +- hw/i2c/meson.build | 2 + hw/i2c/mpc_i2c.c | 1 - hw/i2c/pm_smbus.c | 4 +- hw/i2c/pmbus_device.c | 1612 ++ hw/i2c/ppc4xx_i2c.c | 15 +- hw/i2c/smbus_eeprom.c | 2 +- hw/i2c/smbus_master.c | 22 +- hw/i2c/trace-events | 7 +- hw/i386/Kconfig | 8 +- hw/i386/acpi-build.c | 196 +- hw/i386/acpi-build.h | 5 + hw/i386/acpi-common.h | 6 +- hw/i386/acpi-microvm.c | 1 - hw/i386/amd_iommu.c | 10 +- hw/i386/fw_cfg.c | 4 +- hw/i386/intel_iommu.c | 2 - hw/i386/kvm/apic.c | 3 +- hw/i386/kvm/clock.c | 5 +- hw/i386/kvm/i8254.c | 10 +- hw/i386/kvm/i8259.c | 4 +- hw/i386/kvm/ioapic.c | 5 +- hw/i386/kvmvapic.c | 1 - hw/i386/meson.build | 2 + hw/i386/microvm.c | 1 - hw/i386/pc.c | 141 +- hw/i386/pc_piix.c | 18 +- hw/i386/pc_q35.c | 25 +- hw/i386/pc_sysfw.c | 108 - hw/i386/pc_sysfw_ovmf-stubs.c | 26 + hw/i386/pc_sysfw_ovmf.c | 151 + hw/i386/trace-events | 2 +- hw/i386/vmport.c | 1 - hw/i386/x86-iommu.c | 1 - hw/i386/x86.c | 39 +- hw/i386/xen/trace-events | 2 +- hw/i386/xen/xen-hvm.c | 1 - hw/i386/xen/xen-mapcache.c | 7 +- hw/i386/xen/xen_platform.c | 2 - hw/ide/Kconfig | 3 +- hw/ide/ahci_internal.h | 1 - hw/ide/ioport.c | 16 +- hw/ide/piix.c | 22 +- hw/ide/trace-events | 2 +- hw/input/hid.c | 4 +- hw/input/lasips2.c | 3 - hw/input/lm832x.c | 2 +- hw/input/meson.build | 1 - hw/input/milkymist-softusb.c | 319 - hw/input/pckbd.c | 353 +- hw/input/ps2.c | 22 +- hw/input/trace-events | 11 +- hw/input/vhost-user-input.c | 6 +- hw/input/virtio-input-host.c | 5 +- hw/intc/apic.c | 1 - hw/intc/apic_common.c | 1 - hw/intc/arm_gic_kvm.c | 2 - hw/intc/arm_gicv3.c | 1 - hw/intc/arm_gicv3_cpuif.c | 53 +- hw/intc/arm_gicv3_kvm.c | 1 - hw/intc/arm_gicv3_redist.c | 4 +- hw/intc/armv7m_nvic.c | 47 +- hw/intc/grlib_irqmp.c | 1 - hw/intc/ibex_plic.c | 20 +- hw/intc/imx_gpcv2.c | 1 - hw/intc/lm32_pic.c | 195 - hw/intc/meson.build | 2 - hw/intc/ompic.c | 1 - hw/intc/openpic.c | 1 - hw/intc/openpic_kvm.c | 2 - hw/intc/ppc-uic.c | 2 +- hw/intc/puv3_intc.c | 147 - hw/intc/s390_flic.c | 1 - hw/intc/s390_flic_kvm.c | 4 +- hw/intc/sifive_plic.c | 2 - hw/intc/spapr_xive.c | 2 +- hw/intc/trace-events | 11 +- hw/intc/xics.c | 1 - hw/intc/xics_kvm.c | 1 - hw/intc/xics_spapr.c | 1 - hw/ipmi/ipmi_bmc_sim.c | 4 +- hw/ipmi/isa_ipmi_bt.c | 1 - hw/ipmi/isa_ipmi_kcs.c | 1 - hw/isa/Kconfig | 12 +- hw/isa/isa-bus.c | 14 +- hw/isa/isa-superio.c | 1 - hw/isa/lpc_ich9.c | 2 - hw/isa/piix3.c | 1 - hw/isa/piix4.c | 6 +- hw/isa/trace-events | 2 +- hw/isa/vt82c686.c | 423 +- hw/lm32/Kconfig | 18 - hw/lm32/lm32.h | 48 - hw/lm32/lm32_boards.c | 333 - hw/lm32/lm32_hwsetup.h | 179 - hw/lm32/meson.build | 6 - hw/lm32/milkymist-hw.h | 133 - hw/lm32/milkymist.c | 250 - hw/m68k/an5206.c | 1 - hw/m68k/mcf5208.c | 1 - hw/m68k/mcf_intc.c | 1 - hw/m68k/next-cube.c | 6 +- hw/m68k/next-kbd.c | 3 - hw/m68k/q800.c | 24 +- hw/m68k/virt.c | 3 - hw/mem/Kconfig | 2 - hw/mem/meson.build | 3 +- hw/mem/pc-dimm.c | 33 +- hw/mem/sparse-mem.c | 1 - hw/mem/trace-events | 2 +- hw/meson.build | 5 +- hw/microblaze/boot.c | 1 - hw/mips/Kconfig | 8 +- hw/mips/boston.c | 1 - hw/mips/fuloong2e.c | 2 - hw/mips/gt64xxx_pci.c | 1 - hw/mips/jazz.c | 82 +- hw/mips/loongson3_virt.c | 4 - hw/mips/malta.c | 3 - hw/mips/meson.build | 9 +- hw/mips/mips_int.c | 1 - hw/mips/mipssim.c | 2 - hw/misc/Kconfig | 15 - hw/misc/aspeed_hace.c | 389 + hw/misc/aspeed_xdma.c | 124 +- hw/misc/auxbus.c | 68 +- hw/misc/bcm2835_powermgt.c | 160 + hw/misc/emc141x.c | 326 - hw/misc/imx7_snvs.c | 1 - hw/misc/imx_ccm.c | 1 - hw/misc/imx_rngc.c | 1 - hw/misc/ivshmem.c | 5 +- hw/misc/led.c | 1 - hw/misc/macio/macio.c | 1 - hw/misc/macio/trace-events | 2 +- hw/misc/max111x.c | 236 - hw/misc/mchp_pfsoc_dmc.c | 1 - hw/misc/mchp_pfsoc_ioscb.c | 1 - hw/misc/mchp_pfsoc_sysreg.c | 1 - hw/misc/meson.build | 12 +- hw/misc/milkymist-hpdmc.c | 172 - hw/misc/milkymist-pfpu.c | 548 - hw/misc/mips_itu.c | 1 - hw/misc/mps2-scc.c | 13 +- hw/misc/mst_fpga.c | 2 +- hw/misc/npcm7xx_clk.c | 2 +- hw/misc/puv3_pm.c | 159 - hw/misc/pvpanic-isa.c | 1 - hw/misc/pvpanic-pci.c | 1 - hw/misc/sifive_e_prci.c | 1 - hw/misc/sifive_test.c | 1 - hw/misc/tmp105.c | 328 - hw/misc/tmp105.h | 55 - hw/misc/tmp421.c | 391 - hw/misc/trace-events | 12 +- hw/misc/virt_ctrl.c | 1 - hw/misc/zynq-xadc.c | 305 - hw/moxie/Kconfig | 3 - hw/moxie/meson.build | 4 - hw/moxie/moxiesim.c | 157 - hw/net/can/can_sja1000.c | 8 + hw/net/can/xlnx-zynqmp-can.c | 1 - hw/net/dp8393x.c | 500 +- hw/net/e1000.c | 17 + hw/net/e1000e.c | 8 +- hw/net/e1000e_core.c | 10 +- hw/net/i82596.c | 1 - hw/net/imx_fec.c | 8 +- hw/net/lasi_i82596.c | 1 - hw/net/meson.build | 1 - hw/net/milkymist-minimac2.c | 547 - hw/net/msf2-emac.c | 1 - hw/net/net_tx_pkt.c | 12 +- hw/net/rocker/rocker.h | 11 +- hw/net/spapr_llan.c | 1 - hw/net/trace-events | 33 +- hw/net/vhost_net.c | 11 +- hw/net/virtio-net.c | 120 +- hw/net/vmxnet3.c | 43 +- hw/net/xgmac.c | 1 - hw/nios2/10m50_devboard.c | 1 - hw/nios2/boot.c | 2 - hw/nios2/generic_nommu.c | 2 - hw/nubus/nubus-bus.c | 1 - hw/nvme/Kconfig | 4 + hw/nvme/ctrl.c | 6717 +++++ hw/nvme/dif.c | 509 + hw/nvme/meson.build | 1 + hw/nvme/ns.c | 601 + hw/nvme/nvme.h | 556 + hw/nvme/subsys.c | 89 + hw/nvme/trace-events | 202 + hw/nvme/trace.h | 1 + hw/nvram/nrf51_nvm.c | 1 - hw/nvram/spapr_nvram.c | 2 - hw/nvram/trace-events | 2 +- hw/openrisc/openrisc_sim.c | 1 - hw/pci-bridge/gen_pcie_root_port.c | 5 + hw/pci-bridge/pci_expander_bridge.c | 3 + hw/pci-host/Kconfig | 7 +- hw/pci-host/bonito.c | 13 +- hw/pci-host/gpex-acpi.c | 20 +- hw/pci-host/gpex.c | 56 +- hw/pci-host/meson.build | 6 +- hw/pci-host/mv64361.c | 950 + hw/pci-host/mv643xx.h | 918 + hw/pci-host/pnv_phb4.c | 2 +- hw/pci-host/ppce500.c | 1 - hw/pci-host/prep.c | 443 - hw/pci-host/q35.c | 5 + hw/pci-host/raven.c | 445 + hw/pci-host/sabre.c | 1 - hw/pci-host/sh_pci.c | 1 - hw/pci-host/trace-events | 11 +- hw/pci/pci.c | 35 +- hw/pci/pci_host.c | 1 + hw/pci/pcie.c | 8 +- hw/pci/pcie_host.c | 1 - hw/pci/pcie_port.c | 1 + hw/pci/trace-events | 2 +- hw/pcmcia/meson.build | 2 +- hw/ppc/Kconfig | 19 +- hw/ppc/e500.c | 2 - hw/ppc/mac_newworld.c | 6 +- hw/ppc/mac_oldworld.c | 2 - hw/ppc/meson.build | 8 + hw/ppc/pef.c | 6 +- hw/ppc/pegasos2.c | 913 + hw/ppc/pnv.c | 5 +- hw/ppc/pnv_core.c | 3 +- hw/ppc/pnv_pnor.c | 1 - hw/ppc/pnv_psi.c | 5 +- hw/ppc/ppc.c | 1 - hw/ppc/ppc405_boards.c | 3 - hw/ppc/ppc405_uc.c | 1 - hw/ppc/ppc440_bamboo.c | 1 - hw/ppc/ppc440_pcix.c | 1 - hw/ppc/ppc440_uc.c | 2 - hw/ppc/ppc4xx_devs.c | 1 - hw/ppc/ppc4xx_pci.c | 1 - hw/ppc/ppc_booke.c | 1 - hw/ppc/prep.c | 4 - hw/ppc/rs6000_mc.c | 1 - hw/ppc/sam460ex.c | 1 - hw/ppc/spapr.c | 144 +- hw/ppc/spapr_caps.c | 100 + hw/ppc/spapr_drc.c | 24 +- hw/ppc/spapr_events.c | 6 - hw/ppc/spapr_hcall.c | 667 +- hw/ppc/spapr_iommu.c | 1 - hw/ppc/spapr_nvdimm.c | 52 +- hw/ppc/spapr_pci.c | 2 - hw/ppc/spapr_pci_vfio.c | 41 +- hw/ppc/spapr_rng.c | 1 - hw/ppc/spapr_rtas.c | 19 +- hw/ppc/spapr_rtas_ddw.c | 1 - hw/ppc/spapr_rtc.c | 1 - hw/ppc/spapr_softmmu.c | 627 + hw/ppc/spapr_tpm_proxy.c | 1 - hw/ppc/spapr_vio.c | 2 +- hw/ppc/spapr_vof.c | 167 + hw/ppc/trace-events | 26 +- hw/ppc/virtex_ml507.c | 2 - hw/ppc/vof.c | 1062 + hw/rdma/trace-events | 2 +- hw/rdma/vmw/pvrdma_cmd.c | 7 + hw/rdma/vmw/pvrdma_dev_ring.c | 2 +- hw/rdma/vmw/pvrdma_main.c | 5 + hw/rdma/vmw/trace-events | 2 +- hw/remote/iohub.c | 1 - hw/remote/machine.c | 1 - hw/remote/memory.c | 8 +- hw/remote/mpqemu-link.c | 2 +- hw/remote/proxy-memory-listener.c | 2 - hw/remote/proxy.c | 3 +- hw/riscv/Kconfig | 16 + hw/riscv/boot.c | 6 +- hw/riscv/meson.build | 3 +- hw/riscv/microchip_pfsoc.c | 83 +- hw/riscv/numa.c | 1 - hw/riscv/opentitan.c | 34 +- hw/riscv/shakti_c.c | 181 + hw/riscv/sifive_e.c | 4 +- hw/riscv/sifive_u.c | 37 +- hw/riscv/spike.c | 13 +- hw/riscv/virt.c | 26 +- hw/rtc/m48t59.c | 1 - hw/rtc/mc146818rtc.c | 44 +- hw/rtc/trace-events | 2 +- hw/rx/rx-gdbsim.c | 5 +- hw/rx/rx62n.c | 2 - hw/s390x/3270-ccw.c | 3 +- hw/s390x/ccw-device.c | 1 + hw/s390x/ccw-device.h | 1 + hw/s390x/css-bridge.c | 1 - hw/s390x/css.c | 88 +- hw/s390x/ipl.c | 2 - hw/s390x/meson.build | 4 +- hw/s390x/pv.c | 1 - hw/s390x/s390-ccw.c | 4 +- hw/s390x/s390-pci-bus.c | 1 - hw/s390x/s390-pci-inst.c | 1 - hw/s390x/s390-stattrib-kvm.c | 3 +- hw/s390x/s390-stattrib.c | 1 - hw/s390x/s390-virtio-ccw.c | 21 +- hw/s390x/sclp.c | 2 - hw/s390x/sclpcpu.c | 1 - hw/s390x/tod-kvm.c | 2 +- hw/s390x/tod-qemu.c | 89 - hw/s390x/tod-tcg.c | 89 + hw/s390x/tod.c | 9 +- hw/s390x/trace-events | 2 +- hw/s390x/virtio-ccw-gpu.c | 3 + hw/s390x/virtio-ccw.c | 9 +- hw/scsi/esp.c | 199 +- hw/scsi/scsi-disk.c | 12 +- hw/scsi/scsi-generic.c | 15 +- hw/scsi/spapr_vscsi.c | 1 - hw/scsi/trace-events | 5 +- hw/scsi/vhost-scsi.c | 4 +- hw/scsi/vhost-user-scsi.c | 4 +- hw/scsi/virtio-scsi-dataplane.c | 72 +- hw/sd/cadence_sdhci.c | 2 - hw/sd/meson.build | 1 - hw/sd/milkymist-memcard.c | 335 - hw/sd/omap_mmc.c | 2 +- hw/sd/sd.c | 50 +- hw/sd/trace-events | 6 +- hw/sensor/Kconfig | 19 + hw/sensor/adm1272.c | 543 + hw/sensor/emc141x.c | 326 + hw/sensor/max34451.c | 775 + hw/sensor/meson.build | 5 + hw/sensor/tmp105.c | 328 + hw/sensor/tmp421.c | 391 + hw/sh4/r2d.c | 1 - hw/sh4/sh7750.c | 1 - hw/sh4/shix.c | 2 - hw/smbios/smbios.c | 124 +- hw/sparc/Kconfig | 2 +- hw/sparc/leon3.c | 38 +- hw/sparc/sun4m.c | 491 +- hw/sparc/trace-events | 6 +- hw/sparc64/Kconfig | 2 +- hw/sparc64/niagara.c | 1 - hw/sparc64/sparc64.c | 63 - hw/sparc64/trace-events | 6 +- hw/ssi/aspeed_smc.c | 120 +- hw/ssi/sifive_spi.c | 1 - hw/ssi/xilinx_spi.c | 1 - hw/timer/etraxfs_timer.c | 14 +- hw/timer/ibex_timer.c | 305 + hw/timer/lm32_timer.c | 249 - hw/timer/meson.build | 4 +- hw/timer/milkymist-sysctl.c | 361 - hw/timer/mips_gictimer.c | 1 - hw/timer/puv3_ost.c | 166 - hw/timer/sse-counter.c | 1 - hw/timer/trace-events | 19 +- hw/tpm/tpm_crb.c | 1 - hw/tpm/tpm_ppi.c | 2 +- hw/tpm/trace-events | 2 +- hw/tricore/Kconfig | 3 +- hw/tricore/meson.build | 3 +- hw/tricore/tc27x_soc.c | 4 - hw/tricore/triboard.c | 3 - hw/tricore/tricore_testboard.c | 9 +- hw/tricore/tricore_testdevice.c | 82 + hw/unicore32/Kconfig | 5 - hw/unicore32/meson.build | 5 - hw/unicore32/puv3.c | 145 - hw/usb/ccid-card-emulated.c | 1 + hw/usb/ccid-card-passthru.c | 3 +- hw/usb/chipidea.c | 1 - hw/usb/combined-packet.c | 4 +- hw/usb/desc-msos.c | 2 +- hw/usb/dev-hid.c | 2 +- hw/usb/dev-mtp.c | 12 +- hw/usb/dev-smartcard-reader.c | 8 +- hw/usb/dev-storage-bot.c | 1 + hw/usb/dev-storage-classic.c | 1 + hw/usb/dev-uas.c | 1 + hw/usb/dev-wacom.c | 2 +- hw/usb/hcd-dwc3.c | 1 - hw/usb/hcd-xhci-pci.c | 13 +- hw/usb/hcd-xhci-sysbus.c | 4 +- hw/usb/hcd-xhci.c | 8 +- hw/usb/hcd-xhci.h | 2 +- hw/usb/host-libusb.c | 71 +- hw/usb/host-stub.c | 46 - hw/usb/imx-usb-phy.c | 1 - hw/usb/meson.build | 23 +- hw/usb/quirks-ftdi-ids.h | 6 - hw/usb/quirks.h | 1 - hw/usb/redirect.c | 11 +- hw/usb/trace-events | 2 +- hw/usb/xen-usb.c | 1 - hw/usb/xlnx-usb-subsystem.c | 2 - hw/usb/xlnx-versal-usb2-ctrl-regs.c | 1 - hw/vfio/ap.c | 4 +- hw/vfio/ccw.c | 23 +- hw/vfio/common.c | 316 +- hw/vfio/display.c | 1 - hw/vfio/migration.c | 13 +- hw/vfio/pci-quirks.c | 1 - hw/vfio/pci.c | 13 +- hw/vfio/spapr.c | 1 - hw/vfio/trace-events | 2 +- hw/virtio/Kconfig | 5 + hw/virtio/meson.build | 2 + hw/virtio/trace-events | 2 +- hw/virtio/vhost-backend.c | 6 +- hw/virtio/vhost-user-fs.c | 3 +- hw/virtio/vhost-user-i2c-pci.c | 69 + hw/virtio/vhost-user-i2c.c | 288 + hw/virtio/vhost-user-vsock.c | 12 +- hw/virtio/vhost-user.c | 77 +- hw/virtio/vhost-vdpa.c | 113 +- hw/virtio/vhost-vsock.c | 15 +- hw/virtio/vhost.c | 42 +- hw/virtio/virtio-balloon.c | 4 +- hw/virtio/virtio-bus.c | 5 + hw/virtio/virtio-mem.c | 394 +- hw/virtio/virtio-mmio.c | 17 +- hw/virtio/virtio-pci.c | 33 +- hw/virtio/virtio.c | 25 +- hw/watchdog/trace-events | 2 +- hw/xen/trace-events | 2 +- hw/xen/xen-bus-helper.c | 1 - hw/xen/xen-legacy-backend.c | 1 - hw/xen/xen_pt.c | 1 - hw/xtensa/sim.c | 2 - hw/xtensa/virt.c | 3 - hw/xtensa/xtensa_memory.c | 1 - hw/xtensa/xtfpga.c | 1 - include/block/aio.h | 48 +- include/block/block-copy.h | 2 + include/block/block.h | 20 +- include/block/block_int.h | 32 +- include/block/nbd.h | 18 + include/block/nvme.h | 90 +- include/block/qdict.h | 2 - include/block/replication.h | 175 + include/block/write-threshold.h | 27 +- include/chardev/char-fe.h | 8 +- include/crypto/tls-cipher-suites.h | 6 - include/crypto/tlscreds.h | 30 +- include/crypto/tlscredsanon.h | 12 - include/crypto/tlscredspsk.h | 12 - include/crypto/tlscredsx509.h | 10 - include/disas/dis-asm.h | 16 +- include/elf.h | 13 +- include/exec/cpu-common.h | 2 + include/exec/exec-all.h | 69 +- include/exec/gen-icount.h | 1 + include/exec/helper-gen.h | 4 +- include/exec/helper-head.h | 37 +- include/exec/helper-proto.h | 4 +- include/exec/helper-tcg.h | 38 +- include/exec/memory.h | 392 +- include/exec/memory_ldst.h.inc | 16 +- include/exec/memory_ldst_cached.h.inc | 42 +- include/exec/memory_ldst_phys.h.inc | 72 +- include/exec/poison.h | 11 +- include/exec/ram_addr.h | 9 +- include/exec/ramblock.h | 10 + include/exec/ramlist.h | 13 +- include/exec/tb-context.h | 41 - include/exec/tb-hash.h | 69 - include/exec/tb-lookup.h | 49 - include/exec/translator.h | 21 +- include/fpu/softfloat-helpers.h | 9 +- include/fpu/softfloat-macros.h | 249 +- include/fpu/softfloat-types.h | 14 +- include/fpu/softfloat.h | 17 +- include/glib-compat.h | 30 +- include/hw/acpi/ghes.h | 9 + include/hw/acpi/ich9.h | 5 + include/hw/acpi/pcihp.h | 3 +- include/hw/acpi/tpm.h | 4 + include/hw/adc/max111x.h | 56 + include/hw/adc/zynq-xadc.h | 46 + include/hw/arm/allwinner-h3.h | 2 +- include/hw/arm/armsse.h | 2 + include/hw/arm/armv7m.h | 2 + include/hw/arm/aspeed_soc.h | 3 + include/hw/arm/bcm2835_peripherals.h | 3 +- include/hw/arm/stm32f100_soc.h | 57 + include/hw/arm/virt.h | 1 + include/hw/block/block.h | 3 + include/hw/block/flash.h | 2 +- include/hw/boards.h | 7 +- include/hw/char/avr_usart.h | 1 - include/hw/char/ibex_uart.h | 37 - include/hw/char/lm32_juart.h | 13 - include/hw/char/shakti_uart.h | 74 + include/hw/char/sifive_uart.h | 11 +- include/hw/core/accel-cpu.h | 2 +- include/hw/core/cpu.h | 126 +- include/hw/core/sysemu-cpu-ops.h | 92 + include/hw/core/tcg-cpu-ops.h | 6 + include/hw/display/edid.h | 12 +- include/hw/display/milkymist_tmu2.h | 42 - include/hw/display/vga.h | 6 + include/hw/elf_ops.h | 8 - include/hw/firmware/smbios.h | 14 +- include/hw/i2c/i2c.h | 63 +- include/hw/i2c/i2c_mux_pca954x.h | 19 + include/hw/i2c/pmbus_device.h | 517 + include/hw/i386/pc.h | 8 +- include/hw/i386/x86.h | 9 +- include/hw/ide/internal.h | 2 +- include/hw/input/lm832x.h | 28 + include/hw/isa/isa.h | 13 +- include/hw/isa/vt82c686.h | 2 +- include/hw/lm32/lm32_pic.h | 10 - include/hw/mem/pc-dimm.h | 5 - include/hw/misc/aspeed_hace.h | 43 + include/hw/misc/aspeed_xdma.h | 17 +- include/hw/misc/avr_power.h | 1 - include/hw/misc/bcm2835_powermgt.h | 29 + include/hw/misc/emc141x_regs.h | 37 - include/hw/misc/max111x.h | 56 - include/hw/misc/mps2-scc.h | 21 + include/hw/misc/stm32f4xx_exti.h | 1 - include/hw/misc/stm32f4xx_syscfg.h | 1 - include/hw/misc/tmp105_regs.h | 51 - include/hw/misc/zynq-xadc.h | 46 - include/hw/pci-host/gpex.h | 4 + include/hw/pci-host/i440fx.h | 1 - include/hw/pci-host/mv64361.h | 8 + include/hw/pci/pci.h | 2 + include/hw/pci/pci_host.h | 1 + include/hw/pci/pci_ids.h | 7 +- include/hw/pci/pcie_port.h | 5 +- include/hw/ppc/spapr.h | 46 +- include/hw/ppc/spapr_nvdimm.h | 14 +- include/hw/ppc/vof.h | 60 + include/hw/riscv/boot.h | 5 + include/hw/riscv/opentitan.h | 24 +- include/hw/riscv/shakti_c.h | 75 + include/hw/s390x/css.h | 5 + include/hw/s390x/ioinst.h | 12 +- include/hw/s390x/tod.h | 2 +- include/hw/scsi/esp.h | 1 + include/hw/sensor/emc141x_regs.h | 37 + include/hw/sensor/tmp105.h | 55 + include/hw/sensor/tmp105_regs.h | 51 + include/hw/ssi/aspeed_smc.h | 7 +- include/hw/timer/avr_timer16.h | 1 - include/hw/timer/ibex_timer.h | 52 + include/hw/tricore/tricore_testdevice.h | 38 + include/hw/unicore32/puv3.h | 40 - include/hw/usb.h | 7 +- include/hw/usb/dwc2-regs.h | 4 +- include/hw/usb/xlnx-usb-subsystem.h | 4 +- include/hw/usb/xlnx-versal-usb2-ctrl-regs.h | 4 +- include/hw/vfio/vfio-common.h | 12 + include/hw/virtio/vhost-backend.h | 5 +- include/hw/virtio/vhost-user-i2c.h | 28 + include/hw/virtio/vhost-vdpa.h | 9 +- include/hw/virtio/vhost.h | 8 +- include/hw/virtio/virtio-gpu-bswap.h | 16 + include/hw/virtio/virtio-gpu.h | 74 +- include/hw/virtio/virtio-mem.h | 3 + include/hw/virtio/virtio-mmio.h | 5 + include/hw/virtio/virtio-net.h | 4 + include/hw/virtio/virtio.h | 2 +- include/migration/misc.h | 1 - include/migration/vmstate.h | 3 +- include/monitor/hmp.h | 2 + include/monitor/monitor.h | 5 +- include/net/net.h | 2 + include/net/vhost-vdpa.h | 1 - include/qapi/forward-visitor.h | 27 + include/qapi/qmp/qdict.h | 3 + include/qemu/accel.h | 13 + include/qemu/atomic.h | 251 +- include/qemu/atomic128.h | 2 +- include/qemu/bitops.h | 44 +- include/qemu/bswap.h | 26 +- include/qemu/co-shared-resource.h | 4 +- include/qemu/compiler.h | 51 - include/qemu/config-file.h | 7 +- include/qemu/coroutine.h | 33 +- include/qemu/host-utils.h | 291 + include/qemu/int128.h | 10 + include/qemu/job.h | 2 +- include/qemu/lockable.h | 88 +- include/qemu/main-loop.h | 22 +- include/qemu/mmap-alloc.h | 16 +- include/qemu/module.h | 79 + include/qemu/option.h | 6 +- include/qemu/osdep.h | 88 +- include/qemu/plugin-memory.h | 6 +- include/qemu/plugin.h | 13 +- include/qemu/progress_meter.h | 34 +- include/qemu/qemu-options.h | 41 + include/qemu/qemu-plugin.h | 22 + include/qemu/ratelimit.h | 26 +- include/qemu/selfmap.h | 4 +- include/qemu/sockets.h | 11 + include/qemu/stats64.h | 2 +- include/qemu/thread-posix.h | 14 +- include/qemu/thread-win32.h | 6 - include/qemu/thread.h | 15 +- include/qemu/transactions.h | 63 + include/qom/object.h | 23 + include/standard-headers/asm-x86/kvm_para.h | 13 + .../infiniband/hw/vmw_pvrdma/pvrdma_verbs.h | 35 - include/standard-headers/drm/drm_fourcc.h | 30 +- include/standard-headers/linux/ethtool.h | 113 +- include/standard-headers/linux/fuse.h | 17 +- include/standard-headers/linux/input-event-codes.h | 1 + include/standard-headers/linux/input.h | 2 +- include/standard-headers/linux/udmabuf.h | 32 + include/standard-headers/linux/virtio_bt.h | 31 + include/standard-headers/linux/virtio_ids.h | 2 + include/standard-headers/linux/virtio_snd.h | 334 + include/standard-headers/linux/virtio_vsock.h | 9 + include/standard-headers/rdma/vmw_pvrdma-abi.h | 7 + include/sysemu/arch_init.h | 3 - include/sysemu/block-backend.h | 5 + include/sysemu/hax.h | 4 + include/sysemu/hostmem.h | 2 +- include/sysemu/hvf.h | 4 + include/sysemu/hvf_int.h | 58 + include/sysemu/hw_accel.h | 1 + include/sysemu/iothread.h | 3 + include/sysemu/kvm_int.h | 7 +- include/sysemu/nvmm.h | 26 + include/sysemu/os-posix.h | 8 + include/sysemu/os-win32.h | 8 + include/sysemu/tcg.h | 2 - include/sysemu/tpm.h | 9 + include/sysemu/tpm_backend.h | 6 +- include/sysemu/whpx.h | 4 + include/tcg/tcg-cond.h | 101 + include/tcg/tcg-op-gvec.h | 43 + include/tcg/tcg-op.h | 18 +- include/tcg/tcg-opc.h | 17 +- include/tcg/tcg.h | 195 +- include/ui/clipboard.h | 193 + include/ui/console.h | 3 + include/ui/gtk.h | 71 + include/ui/qemu-pixman.h | 1 + include/user/syscall-trace.h | 4 +- io/channel-socket.c | 8 +- io/channel-websock.c | 10 +- io/dns-resolver.c | 4 + io/net-listener.c | 3 + io/trace-events | 2 +- iothread.c | 91 +- job-qmp.c | 8 +- job.c | 5 +- linux-headers/asm-arm64/kvm.h | 11 + linux-headers/asm-generic/mman-common.h | 3 + linux-headers/asm-generic/unistd.h | 13 +- linux-headers/asm-mips/mman.h | 3 + linux-headers/asm-mips/unistd_n32.h | 752 +- linux-headers/asm-mips/unistd_n64.h | 704 +- linux-headers/asm-mips/unistd_o32.h | 844 +- linux-headers/asm-powerpc/kvm.h | 2 + linux-headers/asm-powerpc/unistd_32.h | 857 +- linux-headers/asm-powerpc/unistd_64.h | 801 +- linux-headers/asm-s390/unistd_32.h | 5 + linux-headers/asm-s390/unistd_64.h | 5 + linux-headers/asm-x86/kvm.h | 16 + linux-headers/asm-x86/unistd_32.h | 11 +- linux-headers/asm-x86/unistd_64.h | 11 +- linux-headers/asm-x86/unistd_x32.h | 11 +- linux-headers/linux/kvm.h | 244 +- linux-headers/linux/userfaultfd.h | 41 +- linux-headers/linux/vfio.h | 35 + linux-user/aarch64/signal.c | 6 +- linux-user/aarch64/syscall_nr.h | 8 +- linux-user/aarch64/target_errno_defs.h | 7 + linux-user/alpha/signal.c | 16 +- linux-user/alpha/syscall.tbl | 7 + linux-user/alpha/target_errno_defs.h | 204 + linux-user/alpha/target_signal.h | 1 + linux-user/alpha/target_syscall.h | 194 - linux-user/arm/cpu_loop.c | 125 +- linux-user/arm/nwfpe/fpa11.c | 41 +- linux-user/arm/signal.c | 9 +- linux-user/arm/syscall.tbl | 7 + linux-user/arm/target_errno_defs.h | 7 + linux-user/cris/target_errno_defs.h | 7 + linux-user/elfload.c | 236 +- linux-user/errno_defs.h | 167 - linux-user/errnos.c.inc | 140 + linux-user/exit.c | 2 +- linux-user/fd-trans.c | 1 + linux-user/fd-trans.h | 55 +- linux-user/generic/target_errno_defs.h | 167 + linux-user/hexagon/cpu_loop.c | 2 +- linux-user/hexagon/signal.c | 6 +- linux-user/hexagon/syscall_nr.h | 12 +- linux-user/hexagon/target_errno_defs.h | 7 + linux-user/hppa/cpu_loop.c | 2 +- linux-user/hppa/signal.c | 8 +- linux-user/hppa/syscall.tbl | 31 +- linux-user/hppa/target_errno_defs.h | 220 + linux-user/hppa/target_syscall.h | 208 - linux-user/i386/signal.c | 13 +- linux-user/i386/syscall_32.tbl | 21 +- linux-user/i386/target_errno_defs.h | 7 + linux-user/linuxload.c | 42 +- linux-user/m68k/signal.c | 5 +- linux-user/m68k/syscall.tbl | 7 + linux-user/m68k/target_errno_defs.h | 7 + linux-user/main.c | 12 +- linux-user/meson.build | 1 - linux-user/microblaze/signal.c | 6 +- linux-user/microblaze/syscall.tbl | 7 + linux-user/microblaze/target_errno_defs.h | 7 + linux-user/mips/signal.c | 6 +- linux-user/mips/syscall-args-o32.c.inc | 5 +- linux-user/mips/syscall_o32.tbl | 19 +- linux-user/mips/target_errno_defs.h | 221 + linux-user/mips/target_syscall.h | 209 - linux-user/mips64/syscall_n32.tbl | 19 +- linux-user/mips64/syscall_n64.tbl | 7 + linux-user/mips64/target_errno_defs.h | 10 + linux-user/mips64/target_syscall.h | 209 - linux-user/mmap.c | 14 + linux-user/nios2/signal.c | 8 +- linux-user/nios2/syscall_nr.h | 8 +- linux-user/nios2/target_errno_defs.h | 7 + linux-user/openrisc/signal.c | 5 +- linux-user/openrisc/syscall_nr.h | 8 +- linux-user/openrisc/target_errno_defs.h | 7 + linux-user/ppc/cpu_loop.c | 11 +- linux-user/ppc/signal.c | 27 +- linux-user/ppc/syscall.tbl | 39 +- linux-user/ppc/target_errno_defs.h | 7 + linux-user/qemu.h | 3 +- linux-user/riscv/signal.c | 6 +- linux-user/riscv/syscall32_nr.h | 8 +- linux-user/riscv/syscall64_nr.h | 8 +- linux-user/riscv/target_errno_defs.h | 7 + linux-user/s390x/cpu_loop.c | 66 +- linux-user/s390x/signal.c | 291 +- linux-user/s390x/syscall.tbl | 19 +- linux-user/s390x/target_errno_defs.h | 7 + linux-user/safe-syscall.S | 2 +- linux-user/semihost.c | 1 - linux-user/sh4/signal.c | 7 +- linux-user/sh4/syscall.tbl | 7 + linux-user/sh4/target_errno_defs.h | 7 + linux-user/signal-common.h | 1 + linux-user/signal.c | 133 +- linux-user/sparc/signal.c | 535 +- linux-user/sparc/syscall.tbl | 19 +- linux-user/sparc/target_cpu.h | 9 +- linux-user/sparc/target_errno.h | 207 - linux-user/sparc/target_errno_defs.h | 212 + linux-user/sparc/target_signal.h | 2 + linux-user/sparc/target_structs.h | 34 +- linux-user/sparc/target_syscall.h | 44 +- linux-user/sparc64/cpu_loop.c | 20 - linux-user/sparc64/meson.build | 5 - linux-user/sparc64/signal.c | 19 - linux-user/sparc64/sockbits.h | 1 - linux-user/sparc64/syscall.tbl | 487 - linux-user/sparc64/syscallhdr.sh | 32 - linux-user/sparc64/target_cpu.h | 1 - linux-user/sparc64/target_elf.h | 14 - linux-user/sparc64/target_fcntl.h | 1 - linux-user/sparc64/target_signal.h | 1 - linux-user/sparc64/target_structs.h | 58 - linux-user/sparc64/target_syscall.h | 35 - linux-user/sparc64/termbits.h | 291 - linux-user/strace.c | 21 +- linux-user/strace.list | 8 +- linux-user/syscall.c | 333 +- linux-user/syscall_defs.h | 31 +- linux-user/trace-events | 4 +- linux-user/x86_64/syscall_64.tbl | 27 +- linux-user/x86_64/target_errno_defs.h | 7 + linux-user/xtensa/signal.c | 6 +- linux-user/xtensa/syscall.tbl | 7 + linux-user/xtensa/target_errno_defs.h | 7 + memory_ldst.c.inc | 20 +- meson.build | 646 +- meson_options.txt | 30 + migration/channel.c | 15 +- migration/colo.c | 8 +- migration/dirtyrate.c | 78 +- migration/dirtyrate.h | 8 +- migration/meson.build | 3 +- migration/migration.c | 244 +- migration/migration.h | 22 +- migration/multifd.c | 14 +- migration/postcopy-ram.c | 15 +- migration/qemu-file-channel.c | 11 +- migration/qemu-file.c | 22 +- migration/qemu-file.h | 4 +- migration/ram.c | 337 +- migration/rdma.c | 101 +- migration/savevm.c | 24 +- migration/socket.c | 24 +- migration/target.c | 25 + migration/tls.c | 6 +- migration/trace-events | 3 +- migration/yank_functions.c | 42 + migration/yank_functions.h | 3 + monitor/hmp-cmds.c | 10 +- monitor/hmp.c | 7 + monitor/misc.c | 50 +- monitor/monitor.c | 3 +- monitor/qmp.c | 40 +- monitor/trace-events | 2 +- nbd/client-connection.c | 388 + nbd/meson.build | 1 + nbd/server.c | 85 +- nbd/trace-events | 2 +- net/checksum.c | 4 +- net/colo-compare.c | 25 +- net/colo-compare.h | 1 + net/colo.c | 25 +- net/colo.h | 1 + net/dump.c | 1 - net/filter-mirror.c | 8 +- net/filter-replay.c | 1 - net/filter-rewriter.c | 3 +- net/net.c | 6 +- net/netmap.c | 1 - net/slirp.c | 16 +- net/tap-bsd.c | 13 +- net/tap-linux.c | 13 + net/tap-linux.h | 1 + net/tap-solaris.c | 5 + net/tap-stub.c | 5 + net/tap.c | 9 + net/tap_int.h | 1 + net/trace-events | 2 +- net/vhost-user.c | 4 +- net/vhost-vdpa.c | 11 +- os-posix.c | 2 +- os-win32.c | 1 - pc-bios/README | 6 +- pc-bios/palcode-clipper | Bin 156328 -> 153728 bytes pc-bios/s390-ccw.img | Bin 42608 -> 50936 bytes pc-bios/s390-ccw/Makefile | 8 +- pc-bios/s390-ccw/bootmap.c | 4 +- pc-bios/s390-ccw/dasd-ipl.c | 2 +- pc-bios/s390-ccw/helper.h | 2 +- pc-bios/s390-ccw/jump2ipl.c | 8 +- pc-bios/s390-ccw/menu.c | 8 +- pc-bios/s390-ccw/netboot.mak | 2 +- pc-bios/s390-ccw/s390-ccw.h | 1 + pc-bios/s390-ccw/virtio.c | 2 +- pc-bios/s390-netboot.img | Bin 67232 -> 79688 bytes pc-bios/slof.bin | Bin 968888 -> 991744 bytes pc-bios/u-boot.e500 | Bin 349148 -> 421720 bytes pc-bios/vof-nvram.bin | Bin 0 -> 16384 bytes pc-bios/vof.bin | Bin 0 -> 3456 bytes pc-bios/vof/Makefile | 23 + pc-bios/vof/bootmem.c | 14 + pc-bios/vof/ci.c | 91 + pc-bios/vof/entry.S | 49 + pc-bios/vof/libc.c | 66 + pc-bios/vof/main.c | 21 + pc-bios/vof/vof.h | 41 + pc-bios/vof/vof.lds | 48 + plugins/api.c | 14 +- plugins/core.c | 73 +- plugins/loader.c | 1 - plugins/plugin.h | 5 +- plugins/qemu-plugins.symbols | 3 - python/.gitignore | 17 + python/MANIFEST.in | 3 + python/Makefile | 102 + python/PACKAGE.rst | 43 + python/Pipfile | 13 + python/Pipfile.lock | 315 + python/README.rst | 87 + python/VERSION | 1 + python/avocado.cfg | 10 + python/mypy.ini | 4 - python/qemu/.flake8 | 2 - python/qemu/.isort.cfg | 7 - python/qemu/README.rst | 8 + python/qemu/__init__.py | 11 - python/qemu/accel.py | 84 - python/qemu/console_socket.py | 128 - python/qemu/machine.py | 746 - python/qemu/machine/README.rst | 9 + python/qemu/machine/__init__.py | 36 + python/qemu/machine/console_socket.py | 129 + python/qemu/machine/machine.py | 788 + python/qemu/machine/py.typed | 0 python/qemu/machine/qtest.py | 162 + python/qemu/pylintrc | 58 - python/qemu/qmp.py | 375 - python/qemu/qmp/README.rst | 9 + python/qemu/qmp/__init__.py | 423 + python/qemu/qmp/py.typed | 0 python/qemu/qmp/qemu_ga_client.py | 323 + python/qemu/qmp/qmp_shell.py | 535 + python/qemu/qmp/qom.py | 272 + python/qemu/qmp/qom_common.py | 178 + python/qemu/qmp/qom_fuse.py | 206 + python/qemu/qtest.py | 159 - python/qemu/utils/README.rst | 7 + python/qemu/utils/__init__.py | 45 + python/qemu/utils/accel.py | 84 + python/qemu/utils/py.typed | 0 python/setup.cfg | 132 + python/setup.py | 23 + python/tests/flake8.sh | 2 + python/tests/isort.sh | 2 + python/tests/mypy.sh | 2 + python/tests/pylint.sh | 2 + qapi/block-core.json | 251 +- qapi/block-export.json | 33 +- qapi/char.json | 21 +- qapi/crypto.json | 4 +- qapi/machine.json | 50 +- qapi/meson.build | 1 + qapi/migration.json | 21 +- qapi/misc-target.json | 40 +- qapi/misc.json | 6 +- qapi/net.json | 6 +- qapi/qapi-forward-visitor.c | 326 + qapi/qom.json | 44 +- qapi/sockets.json | 5 +- qapi/tpm.json | 28 +- qapi/trace-events | 2 +- qapi/transaction.json | 8 +- qapi/ui.json | 29 +- qemu-edid.c | 6 +- qemu-img.c | 77 +- qemu-io-cmds.c | 29 +- qemu-io.c | 17 +- qemu-nbd.c | 19 +- qemu-options-wrapper.h | 40 - qemu-options.h | 36 - qemu-options.hx | 254 +- qemu.sasl | 15 +- qga/commands-win32.c | 21 +- qga/commands.c | 4 +- qga/installer/qemu-ga.wxs | 6 +- qga/vss-win32/requester.cpp | 2 +- qom/object.c | 9 +- qom/object_interfaces.c | 58 +- qom/trace-events | 2 +- replication.c | 2 +- replication.h | 175 - roms/Makefile | 8 +- roms/SLOF | 2 +- roms/qemu-palcode | 2 +- roms/u-boot | 2 +- scripts/block-coroutine-wrapper.py | 7 +- scripts/checkpatch.pl | 12 +- scripts/ci/setup/.gitignore | 2 + scripts/ci/setup/build-environment.yml | 116 + scripts/ci/setup/gitlab-runner.yml | 71 + scripts/ci/setup/inventory.template | 1 + scripts/ci/setup/vars.yml.template | 12 + .../coccinelle/memory-region-housekeeping.cocci | 8 +- scripts/coverity-model.c | 386 - scripts/coverity-scan/COMPONENTS.md | 148 + scripts/coverity-scan/coverity-scan.docker | 1 - scripts/coverity-scan/model.c | 371 + scripts/coverity-scan/run-coverity-scan | 8 +- scripts/cpu-x86-uarch-abi.py | 194 + scripts/decodetree.py | 172 +- scripts/entitlement.sh | 16 +- scripts/modinfo-collect.py | 67 + scripts/modinfo-generate.py | 97 + scripts/oss-fuzz/build.sh | 24 +- scripts/oss-fuzz/reorder_fuzzer_qtest_trace.py | 2 +- scripts/qapi/common.py | 8 +- scripts/qapi/error.py | 47 +- scripts/qapi/expr.py | 444 +- scripts/qapi/main.py | 6 +- scripts/qapi/mypy.ini | 10 - scripts/qapi/parser.py | 244 +- scripts/qapi/pylintrc | 5 +- scripts/qapi/schema.py | 13 +- scripts/qapi/source.py | 13 +- scripts/qemu-binfmt-conf.sh | 4 +- scripts/qemu-trace-stap | 14 +- scripts/qmp/qemu-ga-client | 297 +- scripts/qmp/qmp-shell | 454 +- scripts/qmp/qom-fuse | 144 +- scripts/qmp/qom-get | 66 +- scripts/qmp/qom-list | 63 +- scripts/qmp/qom-set | 63 +- scripts/qmp/qom-tree | 74 +- scripts/simplebench/bench-backup.py | 95 +- scripts/simplebench/bench_block_job.py | 42 +- scripts/simplebench/simplebench.py | 28 +- scripts/simpletrace.py | 2 +- scripts/update-linux-headers.sh | 3 + scripts/update-mips-syscall-args.sh | 13 +- scsi/trace-events | 2 +- semihosting/arm-compat-semi.c | 2 - semihosting/config.c | 1 - semihosting/console.c | 2 - slirp | 2 +- softmmu/arch_init.c | 8 - softmmu/cpus.c | 9 +- softmmu/device_tree.c | 1 - softmmu/memory.c | 172 +- softmmu/memory_mapping.c | 1 - softmmu/physmem.c | 214 +- softmmu/qdev-monitor.c | 1 - softmmu/qemu-seccomp.c | 6 - softmmu/qtest.c | 185 +- softmmu/runstate.c | 3 +- softmmu/timers-state.h | 2 +- softmmu/trace-events | 9 +- softmmu/vl.c | 556 +- storage-daemon/meson.build | 8 +- stubs/iothread-lock.c | 2 +- stubs/iothread.c | 8 - stubs/meson.build | 9 +- stubs/module-opts.c | 2 + stubs/semihost.c | 1 - stubs/tpm.c | 39 - stubs/usb-dev-stub.c | 25 + stubs/virtio-gpu-udmabuf.c | 27 + stubs/vmstate.c | 2 - subprojects/libvhost-user/include/atomic.h | 1 + subprojects/libvhost-user/libvhost-user.c | 10 +- subprojects/libvhost-user/meson.build | 6 +- subprojects/libvhost-user/standard-headers/linux | 1 + target/Kconfig | 19 + target/alpha/Kconfig | 2 + target/alpha/cpu.c | 12 +- target/alpha/translate.c | 221 +- target/arm/Kconfig | 6 + target/arm/cpu.c | 53 +- target/arm/cpu.h | 234 +- target/arm/cpu64.c | 79 +- target/arm/cpu_tcg.c | 5 +- target/arm/debug_helper.c | 12 +- target/arm/gdbstub.c | 4 + target/arm/helper-a64.c | 22 +- target/arm/helper-a64.h | 3 +- target/arm/helper-mve.h | 465 + target/arm/helper-sve.h | 726 +- target/arm/helper.c | 526 +- target/arm/helper.h | 127 +- target/arm/internals.h | 35 +- target/arm/kvm64.c | 27 +- target/arm/m-nocp.decode | 24 + target/arm/m_helper.c | 86 +- target/arm/machine.c | 20 + target/arm/meson.build | 18 +- target/arm/mte_helper.c | 271 +- target/arm/mve.decode | 427 + target/arm/mve_helper.c | 1650 ++ target/arm/neon-dp.decode | 1 + target/arm/neon-ls.decode | 8 +- target/arm/neon-shared.decode | 37 +- target/arm/neon_helper.c | 519 +- target/arm/op_helper.c | 47 +- target/arm/sve.decode | 591 +- target/arm/sve_helper.c | 2523 +- target/arm/t32.decode | 86 +- target/arm/trace-events | 2 +- target/arm/translate-a32.h | 149 + target/arm/translate-a64.c | 738 +- target/arm/translate-a64.h | 7 +- target/arm/translate-m-nocp.c | 785 + target/arm/translate-mve.c | 1033 + target/arm/translate-neon.c | 4070 +++ target/arm/translate-neon.c.inc | 3942 --- target/arm/translate-sve.c | 3417 ++- target/arm/translate-vfp.c | 3606 +++ target/arm/translate-vfp.c.inc | 4050 --- target/arm/translate.c | 1096 +- target/arm/translate.h | 127 + target/arm/vec_helper.c | 1055 +- target/arm/vec_internal.h | 176 + target/arm/vfp.decode | 16 +- target/arm/vfp_helper.c | 48 +- target/avr/Kconfig | 2 + target/avr/cpu.c | 13 +- target/avr/cpu.h | 1 + target/avr/gdbstub.c | 13 + target/avr/helper.c | 6 +- target/avr/helper.h | 8 +- target/avr/machine.c | 4 +- target/avr/translate.c | 251 +- target/cris/Kconfig | 2 + target/cris/cpu.c | 14 +- target/cris/helper.h | 2 +- target/cris/translate.c | 495 +- target/cris/translate_v10.c.inc | 17 +- target/hexagon/arch.c | 181 +- target/hexagon/arch.h | 9 +- target/hexagon/conv_emu.c | 177 - target/hexagon/conv_emu.h | 31 - target/hexagon/cpu.c | 17 +- target/hexagon/cpu.h | 5 - target/hexagon/cpu_bits.h | 2 +- target/hexagon/decode.c | 85 +- target/hexagon/fma_emu.c | 40 +- target/hexagon/gen_tcg.h | 439 +- target/hexagon/gen_tcg_funcs.py | 2 +- target/hexagon/genptr.c | 256 +- target/hexagon/helper.h | 23 +- target/hexagon/iclass.c | 4 - target/hexagon/imported/alu.idef | 44 + target/hexagon/imported/compare.idef | 12 +- target/hexagon/imported/encode_pp.def | 33 + target/hexagon/imported/float.idef | 32 + target/hexagon/imported/ldst.idef | 68 + target/hexagon/imported/macros.def | 47 + target/hexagon/imported/shift.idef | 47 + target/hexagon/insn.h | 21 +- target/hexagon/internal.h | 11 +- target/hexagon/macros.h | 148 +- target/hexagon/meson.build | 1 - target/hexagon/op_helper.c | 437 +- target/hexagon/reg_fields.c | 3 +- target/hexagon/reg_fields.h | 4 +- target/hexagon/translate.c | 201 +- target/hexagon/translate.h | 9 +- target/hppa/Kconfig | 2 + target/hppa/cpu.c | 12 +- target/hppa/cpu.h | 1 - target/hppa/helper.h | 3 - target/hppa/trace-events | 2 +- target/hppa/translate.c | 116 +- target/i386/Kconfig | 5 + target/i386/cpu-dump.c | 63 +- target/i386/cpu-internal.h | 70 + target/i386/cpu-sysemu.c | 352 + target/i386/cpu.c | 1216 +- target/i386/cpu.h | 176 +- target/i386/gdbstub.c | 165 +- target/i386/hax/hax-mem.c | 5 +- target/i386/helper.c | 15 +- target/i386/helper.h | 47 +- target/i386/host-cpu.c | 207 + target/i386/host-cpu.h | 19 + target/i386/hvf/hvf-accel-ops.c | 146 - target/i386/hvf/hvf-accel-ops.h | 23 - target/i386/hvf/hvf-cpu.c | 97 + target/i386/hvf/hvf-i386.h | 33 +- target/i386/hvf/hvf.c | 476 +- target/i386/hvf/meson.build | 2 +- target/i386/hvf/vmx.h | 24 +- target/i386/hvf/x86.c | 28 +- target/i386/hvf/x86_descr.c | 26 +- target/i386/hvf/x86_emu.c | 62 +- target/i386/hvf/x86_mmu.c | 5 +- target/i386/hvf/x86_task.c | 12 +- target/i386/hvf/x86hvf.c | 237 +- target/i386/hvf/x86hvf.h | 2 - target/i386/kvm/hyperv-proto.h | 6 + target/i386/kvm/kvm-cpu.c | 201 + target/i386/kvm/kvm-cpu.h | 41 + target/i386/kvm/kvm-stub.c | 5 + target/i386/kvm/kvm.c | 678 +- target/i386/kvm/kvm_i386.h | 1 + target/i386/kvm/meson.build | 7 +- target/i386/kvm/trace-events | 2 +- target/i386/machine.c | 2 +- target/i386/meson.build | 10 +- target/i386/monitor.c | 6 + target/i386/nvmm/meson.build | 8 + target/i386/nvmm/nvmm-accel-ops.c | 111 + target/i386/nvmm/nvmm-accel-ops.h | 24 + target/i386/nvmm/nvmm-all.c | 1226 + target/i386/ops_sse_header.h | 3 - target/i386/sev-stub.c | 7 + target/i386/sev.c | 134 +- target/i386/sev_i386.h | 2 + target/i386/svm.h | 15 +- target/i386/tcg/bpt_helper.c | 299 +- target/i386/tcg/excp_helper.c | 591 +- target/i386/tcg/fpu_helper.c | 228 +- target/i386/tcg/helper-tcg.h | 13 +- target/i386/tcg/mem_helper.c | 15 +- target/i386/tcg/meson.build | 5 +- target/i386/tcg/misc_helper.c | 544 +- target/i386/tcg/seg_helper.c | 311 +- target/i386/tcg/seg_helper.h | 66 + target/i386/tcg/smm_helper.c | 334 - target/i386/tcg/svm_helper.c | 800 - target/i386/tcg/sysemu/bpt_helper.c | 298 + target/i386/tcg/sysemu/excp_helper.c | 471 + target/i386/tcg/sysemu/fpu_helper.c | 57 + target/i386/tcg/sysemu/meson.build | 10 + target/i386/tcg/sysemu/misc_helper.c | 509 + target/i386/tcg/sysemu/seg_helper.c | 154 + target/i386/tcg/sysemu/smm_helper.c | 319 + target/i386/tcg/sysemu/svm_helper.c | 816 + target/i386/tcg/sysemu/tcg-cpu.c | 83 + target/i386/tcg/tcg-cpu.c | 95 +- target/i386/tcg/tcg-cpu.h | 78 +- target/i386/tcg/translate.c | 1874 +- target/i386/tcg/user/excp_helper.c | 39 + target/i386/tcg/user/meson.build | 4 + target/i386/tcg/user/seg_helper.c | 109 + target/i386/trace-events | 3 +- target/i386/xsave_helper.c | 267 +- target/lm32/README | 45 - target/lm32/TODO | 1 - target/lm32/cpu-param.h | 17 - target/lm32/cpu-qom.h | 48 - target/lm32/cpu.c | 274 - target/lm32/cpu.h | 262 - target/lm32/gdbstub.c | 92 - target/lm32/helper.c | 224 - target/lm32/helper.h | 14 - target/lm32/lm32-semi.c | 212 - target/lm32/machine.c | 33 - target/lm32/meson.build | 15 - target/lm32/op_helper.c | 148 - target/lm32/translate.c | 1237 - target/m68k/Kconfig | 2 + target/m68k/cpu.c | 12 +- target/m68k/cpu.h | 8 + target/m68k/fpu_helper.c | 50 +- target/m68k/helper.h | 1 - target/m68k/op_helper.c | 19 +- target/m68k/softfloat.c | 90 +- target/m68k/translate.c | 82 +- target/meson.build | 3 - target/microblaze/Kconfig | 2 + target/microblaze/cpu.c | 12 +- target/microblaze/translate.c | 30 +- target/mips/Kconfig | 6 + target/mips/addr.c | 61 - target/mips/cp0_helper.c | 1706 -- target/mips/cp0_timer.c | 145 - target/mips/cpu-qom.h | 3 + target/mips/cpu.c | 295 +- target/mips/cpu.h | 10 +- target/mips/dsp_helper.c | 3771 --- target/mips/fpu.c | 25 + target/mips/fpu_helper.c | 2262 -- target/mips/fpu_helper.h | 10 +- target/mips/helper.h | 183 +- target/mips/internal.h | 107 +- target/mips/lmmi_helper.c | 747 - target/mips/machine.c | 324 - target/mips/meson.build | 53 +- target/mips/mips-semi.c | 373 - target/mips/mips32r6.decode | 36 - target/mips/mips64r6.decode | 27 - target/mips/msa.c | 60 + target/mips/msa32.decode | 29 - target/mips/msa64.decode | 17 - target/mips/msa_helper.c | 8633 ------- target/mips/msa_helper.h.inc | 443 - target/mips/msa_translate.c | 2286 -- target/mips/mxu_translate.c | 1609 -- target/mips/op_helper.c | 1210 - target/mips/rel6_translate.c | 43 - target/mips/sysemu/addr.c | 61 + target/mips/sysemu/cp0.c | 123 + target/mips/sysemu/cp0_timer.c | 145 + target/mips/sysemu/machine.c | 333 + target/mips/sysemu/meson.build | 7 + target/mips/sysemu/physaddr.c | 257 + target/mips/tcg/dsp_helper.c | 3771 +++ target/mips/tcg/exception.c | 167 + target/mips/tcg/fpu_helper.c | 2254 ++ target/mips/tcg/ldst_helper.c | 288 + target/mips/tcg/lmmi_helper.c | 747 + target/mips/tcg/meson.build | 34 + target/mips/tcg/micromips_translate.c.inc | 3231 +++ target/mips/tcg/mips16e_translate.c.inc | 1123 + target/mips/tcg/mips32r6.decode | 36 + target/mips/tcg/mips64r6.decode | 27 + target/mips/tcg/msa.decode | 31 + target/mips/tcg/msa_helper.c | 8597 +++++++ target/mips/tcg/msa_helper.h.inc | 443 + target/mips/tcg/msa_translate.c | 2275 ++ target/mips/tcg/mxu_translate.c | 1605 ++ target/mips/tcg/nanomips_translate.c.inc | 4922 ++++ target/mips/tcg/op_helper.c | 421 + target/mips/tcg/rel6_translate.c | 43 + target/mips/tcg/sysemu/cp0_helper.c | 1706 ++ target/mips/tcg/sysemu/meson.build | 6 + target/mips/tcg/sysemu/mips-semi.c | 367 + target/mips/tcg/sysemu/special_helper.c | 173 + target/mips/tcg/sysemu/tlb_helper.c | 1405 + target/mips/tcg/sysemu_helper.h.inc | 185 + target/mips/tcg/tcg-internal.h | 64 + target/mips/tcg/trace-events | 5 + target/mips/tcg/trace.h | 1 + target/mips/tcg/translate.c | 16380 ++++++++++++ target/mips/tcg/translate.h | 205 + target/mips/tcg/translate_addr_const.c | 61 + target/mips/tcg/tx79.decode | 73 + target/mips/tcg/tx79_translate.c | 685 + target/mips/tcg/txx9_translate.c | 20 + target/mips/tcg/user/meson.build | 3 + target/mips/tcg/user/tlb_helper.c | 64 + target/mips/tlb_helper.c | 1343 - target/mips/trace-events | 5 - target/mips/trace.h | 1 - target/mips/translate.c | 25753 ------------------- target/mips/translate.h | 195 - target/mips/translate_addr_const.c | 61 - target/mips/tx79.decode | 39 - target/mips/tx79_translate.c | 303 - target/mips/txx9_translate.c | 20 - target/moxie/cpu-param.h | 17 - target/moxie/cpu.c | 161 - target/moxie/cpu.h | 123 - target/moxie/helper.c | 120 - target/moxie/helper.h | 5 - target/moxie/machine.c | 19 - target/moxie/machine.h | 1 - target/moxie/meson.build | 14 - target/moxie/mmu.c | 32 - target/moxie/mmu.h | 19 - target/moxie/translate.c | 892 - target/nios2/Kconfig | 2 + target/nios2/cpu.c | 12 +- target/nios2/helper.h | 2 +- target/nios2/translate.c | 322 +- target/openrisc/Kconfig | 2 + target/openrisc/cpu.c | 12 +- target/openrisc/sys_helper.c | 1 - target/openrisc/translate.c | 101 +- target/ppc/Kconfig | 5 + target/ppc/arch_dump.c | 11 +- target/ppc/cpu-qom.h | 4 +- target/ppc/cpu.c | 107 + target/ppc/cpu.h | 123 +- target/ppc/cpu_init.c | 9287 +++++++ target/ppc/excp_helper.c | 335 +- target/ppc/fpu_helper.c | 246 +- target/ppc/gdbstub.c | 261 +- target/ppc/helper.h | 9 +- target/ppc/helper_regs.c | 280 + target/ppc/helper_regs.h | 183 +- target/ppc/insn32.decode | 126 + target/ppc/insn64.decode | 124 + target/ppc/int_helper.c | 72 +- target/ppc/internal.h | 30 + target/ppc/kvm.c | 12 + target/ppc/kvm_ppc.h | 12 + target/ppc/machine.c | 46 +- target/ppc/mem_helper.c | 18 +- target/ppc/meson.build | 22 +- target/ppc/misc_helper.c | 43 +- target/ppc/mmu-book3s-v3.c | 19 - target/ppc/mmu-book3s-v3.h | 6 +- target/ppc/mmu-books.h | 30 + target/ppc/mmu-hash32.c | 278 +- target/ppc/mmu-hash32.h | 8 +- target/ppc/mmu-hash64.c | 289 +- target/ppc/mmu-hash64.h | 10 +- target/ppc/mmu-radix64.c | 257 +- target/ppc/mmu-radix64.h | 6 +- target/ppc/mmu_helper.c | 570 +- target/ppc/spr_tcg.h | 136 + target/ppc/tcg-stub.c | 45 + target/ppc/trace-events | 2 +- target/ppc/translate.c | 2431 +- target/ppc/translate/fixedpoint-impl.c.inc | 333 + target/ppc/translate/vector-impl.c.inc | 56 + target/ppc/translate/vsx-impl.c.inc | 4 +- target/ppc/translate_init.c.inc | 10986 -------- target/riscv/Kconfig | 5 + target/riscv/bitmanip_helper.c | 90 + target/riscv/cpu.c | 81 +- target/riscv/cpu.h | 51 +- target/riscv/cpu_bits.h | 115 +- target/riscv/cpu_helper.c | 88 +- target/riscv/csr.c | 890 +- target/riscv/fpu_helper.c | 16 +- target/riscv/gdbstub.c | 10 +- target/riscv/helper.h | 24 +- target/riscv/insn16-32.decode | 28 - target/riscv/insn16-64.decode | 36 - target/riscv/insn16.decode | 30 + target/riscv/insn32-64.decode | 88 - target/riscv/insn32.decode | 154 +- target/riscv/insn_trans/trans_rva.c.inc | 14 +- target/riscv/insn_trans/trans_rvb.c.inc | 438 + target/riscv/insn_trans/trans_rvd.c.inc | 17 +- target/riscv/insn_trans/trans_rvf.c.inc | 6 +- target/riscv/insn_trans/trans_rvh.c.inc | 8 +- target/riscv/insn_trans/trans_rvi.c.inc | 76 +- target/riscv/insn_trans/trans_rvm.c.inc | 12 +- target/riscv/insn_trans/trans_rvv.c.inc | 128 +- target/riscv/machine.c | 8 +- target/riscv/meson.build | 14 +- target/riscv/monitor.c | 22 +- target/riscv/op_helper.c | 30 +- target/riscv/pmp.c | 232 +- target/riscv/pmp.h | 14 + target/riscv/trace-events | 3 + target/riscv/translate.c | 381 +- target/riscv/vector_helper.c | 18 +- target/rx/Kconfig | 2 + target/rx/cpu.c | 14 +- target/rx/helper.c | 1 - target/rx/translate.c | 26 +- target/s390x/Kconfig | 2 + target/s390x/arch_dump.c | 2 +- target/s390x/cc_helper.c | 538 - target/s390x/cpu-dump.c | 134 + target/s390x/cpu-sysemu.c | 309 + target/s390x/cpu.c | 327 +- target/s390x/cpu.h | 3 + target/s390x/cpu_features_def.h.inc | 5 + target/s390x/cpu_models.c | 431 +- target/s390x/cpu_models_sysemu.c | 426 + target/s390x/cpu_models_user.c | 20 + target/s390x/crypto_helper.c | 61 - target/s390x/diag.c | 8 +- target/s390x/excp_helper.c | 640 - target/s390x/fpu_helper.c | 888 - target/s390x/gdbstub.c | 17 +- target/s390x/gen-features.c | 28 +- target/s390x/helper.c | 159 +- target/s390x/helper.h | 94 +- target/s390x/insn-data.def | 1386 - target/s390x/insn-format.def | 81 - target/s390x/int_helper.c | 148 - target/s390x/internal.h | 384 - target/s390x/interrupt.c | 7 +- target/s390x/ioinst.c | 2 +- target/s390x/kvm-stub.c | 126 - target/s390x/kvm.c | 2572 -- target/s390x/kvm/kvm.c | 2564 ++ target/s390x/kvm/kvm_s390x.h | 49 + target/s390x/kvm/meson.build | 17 + target/s390x/kvm/trace-events | 7 + target/s390x/kvm/trace.h | 1 + target/s390x/kvm_s390x.h | 50 - target/s390x/machine.c | 6 +- target/s390x/mem_helper.c | 3008 --- target/s390x/meson.build | 42 +- target/s390x/misc_helper.c | 785 - target/s390x/mmu_helper.c | 4 +- target/s390x/s390-tod.h | 29 - target/s390x/s390x-internal.h | 396 + target/s390x/sigp.c | 5 +- target/s390x/tcg-stub.c | 30 - target/s390x/tcg/cc_helper.c | 538 + target/s390x/tcg/crypto_helper.c | 61 + target/s390x/tcg/excp_helper.c | 641 + target/s390x/tcg/fpu_helper.c | 976 + target/s390x/tcg/insn-data.def | 1398 + target/s390x/tcg/insn-format.def | 81 + target/s390x/tcg/int_helper.c | 148 + target/s390x/tcg/mem_helper.c | 3003 +++ target/s390x/tcg/meson.build | 14 + target/s390x/tcg/misc_helper.c | 785 + target/s390x/tcg/s390-tod.h | 29 + target/s390x/tcg/tcg_s390x.h | 24 + target/s390x/tcg/translate.c | 6648 +++++ target/s390x/tcg/translate_vx.c.inc | 3109 +++ target/s390x/tcg/vec.h | 141 + target/s390x/tcg/vec_fpu_helper.c | 1072 + target/s390x/tcg/vec_helper.c | 214 + target/s390x/tcg/vec_int_helper.c | 587 + target/s390x/tcg/vec_string_helper.c | 473 + target/s390x/tcg_s390x.h | 24 - target/s390x/trace-events | 10 +- target/s390x/translate.c | 6692 ----- target/s390x/translate_vx.c.inc | 2718 -- target/s390x/vec.h | 141 - target/s390x/vec_fpu_helper.c | 625 - target/s390x/vec_helper.c | 192 - target/s390x/vec_int_helper.c | 587 - target/s390x/vec_string_helper.c | 473 - target/sh4/Kconfig | 2 + target/sh4/cpu.c | 15 +- target/sh4/helper.c | 7 +- target/sh4/translate.c | 33 +- target/sparc/Kconfig | 5 + target/sparc/cpu.c | 14 +- target/sparc/cpu.h | 6 - target/sparc/int32_helper.c | 70 +- target/sparc/int64_helper.c | 66 + target/sparc/trace-events | 14 +- target/sparc/translate.c | 37 +- target/tricore/Kconfig | 2 + target/tricore/cpu.c | 10 +- target/tricore/translate.c | 36 +- target/unicore32/cpu-param.h | 17 - target/unicore32/cpu-qom.h | 37 - target/unicore32/cpu.c | 174 - target/unicore32/cpu.h | 168 - target/unicore32/helper.c | 183 - target/unicore32/helper.h | 62 - target/unicore32/meson.build | 14 - target/unicore32/op_helper.c | 244 - target/unicore32/softmmu.c | 280 - target/unicore32/translate.c | 2083 -- target/unicore32/ucf64_helper.c | 324 - target/xtensa/Kconfig | 2 + target/xtensa/cpu.c | 15 +- target/xtensa/cpu.h | 7 - target/xtensa/exc_helper.c | 5 - target/xtensa/helper.c | 13 +- target/xtensa/op_helper.c | 1 - target/xtensa/translate.c | 151 +- target/xtensa/xtensa-semi.c | 84 +- tcg/README | 24 +- tcg/aarch64/tcg-target.c.inc | 135 +- tcg/aarch64/tcg-target.h | 4 +- tcg/arm/tcg-target-con-set.h | 10 + tcg/arm/tcg-target-con-str.h | 3 + tcg/arm/tcg-target.c.inc | 1260 +- tcg/arm/tcg-target.h | 56 +- tcg/arm/tcg-target.opc.h | 16 + tcg/i386/tcg-target.c.inc | 24 +- tcg/i386/tcg-target.h | 3 +- tcg/meson.build | 20 + tcg/mips/tcg-target.c.inc | 107 +- tcg/mips/tcg-target.h | 7 +- tcg/optimize.c | 59 +- tcg/ppc/tcg-target.c.inc | 232 +- tcg/ppc/tcg-target.h | 3 +- tcg/region.c | 982 + tcg/riscv/tcg-target.c.inc | 68 +- tcg/riscv/tcg-target.h | 2 +- tcg/s390/tcg-target.c.inc | 39 +- tcg/s390/tcg-target.h | 4 +- tcg/sparc/tcg-target.c.inc | 27 +- tcg/sparc/tcg-target.h | 2 +- tcg/tcg-internal.h | 62 + tcg/tcg-op-gvec.c | 142 +- tcg/tcg-op-vec.c | 1 - tcg/tcg-op.c | 227 +- tcg/tcg.c | 995 +- tcg/tci.c | 1194 +- tcg/tci/README | 20 +- tcg/tci/tcg-target-con-set.h | 1 + tcg/tci/tcg-target.c.inc | 573 +- tcg/tci/tcg-target.h | 68 +- tests/Makefile.include | 4 +- tests/acceptance/avocado_qemu/__init__.py | 250 +- tests/acceptance/boot_linux.py | 51 +- tests/acceptance/boot_linux_console.py | 143 +- tests/acceptance/boot_xen.py | 1 - tests/acceptance/cpu_queries.py | 4 +- tests/acceptance/hotplug_cpu.py | 37 + tests/acceptance/info_usernet.py | 29 + tests/acceptance/intel_iommu.py | 119 + tests/acceptance/linux_ssh_mips_malta.py | 49 +- tests/acceptance/machine_mips_fuloong2e.py | 42 + tests/acceptance/machine_mips_malta.py | 7 +- tests/acceptance/pc_cpu_hotplug_props.py | 2 +- tests/acceptance/ppc_prep_40p.py | 2 + tests/acceptance/replay_kernel.py | 17 +- tests/acceptance/reverse_debugging.py | 2 +- tests/acceptance/smmu.py | 137 + tests/acceptance/tcg_plugins.py | 15 +- tests/acceptance/virtio-gpu.py | 44 +- tests/acceptance/virtiofs_submounts.py | 71 +- tests/acceptance/x86_cpu_model_versions.py | 40 +- tests/data/acpi/microvm/DSDT.pcie | Bin 3031 -> 3023 bytes tests/data/acpi/pc/DSDT | Bin 6002 -> 6002 bytes tests/data/acpi/pc/DSDT.acpihmat | Bin 7327 -> 7327 bytes tests/data/acpi/pc/DSDT.bridge | Bin 8668 -> 8668 bytes tests/data/acpi/pc/DSDT.cphp | Bin 6466 -> 6466 bytes tests/data/acpi/pc/DSDT.dimmpxm | Bin 7656 -> 7656 bytes tests/data/acpi/pc/DSDT.hpbridge | Bin 5969 -> 5969 bytes tests/data/acpi/pc/DSDT.ipmikcs | Bin 6074 -> 6074 bytes tests/data/acpi/pc/DSDT.memhp | Bin 7361 -> 7361 bytes tests/data/acpi/pc/DSDT.nohpet | Bin 5860 -> 5860 bytes tests/data/acpi/pc/DSDT.numamem | Bin 6008 -> 6008 bytes tests/data/acpi/q35/DSDT | Bin 7859 -> 8289 bytes tests/data/acpi/q35/DSDT.acpihmat | Bin 9184 -> 9614 bytes tests/data/acpi/q35/DSDT.bridge | Bin 7877 -> 11003 bytes tests/data/acpi/q35/DSDT.cphp | Bin 8323 -> 8753 bytes tests/data/acpi/q35/DSDT.dimmpxm | Bin 9513 -> 9943 bytes tests/data/acpi/q35/DSDT.ipmibt | Bin 7934 -> 8364 bytes tests/data/acpi/q35/DSDT.memhp | Bin 9218 -> 9648 bytes tests/data/acpi/q35/DSDT.mmio64 | Bin 8990 -> 9419 bytes tests/data/acpi/q35/DSDT.nohpet | Bin 7717 -> 8147 bytes tests/data/acpi/q35/DSDT.numamem | Bin 7865 -> 8295 bytes tests/data/acpi/q35/DSDT.tis | Bin 8465 -> 8894 bytes tests/data/acpi/virt/DSDT | Bin 5204 -> 5196 bytes tests/data/acpi/virt/DSDT.memhp | Bin 6565 -> 6557 bytes tests/data/acpi/virt/DSDT.numamem | Bin 5204 -> 5196 bytes tests/data/acpi/virt/DSDT.pxb | Bin 7695 -> 7679 bytes tests/decode/succ_argset_type1.decode | 1 + tests/docker/Makefile.include | 29 +- tests/docker/common.rc | 19 +- tests/docker/docker.py | 82 +- tests/docker/dockerfiles/alpine.docker | 4 + tests/docker/dockerfiles/centos7.docker | 43 - tests/docker/dockerfiles/centos8.docker | 84 +- .../docker/dockerfiles/debian-hexagon-cross.docker | 45 + .../build-toolchain.sh | 141 + .../docker/dockerfiles/debian-powerpc-cross.docker | 12 - .../dockerfiles/debian-powerpc-test-cross.docker | 17 + tests/docker/dockerfiles/debian-ppc64-cross.docker | 11 - .../docker/dockerfiles/debian-tricore-cross.docker | 34 +- .../docker/dockerfiles/debian-xtensa-cross.docker | 2 +- tests/docker/dockerfiles/debian10.docker | 6 +- tests/docker/dockerfiles/debian11.docker | 2 +- tests/docker/dockerfiles/fedora-cris-cross.docker | 2 +- tests/docker/dockerfiles/fedora-i386-cross.docker | 4 +- tests/docker/dockerfiles/fedora-win32-cross.docker | 6 +- tests/docker/dockerfiles/fedora-win64-cross.docker | 7 +- tests/docker/dockerfiles/fedora.docker | 68 +- tests/docker/dockerfiles/opensuse-leap.docker | 78 +- tests/docker/dockerfiles/python.docker | 18 + tests/docker/dockerfiles/ubuntu.docker | 6 +- tests/docker/dockerfiles/ubuntu1804.docker | 72 +- tests/docker/dockerfiles/ubuntu2004.docker | 66 +- tests/docker/run | 3 - tests/docker/test-clang | 2 +- tests/docker/test-debug | 2 +- tests/docker/test-mingw | 3 +- tests/docker/test-misc | 2 +- tests/docker/test-tsan | 2 +- tests/fp/fp-bench.c | 88 +- tests/fp/fp-test-log2.c | 118 + tests/fp/fp-test.c | 11 +- tests/fp/meson.build | 27 +- tests/fp/wrap.c.inc | 14 +- tests/migration/guestperf/comparison.py | 14 + tests/migration/guestperf/engine.py | 22 +- tests/migration/guestperf/scenario.py | 12 +- tests/migration/guestperf/shell.py | 10 +- tests/plugin/syscall.c | 98 +- tests/qapi-schema/alternate-data-invalid.err | 2 + tests/qapi-schema/alternate-data-invalid.json | 4 + tests/qapi-schema/alternate-data-invalid.out | 0 tests/qapi-schema/enum-dict-no-name.err | 2 + tests/qapi-schema/enum-dict-no-name.json | 2 + tests/qapi-schema/enum-dict-no-name.out | 0 tests/qapi-schema/meson.build | 13 +- tests/qapi-schema/missing-array-rsqb.err | 1 + tests/qapi-schema/missing-array-rsqb.json | 1 + tests/qapi-schema/missing-array-rsqb.out | 0 .../qapi-schema/missing-object-member-element.err | 1 + .../qapi-schema/missing-object-member-element.json | 1 + .../qapi-schema/missing-object-member-element.out | 0 tests/qapi-schema/missing-schema.err | 1 + tests/qapi-schema/missing-schema.out | 0 tests/qapi-schema/non-objects.err | 2 +- tests/qapi-schema/quoted-structural-chars.err | 2 +- tests/qapi-schema/test-qapi.py | 3 - tests/qapi-schema/union-invalid-data.err | 2 + tests/qapi-schema/union-invalid-data.json | 6 + tests/qapi-schema/union-invalid-data.out | 0 tests/qemu-iotests/005 | 5 - tests/qemu-iotests/025 | 2 +- tests/qemu-iotests/040 | 4 +- tests/qemu-iotests/041 | 6 +- tests/qemu-iotests/061 | 3 + tests/qemu-iotests/061.out | 3 +- tests/qemu-iotests/082.out | 6 +- tests/qemu-iotests/114 | 18 +- tests/qemu-iotests/114.out | 11 +- tests/qemu-iotests/122.out | 84 +- tests/qemu-iotests/146.out | 780 +- tests/qemu-iotests/151 | 54 +- tests/qemu-iotests/151.out | 4 +- tests/qemu-iotests/154.out | 190 +- tests/qemu-iotests/155 | 9 +- tests/qemu-iotests/165 | 4 +- tests/qemu-iotests/172.out | 38 + tests/qemu-iotests/179.out | 133 +- tests/qemu-iotests/189 | 2 +- tests/qemu-iotests/198 | 2 +- tests/qemu-iotests/207 | 54 + tests/qemu-iotests/207.out | 25 + tests/qemu-iotests/209.out | 4 +- tests/qemu-iotests/211.out | 8 +- tests/qemu-iotests/221.out | 16 +- tests/qemu-iotests/223.out | 56 +- tests/qemu-iotests/231 | 4 + tests/qemu-iotests/231.out | 7 +- tests/qemu-iotests/233 | 2 +- tests/qemu-iotests/233.out | 4 +- tests/qemu-iotests/240.out | 8 +- tests/qemu-iotests/241.out | 10 +- tests/qemu-iotests/244.out | 23 +- tests/qemu-iotests/245 | 220 +- tests/qemu-iotests/245.out | 17 +- tests/qemu-iotests/248 | 4 +- tests/qemu-iotests/248.out | 2 +- tests/qemu-iotests/252.out | 10 +- tests/qemu-iotests/253.out | 20 +- tests/qemu-iotests/264 | 2 +- tests/qemu-iotests/274.out | 48 +- tests/qemu-iotests/283.out | 2 +- tests/qemu-iotests/291 | 135 - tests/qemu-iotests/291.out | 118 - tests/qemu-iotests/295.out | 6 +- tests/qemu-iotests/296 | 11 +- tests/qemu-iotests/296.out | 8 +- tests/qemu-iotests/297 | 1 + tests/qemu-iotests/298 | 4 +- tests/qemu-iotests/300 | 4 +- tests/qemu-iotests/301 | 4 +- tests/qemu-iotests/301.out | 16 +- tests/qemu-iotests/307 | 15 + tests/qemu-iotests/307.out | 10 +- tests/qemu-iotests/308 | 20 +- tests/qemu-iotests/308.out | 6 +- tests/qemu-iotests/309 | 78 - tests/qemu-iotests/309.out | 22 - tests/qemu-iotests/check | 22 +- tests/qemu-iotests/common.filter | 5 + tests/qemu-iotests/common.rc | 10 +- tests/qemu-iotests/iotests.py | 149 +- tests/qemu-iotests/pylintrc | 3 + tests/qemu-iotests/testenv.py | 22 +- tests/qemu-iotests/testrunner.py | 37 +- tests/qemu-iotests/tests/fuse-allow-other | 168 + tests/qemu-iotests/tests/fuse-allow-other.out | 88 + tests/qemu-iotests/tests/nbd-qemu-allocation | 81 + tests/qemu-iotests/tests/nbd-qemu-allocation.out | 32 + tests/qemu-iotests/tests/qemu-img-bitmaps | 167 + tests/qemu-iotests/tests/qemu-img-bitmaps.out | 183 + tests/qemu-iotests/tests/qsd-jobs.out | 2 +- .../qemu-iotests/tests/remove-bitmap-from-backing | 22 +- tests/qtest/adm1272-test.c | 445 + tests/qtest/ahci-test.c | 4 +- tests/qtest/aspeed_hace-test.c | 469 + tests/qtest/aspeed_smc-test.c | 382 + tests/qtest/bios-tables-test.c | 8 +- tests/qtest/boot-serial-test.c | 45 +- tests/qtest/e1000e-test.c | 3 +- tests/qtest/emc141x-test.c | 2 +- tests/qtest/fuzz-sb16-test.c | 69 + tests/qtest/fuzz-sdcard-test.c | 102 + tests/qtest/fuzz/fuzz.c | 2 +- tests/qtest/fuzz/generic_fuzz.c | 6 +- tests/qtest/fuzz/qos_fuzz.c | 2 - tests/qtest/fuzz/qos_fuzz.h | 4 +- tests/qtest/hd-geo-test.c | 4 +- tests/qtest/ipmi-bt-test.c | 6 +- tests/qtest/ipmi-kcs-test.c | 3 +- tests/qtest/libqos/meson.build | 1 + tests/qtest/libqos/qgraph.c | 2 +- tests/qtest/libqos/vhost-user-blk.c | 130 + tests/qtest/libqos/vhost-user-blk.h | 48 + tests/qtest/libqos/virtio-9p.c | 5 + tests/qtest/libqtest.c | 9 +- tests/qtest/m25p80-test.c | 382 - tests/qtest/machine-none-test.c | 3 - tests/qtest/max34451-test.c | 336 + tests/qtest/meson.build | 20 +- tests/qtest/migration-test.c | 138 +- tests/qtest/npcm7xx_pwm-test.c | 4 +- tests/qtest/npcm7xx_smbus-test.c | 2 +- tests/qtest/numa-test.c | 22 +- tests/qtest/nvme-test.c | 87 +- tests/qtest/pflash-cfi02-test.c | 2 +- tests/qtest/rtas-test.c | 15 +- tests/qtest/rtc-test.c | 6 +- tests/qtest/tmp105-test.c | 2 +- tests/qtest/tpm-tests.c | 12 +- tests/qtest/tpm-util.c | 4 +- tests/qtest/vhost-user-blk-test.c | 997 + tests/qtest/virtio-9p-test.c | 5 + tests/qtest/virtio-scsi-test.c | 51 + tests/requirements.txt | 2 +- tests/tcg/Makefile.qemu | 17 + tests/tcg/Makefile.target | 11 +- tests/tcg/README | 6 - tests/tcg/aarch64/Makefile.target | 2 +- tests/tcg/aarch64/mte-5.c | 44 + tests/tcg/aarch64/mte-7.c | 31 + tests/tcg/configure.sh | 223 +- tests/tcg/hexagon/Makefile.target | 15 +- tests/tcg/hexagon/brev.c | 190 + tests/tcg/hexagon/circ.c | 486 + tests/tcg/hexagon/fpstuff.c | 242 + tests/tcg/hexagon/load_align.c | 415 + tests/tcg/hexagon/load_unpack.c | 474 + tests/tcg/hexagon/misc.c | 95 +- tests/tcg/hexagon/multi_result.c | 282 + tests/tcg/hppa/Makefile.target | 1 + tests/tcg/i386/Makefile.target | 3 + tests/tcg/lm32/Makefile | 106 - tests/tcg/lm32/crt.S | 84 - tests/tcg/lm32/helper.S | 65 - tests/tcg/lm32/linker.ld | 55 - tests/tcg/lm32/macros.inc | 90 - tests/tcg/lm32/test_add.S | 75 - tests/tcg/lm32/test_addi.S | 56 - tests/tcg/lm32/test_and.S | 45 - tests/tcg/lm32/test_andhi.S | 35 - tests/tcg/lm32/test_andi.S | 35 - tests/tcg/lm32/test_b.S | 13 - tests/tcg/lm32/test_be.S | 48 - tests/tcg/lm32/test_bg.S | 78 - tests/tcg/lm32/test_bge.S | 78 - tests/tcg/lm32/test_bgeu.S | 78 - tests/tcg/lm32/test_bgu.S | 78 - tests/tcg/lm32/test_bi.S | 23 - tests/tcg/lm32/test_bne.S | 48 - tests/tcg/lm32/test_break.S | 20 - tests/tcg/lm32/test_bret.S | 38 - tests/tcg/lm32/test_call.S | 16 - tests/tcg/lm32/test_calli.S | 15 - tests/tcg/lm32/test_cmpe.S | 40 - tests/tcg/lm32/test_cmpei.S | 35 - tests/tcg/lm32/test_cmpg.S | 64 - tests/tcg/lm32/test_cmpge.S | 64 - tests/tcg/lm32/test_cmpgei.S | 70 - tests/tcg/lm32/test_cmpgeu.S | 64 - tests/tcg/lm32/test_cmpgeui.S | 70 - tests/tcg/lm32/test_cmpgi.S | 70 - tests/tcg/lm32/test_cmpgu.S | 64 - tests/tcg/lm32/test_cmpgui.S | 70 - tests/tcg/lm32/test_cmpne.S | 40 - tests/tcg/lm32/test_cmpnei.S | 35 - tests/tcg/lm32/test_divu.S | 29 - tests/tcg/lm32/test_eret.S | 38 - tests/tcg/lm32/test_lb.S | 49 - tests/tcg/lm32/test_lbu.S | 49 - tests/tcg/lm32/test_lh.S | 49 - tests/tcg/lm32/test_lhu.S | 49 - tests/tcg/lm32/test_lw.S | 32 - tests/tcg/lm32/test_modu.S | 35 - tests/tcg/lm32/test_mul.S | 70 - tests/tcg/lm32/test_muli.S | 45 - tests/tcg/lm32/test_nor.S | 51 - tests/tcg/lm32/test_nori.S | 35 - tests/tcg/lm32/test_or.S | 51 - tests/tcg/lm32/test_orhi.S | 35 - tests/tcg/lm32/test_ori.S | 35 - tests/tcg/lm32/test_ret.S | 14 - tests/tcg/lm32/test_sb.S | 32 - tests/tcg/lm32/test_scall.S | 24 - tests/tcg/lm32/test_sextb.S | 20 - tests/tcg/lm32/test_sexth.S | 20 - tests/tcg/lm32/test_sh.S | 32 - tests/tcg/lm32/test_sl.S | 45 - tests/tcg/lm32/test_sli.S | 30 - tests/tcg/lm32/test_sr.S | 57 - tests/tcg/lm32/test_sri.S | 40 - tests/tcg/lm32/test_sru.S | 57 - tests/tcg/lm32/test_srui.S | 40 - tests/tcg/lm32/test_sub.S | 75 - tests/tcg/lm32/test_sw.S | 38 - tests/tcg/lm32/test_xnor.S | 51 - tests/tcg/lm32/test_xnori.S | 35 - tests/tcg/lm32/test_xor.S | 51 - tests/tcg/lm32/test_xori.S | 35 - tests/tcg/minilib/minilib.h | 4 +- tests/tcg/multiarch/Makefile.target | 10 + tests/tcg/multiarch/linux-test.c | 9 + tests/tcg/multiarch/signals.c | 149 + tests/tcg/multiarch/system/memory.c | 1 + tests/tcg/multiarch/test-mmap.c | 208 +- tests/tcg/ppc64/Makefile.target | 13 + tests/tcg/ppc64le/Makefile.target | 13 + tests/tcg/ppc64le/byte_reverse.c | 21 + tests/tcg/s390x/Makefile.target | 1 + tests/tcg/s390x/trap.c | 102 + tests/tcg/sparc64/Makefile.target | 7 +- tests/tcg/tricore/Makefile.softmmu-target | 26 + tests/tcg/tricore/link.ld | 60 + tests/tcg/tricore/macros.h | 129 + tests/tcg/tricore/test_abs.S | 7 + tests/tcg/tricore/test_bmerge.S | 8 + tests/tcg/tricore/test_clz.S | 9 + tests/tcg/tricore/test_dvstep.S | 15 + tests/tcg/tricore/test_fadd.S | 16 + tests/tcg/tricore/test_fmul.S | 8 + tests/tcg/tricore/test_ftoi.S | 10 + tests/tcg/tricore/test_madd.S | 11 + tests/tcg/tricore/test_msub.S | 9 + tests/tcg/tricore/test_muls.S | 9 + tests/tcg/x86_64/Makefile.target | 6 +- tests/tcg/x86_64/vsyscall.c | 12 + tests/tcg/xtensa/test_load_store.S | 221 + tests/unit/crypto-tls-psk-helpers.c | 6 - tests/unit/crypto-tls-psk-helpers.h | 4 - tests/unit/crypto-tls-x509-helpers.c | 4 - tests/unit/crypto-tls-x509-helpers.h | 11 +- tests/unit/iothread.c | 9 +- tests/unit/meson.build | 11 +- tests/unit/pkix_asn1_tab.c | 3 - tests/unit/ptimer-test-stubs.c | 2 +- tests/unit/test-aio.c | 37 + tests/unit/test-bdrv-drain.c | 3 +- tests/unit/test-bdrv-graph-mod.c | 210 +- tests/unit/test-block-iothread.c | 6 - tests/unit/test-crypto-cipher.c | 31 +- tests/unit/test-crypto-hash.c | 13 +- tests/unit/test-crypto-hmac.c | 28 +- tests/unit/test-crypto-ivgen.c | 14 +- tests/unit/test-crypto-pbkdf.c | 5 +- tests/unit/test-crypto-tlscredsx509.c | 12 - tests/unit/test-crypto-tlssession.c | 12 - tests/unit/test-forward-visitor.c | 197 + tests/unit/test-io-channel-tls.c | 12 - tests/unit/test-iov.c | 5 +- tests/unit/test-keyval.c | 58 + tests/unit/test-qemu-opts.c | 35 - tests/unit/test-replication.c | 2 +- tests/unit/test-vmstate.c | 5 +- tests/unit/test-write-threshold.c | 90 +- tests/vm/Makefile.include | 1 + tests/vm/aarch64vm.py | 2 +- tests/vm/basevm.py | 16 +- tests/vm/centos | 17 +- tests/vm/centos.aarch64 | 2 +- tests/vm/netbsd | 4 +- tests/vm/openbsd | 4 +- tools/ebpf/Makefile.ebpf | 21 + tools/ebpf/rss.bpf.c | 571 + tools/virtiofsd/buffer.c | 4 +- tools/virtiofsd/fuse_common.h | 5 + tools/virtiofsd/fuse_lowlevel.c | 67 +- tools/virtiofsd/fuse_lowlevel.h | 3 +- tools/virtiofsd/fuse_opt.c | 4 +- tools/virtiofsd/fuse_virtio.c | 216 +- tools/virtiofsd/helper.c | 4 + tools/virtiofsd/passthrough_ll.c | 318 +- tools/virtiofsd/passthrough_seccomp.c | 1 + trace-events | 7 +- trace/control-target.c | 2 +- trace/control.c | 39 +- trace/control.h | 30 +- trace/mem-internal.h | 50 - trace/mem.h | 46 +- trace/meson.build | 2 +- trace/qmp.c | 6 +- trace/simple.c | 22 +- trace/simple.h | 1 + ui/clipboard.c | 92 + ui/cocoa.m | 162 +- ui/console.c | 8 +- ui/egl-headless.c | 2 + ui/gtk-clipboard.c | 192 + ui/gtk.c | 126 +- ui/input-barrier.c | 5 + ui/keycodemapdb | 2 +- ui/meson.build | 6 +- ui/qemu-pixman.c | 35 +- ui/sdl2.c | 9 +- ui/spice-app.c | 6 +- ui/spice-core.c | 5 + ui/spice-display.c | 4 + ui/trace-events | 12 +- ui/udmabuf.c | 40 + ui/vdagent.c | 803 + ui/vnc-auth-sasl.c | 20 + ui/vnc-auth-sasl.h | 1 + ui/vnc-clipboard.c | 323 + ui/vnc.c | 60 +- ui/vnc.h | 24 + ui/x_keymap.c | 15 +- util/aio-posix.c | 12 + util/aio-win32.c | 5 + util/async.c | 47 +- util/compatfd.c | 8 +- util/cutils.c | 2 +- util/guest-random.c | 2 +- util/keyval.c | 123 +- util/main-loop.c | 114 +- util/meson.build | 8 +- util/mmap-alloc.c | 214 +- util/module.c | 193 +- util/osdep.c | 9 + util/oslib-posix.c | 18 +- util/oslib-win32.c | 224 +- util/qemu-co-shared-resource.c | 24 +- util/qemu-config.c | 96 +- util/qemu-coroutine-sleep.c | 75 +- util/qemu-option.c | 56 +- util/qemu-sockets.c | 76 +- util/qemu-thread-posix.c | 24 +- util/qemu-thread-win32.c | 2 +- util/qsp.c | 4 +- util/selfmap.c | 29 +- util/trace-events | 6 +- util/transactions.c | 96 + util/uri.c | 22 +- util/vfio-helpers.c | 41 +- 2742 files changed, 219900 insertions(+), 184295 deletions(-) diff --git a/.cirrus.yml b/.cirrus.yml index f53c519447..02c43a074a 100644 --- a/.cirrus.yml +++ b/.cirrus.yml @@ -1,61 +1,6 @@ env: CIRRUS_CLONE_DEPTH: 1 -freebsd_12_task: - freebsd_instance: - image_family: freebsd-12-2 - cpu: 8 - memory: 8G - install_script: - - ASSUME_ALWAYS_YES=yes pkg bootstrap -f ; - - pkg install -y bash curl cyrus-sasl git glib gmake gnutls gsed - nettle perl5 pixman pkgconf png usbredir ninja - script: - - mkdir build - - cd build - # TODO: Enable gnutls again once FreeBSD's libtasn1 got fixed - # See: https://gitlab.com/gnutls/libtasn1/-/merge_requests/71 - - ../configure --enable-werror --disable-gnutls - || { cat config.log meson-logs/meson-log.txt; exit 1; } - - gmake -j$(sysctl -n hw.ncpu) - - gmake -j$(sysctl -n hw.ncpu) check V=1 - -macos_task: - osx_instance: - image: catalina-base - install_script: - - brew install pkg-config python gnu-sed glib pixman make sdl2 bash ninja - script: - - mkdir build - - cd build - - ../configure --python=/usr/local/bin/python3 --enable-werror - --extra-cflags='-Wno-error=deprecated-declarations' - || { cat config.log meson-logs/meson-log.txt; exit 1; } - - gmake -j$(sysctl -n hw.ncpu) - - gmake check-unit V=1 - - gmake check-block V=1 - - gmake check-qapi-schema V=1 - - gmake check-softfloat V=1 - - gmake check-qtest-x86_64 V=1 - -macos_xcode_task: - osx_instance: - # this is an alias for the latest Xcode - image: catalina-xcode - install_script: - - brew install pkg-config gnu-sed glib pixman make sdl2 bash ninja - script: - - mkdir build - - cd build - - ../configure --extra-cflags='-Wno-error=deprecated-declarations' --enable-modules - --enable-werror --cc=clang || { cat config.log meson-logs/meson-log.txt; exit 1; } - - gmake -j$(sysctl -n hw.ncpu) - - gmake check-unit V=1 - - gmake check-block V=1 - - gmake check-qapi-schema V=1 - - gmake check-softfloat V=1 - - gmake check-qtest-x86_64 V=1 - windows_msys2_task: timeout_in: 90m windows_container: @@ -67,7 +12,7 @@ windows_msys2_task: CIRRUS_SHELL: powershell MSYS: winsymlinks:nativestrict MSYSTEM: MINGW64 - MSYS2_URL: https://github.com/msys2/msys2-installer/releases/download/2021-01-05/msys2-base-x86_64-20210105.sfx.exe + MSYS2_URL: https://github.com/msys2/msys2-installer/releases/download/2021-04-19/msys2-base-x86_64-20210419.sfx.exe MSYS2_FINGERPRINT: 0 MSYS2_PACKAGES: " diffutils git grep make pkg-config sed @@ -130,7 +75,7 @@ windows_msys2_task: taskkill /F /FI "MODULES eq msys-2.0.dll" tasklist C:\tools\msys64\usr\bin\bash.exe -lc "mv -f /etc/pacman.conf.pacnew /etc/pacman.conf || true" - C:\tools\msys64\usr\bin\bash.exe -lc "pacman --noconfirm -Suu --overwrite=*" + C:\tools\msys64\usr\bin\bash.exe -lc "pacman --noconfirm -Syuu --overwrite=*" Write-Output "Core install time taken: $((Get-Date).Subtract($start_time))" $start_time = Get-Date diff --git a/.github/lockdown.yml b/.github/lockdown.yml index 07fc2f31ee..d3546bd2bc 100644 --- a/.github/lockdown.yml +++ b/.github/lockdown.yml @@ -14,11 +14,11 @@ issues: at https://gitlab.com/qemu-project/qemu.git. The project does not process issues filed on GitHub. - The project issues are tracked on Launchpad: - https://bugs.launchpad.net/qemu + The project issues are tracked on GitLab: + https://gitlab.com/qemu-project/qemu/-/issues QEMU welcomes bug report contributions. You can file new ones on: - https://bugs.launchpad.net/qemu/+filebug + https://gitlab.com/qemu-project/qemu/-/issues/new pulls: comment: | diff --git a/.gitignore b/.gitignore index 75a4be0724..eb2553026c 100644 --- a/.gitignore +++ b/.gitignore @@ -13,3 +13,5 @@ GTAGS *~ *.ast_raw *.depend_raw +*.swp +*.patch diff --git a/.gitlab-ci.d/buildtest-template.yml b/.gitlab-ci.d/buildtest-template.yml new file mode 100644 index 0000000000..fcbcc4e627 --- /dev/null +++ b/.gitlab-ci.d/buildtest-template.yml @@ -0,0 +1,81 @@ +.native_build_job_template: + stage: build + image: $CI_REGISTRY_IMAGE/qemu/$IMAGE:latest + before_script: + - JOBS=$(expr $(nproc) + 1) + script: + - if test -n "$LD_JOBS"; + then + scripts/git-submodule.sh update meson ; + fi + - mkdir build + - cd build + - if test -n "$TARGETS"; + then + ../configure --enable-werror --disable-docs ${LD_JOBS:+--meson=git} $CONFIGURE_ARGS --target-list="$TARGETS" ; + else + ../configure --enable-werror --disable-docs ${LD_JOBS:+--meson=git} $CONFIGURE_ARGS ; + fi || { cat config.log meson-logs/meson-log.txt && exit 1; } + - if test -n "$LD_JOBS"; + then + ../meson/meson.py configure . -Dbackend_max_links="$LD_JOBS" ; + fi || exit 1; + - make -j"$JOBS" + - if test -n "$MAKE_CHECK_ARGS"; + then + make -j"$JOBS" $MAKE_CHECK_ARGS ; + fi + +.native_test_job_template: + stage: test + image: $CI_REGISTRY_IMAGE/qemu/$IMAGE:latest + script: + - scripts/git-submodule.sh update + $(sed -n '/GIT_SUBMODULES=/ s/.*=// p' build/config-host.mak) + - cd build + - find . -type f -exec touch {} + + # Avoid recompiling by hiding ninja with NINJA=":" + - make NINJA=":" $MAKE_CHECK_ARGS + +.acceptance_test_job_template: + extends: .native_test_job_template + cache: + key: "${CI_JOB_NAME}-cache" + paths: + - ${CI_PROJECT_DIR}/avocado-cache + policy: pull-push + artifacts: + name: "$CI_JOB_NAME-$CI_COMMIT_REF_SLUG" + when: on_failure + expire_in: 7 days + paths: + - build/tests/results/latest/results.xml + - build/tests/results/latest/test-results + reports: + junit: build/tests/results/latest/results.xml + before_script: + - mkdir -p ~/.config/avocado + - echo "[datadir.paths]" > ~/.config/avocado/avocado.conf + - echo "cache_dirs = ['${CI_PROJECT_DIR}/avocado-cache']" + >> ~/.config/avocado/avocado.conf + - echo -e '[job.output.testlogs]\nstatuses = ["FAIL", "INTERRUPT"]' + >> ~/.config/avocado/avocado.conf + - if [ -d ${CI_PROJECT_DIR}/avocado-cache ]; then + du -chs ${CI_PROJECT_DIR}/avocado-cache ; + fi + - export AVOCADO_ALLOW_UNTRUSTED_CODE=1 + after_script: + - cd build + - du -chs ${CI_PROJECT_DIR}/avocado-cache + rules: + # Only run these jobs if running on the mainstream namespace, + # or if the user set the QEMU_CI_AVOCADO_TESTING variable (either + # in its namespace setting or via git-push option, see documentation + # in /.gitlab-ci.yml of this repository). + - if: '$CI_PROJECT_NAMESPACE == "qemu-project"' + when: on_success + - if: '$QEMU_CI_AVOCADO_TESTING' + when: on_success + # Otherwise, set to manual (the jobs are created but not run). + - when: manual + allow_failure: true diff --git a/.gitlab-ci.d/buildtest.yml b/.gitlab-ci.d/buildtest.yml new file mode 100644 index 0000000000..903ee65f32 --- /dev/null +++ b/.gitlab-ci.d/buildtest.yml @@ -0,0 +1,724 @@ +include: + - local: '/.gitlab-ci.d/buildtest-template.yml' + +build-system-alpine: + extends: .native_build_job_template + needs: + - job: amd64-alpine-container + variables: + IMAGE: alpine + TARGETS: aarch64-softmmu alpha-softmmu cris-softmmu hppa-softmmu + microblazeel-softmmu mips64el-softmmu + MAKE_CHECK_ARGS: check-build + CONFIGURE_ARGS: --enable-docs --enable-trace-backends=log,simple,syslog + artifacts: + expire_in: 2 days + paths: + - .git-submodule-status + - build + +check-system-alpine: + extends: .native_test_job_template + needs: + - job: build-system-alpine + artifacts: true + variables: + IMAGE: alpine + MAKE_CHECK_ARGS: check + +acceptance-system-alpine: + extends: .acceptance_test_job_template + needs: + - job: build-system-alpine + artifacts: true + variables:
|
Lists.xenproject.org is hosted with RackSpace, monitoring our |