[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] [qemu-xen staging] Merge tag 'v8.0.4' into 'staging'
=== This changeset includes merge from high-traffic branch === Commits on that branch are not reported individually. commit 0df9387c8983e1b1e72d8c574356f572342c03e6 Merge: 83a9cdbd65ceb4a443630aed011a00ef217ed408 690346043db881debcace7d22249f3355527c5f9 Author: Anthony PERARD <anthony.perard@xxxxxxxxxx> AuthorDate: Wed Aug 16 10:43:53 2023 +0100 Commit: Anthony PERARD <anthony.perard@xxxxxxxxxx> CommitDate: Wed Aug 16 10:43:53 2023 +0100 Merge tag 'v8.0.4' into 'staging' .cirrus.yml | 109 - .git-blame-ignore-revs | 21 + .gitlab-ci.d/base.yml | 9 +- .gitlab-ci.d/buildtest-template.yml | 26 +- .gitlab-ci.d/buildtest.yml | 181 +- .gitlab-ci.d/cirrus.yml | 6 +- .gitlab-ci.d/cirrus/build.yml | 7 +- .gitlab-ci.d/cirrus/freebsd-12.vars | 2 +- .gitlab-ci.d/cirrus/freebsd-13.vars | 2 +- .gitlab-ci.d/cirrus/macos-12.vars | 2 +- .gitlab-ci.d/container-cross.yml | 22 +- .gitlab-ci.d/container-template.yml | 9 +- .gitlab-ci.d/containers.yml | 4 +- .gitlab-ci.d/crossbuild-template.yml | 23 +- .gitlab-ci.d/crossbuilds.yml | 46 +- .gitlab-ci.d/custom-runners.yml | 12 + .../custom-runners/centos-stream-8-x86_64.yml | 18 +- .gitlab-ci.d/custom-runners/ubuntu-20.04-s390x.yml | 23 +- .../custom-runners/ubuntu-22.04-aarch32.yml | 4 +- .../custom-runners/ubuntu-22.04-aarch64.yml | 25 +- .gitlab-ci.d/edk2.yml | 85 - .gitlab-ci.d/edk2/Dockerfile | 27 - .gitlab-ci.d/opensbi.yml | 4 +- .gitlab-ci.d/opensbi/Dockerfile | 1 + .gitlab-ci.d/qemu-project.yml | 1 - .gitlab-ci.d/static_checks.yml | 4 +- .gitlab-ci.d/windows.yml | 45 +- .gitlab/issue_templates/bug.md | 16 +- .gitmodules | 3 - .mailmap | 2 + .travis.yml | 59 +- MAINTAINERS | 204 +- Makefile | 6 +- VERSION | 2 +- accel/accel-blocker.c | 154 + accel/accel-softmmu.c | 2 +- accel/kvm/kvm-accel-ops.c | 8 + accel/kvm/kvm-all.c | 135 +- accel/kvm/kvm-cpus.h | 4 +- accel/meson.build | 11 +- accel/stubs/tcg-stub.c | 3 +- accel/tcg/atomic_common.c.inc | 45 + accel/tcg/cpu-exec-common.c | 3 + accel/tcg/cpu-exec.c | 301 +- accel/tcg/cputlb.c | 217 +- accel/tcg/debuginfo.c | 96 + accel/tcg/debuginfo.h | 79 + accel/tcg/hmp.c | 14 - accel/tcg/internal.h | 94 +- accel/tcg/meson.build | 4 +- accel/tcg/monitor.c | 106 + accel/tcg/perf.c | 375 + accel/tcg/perf.h | 49 + accel/tcg/plugin-gen.c | 113 +- accel/tcg/plugin-helpers.h | 4 +- accel/tcg/tb-jmp-cache.h | 43 +- accel/tcg/tb-maint.c | 1070 +- accel/tcg/tcg-accel-ops.c | 20 +- accel/tcg/tcg-all.c | 2 +- accel/tcg/tcg-runtime.h | 11 + accel/tcg/trace-events | 4 + accel/tcg/translate-all.c | 847 +- accel/tcg/translator.c | 51 +- accel/tcg/user-exec-stub.c | 2 +- accel/tcg/user-exec.c | 759 +- accel/xen/xen-all.c | 100 +- audio/alsaaudio.c | 29 +- audio/audio-hmp-cmds.c | 83 + audio/audio.c | 430 +- audio/audio_int.h | 22 +- audio/audio_legacy.c | 58 +- audio/audio_template.h | 125 +- audio/dbusaudio.c | 7 +- audio/meson.build | 1 + audio/mixeng.c | 87 +- audio/mixeng.h | 2 + audio/ossaudio.c | 8 +- audio/paaudio.c | 12 +- audio/rate_template.h | 21 +- audio/sndioaudio.c | 4 +- audio/wavaudio.c | 2 +- authz/listfile.c | 1 - backends/cryptodev-builtin.c | 42 +- backends/cryptodev-hmp-cmds.c | 54 + backends/cryptodev-lkcf.c | 19 +- backends/cryptodev-vhost-user.c | 13 +- backends/cryptodev-vhost.c | 5 +- backends/cryptodev.c | 443 +- backends/hostmem-epc.c | 2 +- backends/hostmem.c | 19 +- backends/meson.build | 1 + backends/rng.c | 1 - backends/tpm/tpm_emulator.c | 9 +- backends/tpm/tpm_ioctl.h | 2 - backends/tpm/tpm_passthrough.c | 2 - backends/vhost-user.c | 12 - block.c | 581 +- block/amend.c | 1 + block/backup.c | 5 +- block/blkdebug.c | 33 +- block/blkio.c | 17 +- block/blklogwrites.c | 40 +- block/blkreplay.c | 29 +- block/blkverify.c | 10 +- block/block-backend.c | 145 +- block/block-copy.c | 45 +- block/block-gen.h | 11 +- block/bochs.c | 3 +- block/cloop.c | 1 + block/commit.c | 14 +- block/copy-before-write.c | 37 +- block/copy-on-read.c | 58 +- block/coroutines.h | 23 +- block/create.c | 9 +- block/crypto.c | 55 +- block/curl.c | 17 +- block/dirty-bitmap.c | 93 +- block/dmg-lzfse.c | 5 + block/dmg.c | 1 + block/export/export.c | 8 +- block/export/fuse.c | 14 +- block/export/vduse-blk.c | 6 +- block/export/virtio-blk-handler.c | 7 +- block/file-posix.c | 212 +- block/file-win32.c | 26 +- block/filter-compress.c | 52 +- block/gluster.c | 27 +- block/graph-lock.c | 302 + block/io.c | 565 +- block/iscsi.c | 49 +- block/meson.build | 4 + block/mirror.c | 67 +- block/monitor/bitmap-qmp-cmds.c | 2 + block/monitor/block-hmp-cmds.c | 72 +- block/nbd.c | 8 +- block/nfs.c | 29 +- block/null.c | 14 +- block/nvme.c | 15 +- block/parallels-ext.c | 2 + block/parallels.c | 51 +- block/preallocate.c | 54 +- block/progress_meter.c | 2 + block/qapi-sysemu.c | 74 +- block/qapi.c | 381 +- block/qcow.c | 79 +- block/qcow2-bitmap.c | 2 + block/qcow2-cache.c | 1 + block/qcow2-cluster.c | 18 +- block/qcow2-refcount.c | 3 +- block/qcow2-threads.c | 1 + block/qcow2.c | 225 +- block/qcow2.h | 27 +- block/qed-check.c | 4 +- block/qed-table.c | 11 +- block/qed.c | 157 +- block/qed.h | 45 +- block/quorum.c | 70 +- block/raw-format.c | 101 +- block/rbd.c | 215 +- block/replication.c | 29 +- block/snapshot-access.c | 8 +- block/ssh.c | 7 +- block/stream.c | 67 +- block/throttle.c | 50 +- block/vdi.c | 36 +- block/vhdx-log.c | 1 + block/vhdx.c | 41 +- block/vmdk.c | 232 +- block/vpc.c | 34 +- block/vvfat.c | 4 +- block/win32-aio.c | 1 + block/write-threshold.c | 1 + blockdev-nbd.c | 9 +- blockdev.c | 215 +- blockjob.c | 6 +- bsd-user/arm/signal.c | 1 + bsd-user/arm/target_arch_cpu.c | 2 + bsd-user/bsd-proc.h | 4 - bsd-user/elfload.c | 2 +- bsd-user/freebsd/os-sys.c | 572 + bsd-user/freebsd/os-syscall.c | 19 +- bsd-user/i386/signal.c | 1 + bsd-user/i386/target_arch_cpu.c | 3 +- bsd-user/main.c | 15 +- bsd-user/mmap.c | 10 +- bsd-user/qemu.h | 11 +- bsd-user/signal.c | 1 + bsd-user/strace.c | 1 - bsd-user/x86_64/signal.c | 1 + bsd-user/x86_64/target_arch_cpu.c | 3 +- chardev/baum.c | 66 +- chardev/char-fd.c | 2 +- chardev/char-file.c | 4 +- chardev/char-hmp-cmds.c | 220 + chardev/char-parallel.c | 15 +- chardev/char-pipe.c | 8 +- chardev/char-pty.c | 4 +- chardev/char-socket.c | 14 +- chardev/char-udp.c | 1 - chardev/char.c | 57 +- chardev/meson.build | 11 +- chardev/spice.c | 2 - common-user/host/ppc/safe-syscall.inc.S | 107 + configs/devices/arm-softmmu/default.mak | 1 + configs/devices/mips-softmmu/common.mak | 6 - configs/targets/aarch64-linux-user.mak | 2 +- configs/targets/aarch64-softmmu.mak | 2 +- configs/targets/aarch64_be-linux-user.mak | 2 +- configs/targets/microblaze-linux-user.mak | 1 + configs/targets/microblaze-softmmu.mak | 1 + configs/targets/microblazeel-linux-user.mak | 1 + configs/targets/microblazeel-softmmu.mak | 1 + configs/targets/nios2-softmmu.mak | 1 + configure | 256 +- contrib/elf2dmp/addrspace.c | 1 + contrib/elf2dmp/main.c | 108 +- contrib/elf2dmp/pe.h | 115 +- contrib/gitdm/domain-map | 11 +- contrib/gitdm/filetypes.txt | 3 +- contrib/gitdm/group-map-alibaba | 7 + contrib/gitdm/group-map-amd | 8 + contrib/gitdm/group-map-facebook | 5 + contrib/gitdm/group-map-ibm | 1 + contrib/gitdm/group-map-individuals | 5 + contrib/plugins/cache.c | 8 +- contrib/vhost-user-blk/vhost-user-blk.c | 6 +- cpu.c | 97 +- cpus-common.c | 84 +- crypto/afalg.c | 6 +- crypto/block-luks-priv.h | 2 - crypto/block-luks.c | 17 +- crypto/tlssession.c | 14 + disas.c | 5 +- disas/meson.build | 3 +- disas/riscv.c | 35 +- docs/about/build-platforms.rst | 35 +- docs/about/deprecated.rst | 135 +- docs/about/emulation.rst | 190 + docs/about/index.rst | 17 +- docs/about/removed-features.rst | 87 +- docs/conf.py | 17 - docs/config/mach-virt-graphical.cfg | 4 +- docs/config/mach-virt-serial.cfg | 4 +- docs/config/q35-emulated.cfg | 2 + docs/config/q35-virtio-graphical.cfg | 2 + docs/config/q35-virtio-serial.cfg | 2 + docs/devel/acpi-bits.rst | 3 + docs/devel/atomics.rst | 44 +- docs/devel/block-coroutine-wrapper.rst | 6 +- docs/devel/fuzzing.rst | 22 +- docs/devel/index-tcg.rst | 1 + docs/devel/kconfig.rst | 2 +- docs/devel/migration.rst | 20 +- docs/devel/qapi-code-gen.rst | 45 +- docs/devel/style.rst | 7 + docs/devel/tcg-ops.rst | 965 ++ docs/devel/tcg-plugins.rst | 2 + docs/devel/tcg.rst | 25 +- docs/devel/testing.rst | 80 +- docs/devel/vfio-migration.rst | 112 +- docs/devel/writing-monitor-commands.rst | 14 +- docs/interop/index.rst | 1 + docs/interop/live-block-operations.rst | 2 + docs/interop/qemu-qmp-ref.rst | 2 + docs/interop/vhost-user.rst | 40 +- docs/interop/vnc-ledstate-Pseudo-encoding.txt | 50 - docs/interop/vnc-ledstate-pseudo-encoding.rst | 50 + docs/meson.build | 12 +- docs/pcie.txt | 16 +- docs/qdev-device-use.txt | 4 +- docs/sphinx/kerneldoc.py | 5 + docs/system/arm/aspeed.rst | 2 + docs/system/arm/cpu-features.rst | 76 +- docs/system/arm/cubieboard.rst | 1 + docs/system/arm/emulation.rst | 4 + docs/system/arm/nuvoton.rst | 2 +- docs/system/arm/orangepi.rst | 1 + docs/system/arm/stm32.rst | 1 + docs/system/arm/virt.rst | 18 + docs/system/device-emulation.rst | 1 + docs/system/devices/igb.rst | 71 + docs/system/i386/xen.rst | 92 + docs/system/index.rst | 4 +- docs/system/introduction.rst | 220 + docs/system/loongarch/loongson3.rst | 129 - docs/system/loongarch/virt.rst | 108 + docs/system/multi-process.rst | 2 + docs/system/ppc/ppce500.rst | 13 + docs/system/quickstart.rst | 21 - docs/system/s390x/pcidevices.rst | 41 + docs/system/target-i386.rst | 1 + docs/system/target-mips.rst | 14 - docs/system/target-s390x.rst | 1 + docs/tools/index.rst | 3 +- docs/tools/virtiofsd.rst | 403 - docs/user/index.rst | 2 + dump/dump-hmp-cmds.c | 2 +- dump/dump.c | 48 +- dump/meson.build | 6 +- dump/win_dump.c | 39 +- dump/win_dump.h | 5 +- ebpf/rss.bpf.skeleton.h | 1171 +- fsdev/p9array.h | 2 - gdb-xml/aarch64-pauth.xml | 15 + gdb-xml/microblaze-core.xml | 67 + gdb-xml/microblaze-stack-protect.xml | 12 + gdbstub/gdbstub.c | 1661 +- gdbstub/internals.h | 218 +- gdbstub/meson.build | 36 +- gdbstub/softmmu.c | 606 +- gdbstub/syscalls.c | 205 + gdbstub/trace-events | 4 +- gdbstub/user-target.c | 283 + gdbstub/user.c | 426 +- gitdm.config | 3 + hmp-commands-info.hx | 14 + hmp-commands.hx | 35 +- hw/9pfs/9p-local.c | 40 +- hw/9pfs/9p-synth.c | 22 +- hw/9pfs/9p-util.h | 29 +- hw/9pfs/9p.c | 2 - hw/9pfs/codir.c | 1 - hw/9pfs/cofile.c | 1 - hw/9pfs/cofs.c | 1 - hw/9pfs/coth.h | 2 +- hw/9pfs/coxattr.c | 1 - hw/9pfs/meson.build | 2 +- hw/9pfs/xen-9p-backend.c | 32 +- hw/Kconfig | 1 + hw/acpi/Kconfig | 13 +- hw/acpi/acpi-pci-hotplug-stub.c | 9 +- hw/acpi/acpi-qmp-cmds.c | 30 + hw/acpi/acpi-stub.c | 4 +- hw/acpi/acpi-x86-stub.c | 5 +- hw/acpi/acpi_interface.c | 10 + hw/acpi/aml-build.c | 2 +- hw/acpi/core.c | 14 +- hw/acpi/cpu.c | 4 +- hw/acpi/erst.c | 2 +- hw/acpi/ich9.c | 39 +- hw/acpi/ich9_tco.c | 275 + hw/acpi/memory_hotplug.c | 3 +- hw/acpi/meson.build | 7 +- hw/acpi/pci-bridge-stub.c | 20 + hw/acpi/pci-bridge.c | 37 + hw/acpi/pcihp.c | 148 +- hw/acpi/piix4.c | 35 +- hw/acpi/tco.c | 260 - hw/acpi/trace-events | 2 + hw/acpi/vmgenid.c | 18 - hw/alpha/alpha_sys.h | 1 - hw/alpha/dp264.c | 1 - hw/alpha/pci.c | 1 + hw/alpha/typhoon.c | 2 +- hw/arm/Kconfig | 14 +- hw/arm/allwinner-a10.c | 41 + hw/arm/allwinner-h3.c | 38 +- hw/arm/armsse.c | 3 +- hw/arm/aspeed.c | 276 +- hw/arm/aspeed_ast10x0.c | 83 +- hw/arm/aspeed_ast2600.c | 17 +- hw/arm/aspeed_eeprom.c | 127 + hw/arm/aspeed_eeprom.h | 25 + hw/arm/aspeed_soc.c | 18 +- hw/arm/bcm2836.c | 9 +- hw/arm/boot.c | 22 +- hw/arm/collie.c | 27 +- hw/arm/cubieboard.c | 12 + hw/arm/exynos4210.c | 4 +- hw/arm/fby35.c | 8 +- hw/arm/fsl-imx6ul.c | 2 +- hw/arm/fsl-imx7.c | 41 +- hw/arm/gumstix.c | 45 +- hw/arm/mainstone.c | 37 +- hw/arm/meson.build | 13 +- hw/arm/mps2-tz.c | 2 +- hw/arm/mps2.c | 41 +- hw/arm/msf2-som.c | 5 +- hw/arm/musicpal.c | 18 +- hw/arm/npcm7xx.c | 25 +- hw/arm/npcm7xx_boards.c | 22 +- hw/arm/nseries.c | 30 +- hw/arm/olimex-stm32-h405.c | 69 + hw/arm/omap1.c | 115 +- hw/arm/omap2.c | 40 +- hw/arm/omap_sx1.c | 57 +- hw/arm/orangepi.c | 1 + hw/arm/palm.c | 4 +- hw/arm/pxa2xx.c | 8 +- hw/arm/realview.c | 2 +- hw/arm/sbsa-ref.c | 6 +- hw/arm/smmu-common.c | 48 +- hw/arm/smmuv3-internal.h | 7 + hw/arm/smmuv3.c | 94 +- hw/arm/spitz.c | 6 +- hw/arm/stellaris.c | 84 +- hw/arm/stm32f405_soc.c | 8 + hw/arm/strongarm.c | 24 +- hw/arm/tosa.c | 2 +- hw/arm/versatilepb.c | 8 +- hw/arm/vexpress.c | 12 +- hw/arm/virt.c | 437 +- hw/arm/xlnx-versal.c | 1 - hw/arm/z2.c | 16 +- hw/audio/ac97.c | 47 +- hw/audio/ac97.h | 65 + hw/audio/cs4231a.c | 5 +- hw/audio/es1370.c | 12 +- hw/audio/gus.c | 5 +- hw/audio/hda-codec.c | 7 +- hw/audio/sb16.c | 7 +- hw/audio/trace-events | 6 + hw/audio/via-ac97.c | 455 +- hw/block/block.c | 36 +- hw/block/dataplane/meson.build | 2 +- hw/block/dataplane/virtio-blk.c | 17 +- hw/block/dataplane/xen-block.c | 12 +- hw/block/fdc-isa.c | 5 +- hw/block/fdc.c | 4 +- hw/block/m25p80.c | 7 +- hw/block/m25p80_sfdp.c | 40 + hw/block/m25p80_sfdp.h | 2 + hw/block/meson.build | 2 +- hw/block/nand.c | 222 +- hw/block/onenand.c | 128 +- hw/block/pflash_cfi01.c | 3 +- hw/block/tc58128.c | 136 +- hw/block/virtio-blk.c | 49 +- hw/block/xen-block.c | 23 +- hw/char/cadence_uart.c | 6 +- hw/char/digic-uart.c | 4 +- hw/char/etraxfs_ser.c | 4 +- hw/char/ibex_uart.c | 1 + hw/char/meson.build | 2 +- hw/char/omap_uart.c | 7 +- hw/char/parallel.c | 24 +- hw/char/pl011.c | 110 +- hw/char/riscv_htif.c | 172 +- hw/char/serial-pci-multi.c | 2 +- hw/char/serial-pci.c | 2 +- hw/char/serial.c | 68 +- hw/char/sifive_uart.c | 4 +- hw/char/xen_console.c | 50 +- hw/char/xilinx_uartlite.c | 4 +- hw/core/cpu-common.c | 10 +- hw/core/irq.c | 9 +- hw/core/loader.c | 147 +- hw/core/machine-hmp-cmds.c | 210 +- hw/core/machine-qmp-cmds.c | 175 +- hw/core/machine-smp.c | 4 + hw/core/machine.c | 24 +- hw/core/nmi.c | 3 +- hw/core/numa.c | 8 +- hw/core/or-irq.c | 18 +- hw/core/ptimer.c | 2 +- hw/core/qdev-clock.c | 2 +- hw/core/qdev-properties-system.c | 34 +- hw/core/qdev.c | 70 +- hw/core/sysbus.c | 4 +- hw/core/trace-events | 6 - hw/cpu/meson.build | 4 +- hw/cxl/cxl-cdat.c | 2 +- hw/cxl/cxl-component-utils.c | 20 +- hw/cxl/cxl-device-utils.c | 2 +- hw/cxl/cxl-host.c | 33 +- hw/cxl/cxl-mailbox-utils.c | 28 +- hw/display/Kconfig | 2 +- hw/display/ati_int.h | 2 +- hw/display/bochs-display.c | 2 +- hw/display/cirrus_vga.c | 6 +- hw/display/g364fb.c | 4 +- hw/display/meson.build | 24 +- hw/display/omap_dss.c | 15 +- hw/display/omap_lcdc.c | 9 +- hw/display/qxl-render.c | 4 +- hw/display/qxl.c | 28 +- hw/display/qxl.h | 5 +- hw/display/sm501.c | 562 +- hw/display/trace-events | 1 - hw/display/vga-pci.c | 2 +- hw/display/vga.c | 8 +- hw/display/vhost-user-gpu.c | 19 + hw/display/virtio-gpu-udmabuf.c | 2 +- hw/display/virtio-gpu-virgl.c | 1 + hw/display/virtio-vga.c | 15 +- hw/display/virtio-vga.h | 2 +- hw/display/vmware_vga.c | 6 +- hw/display/xenfb.c | 32 +- hw/dma/etraxfs_dma.c | 864 +- hw/dma/i82374.c | 2 +- hw/dma/omap_dma.c | 15 +- hw/dma/pl330.c | 14 +- hw/dma/xilinx_axidma.c | 4 +- hw/dma/xlnx_csu_dma.c | 4 +- hw/gpio/max7310.c | 27 +- hw/gpio/omap_gpio.c | 48 +- hw/hppa/machine.c | 3 +- hw/hyperv/syndbg.c | 6 +- hw/hyperv/vmbus.c | 14 +- hw/i2c/Kconfig | 6 +- hw/i2c/allwinner-i2c.c | 479 + hw/i2c/arm_sbcon_i2c.c | 107 + hw/i2c/aspeed_i2c.c | 2 + hw/i2c/bitbang_i2c.c | 82 +- hw/i2c/core.c | 37 +- hw/i2c/meson.build | 5 +- hw/i2c/mpc_i2c.c | 4 +- hw/i2c/pmbus_device.c | 8 +- hw/i2c/smbus_ich9.c | 44 +- hw/i2c/trace-events | 12 + hw/i2c/versatile_i2c.c | 112 - hw/i386/Kconfig | 10 +- hw/i386/acpi-build.c | 418 +- hw/i386/acpi-common.c | 7 +- hw/i386/acpi-microvm.c | 3 +- hw/i386/amd_iommu.c | 2 +- hw/i386/intel_iommu.c | 41 +- hw/i386/intel_iommu_internal.h | 9 + hw/i386/kvm/i8259.c | 4 +- hw/i386/kvm/ioapic.c | 7 +- hw/i386/kvm/meson.build | 14 + hw/i386/kvm/trace-events | 20 + hw/i386/kvm/trace.h | 1 + hw/i386/kvm/xen-stubs.c | 44 + hw/i386/kvm/xen_evtchn.c | 2357 +++ hw/i386/kvm/xen_evtchn.h | 88 + hw/i386/kvm/xen_gnttab.c | 547 + hw/i386/kvm/xen_gnttab.h | 26 + hw/i386/kvm/xen_overlay.c | 272 + hw/i386/kvm/xen_overlay.h | 26 + hw/i386/kvm/xen_xenstore.c | 1728 +++ hw/i386/kvm/xen_xenstore.h | 20 + hw/i386/kvm/xenstore_impl.c | 1927 +++ hw/i386/kvm/xenstore_impl.h | 63 + hw/i386/microvm.c | 30 +- hw/i386/multiboot.c | 8 +- hw/i386/pc.c | 129 +- hw/i386/pc_piix.c | 64 +- hw/i386/pc_q35.c | 81 +- hw/i386/sgx.c | 16 +- hw/i386/x86-iommu.c | 2 +- hw/i386/x86.c | 27 +- hw/i386/xen/meson.build | 5 +- hw/i386/xen/xen-hvm.c | 54 +- hw/i386/xen/xen-mapcache.c | 18 +- hw/i386/xen/xen_platform.c | 65 +- hw/i386/xen/xen_pvdevice.c | 2 +- hw/ide/ahci.c | 13 +- hw/ide/ahci_internal.h | 2 +- hw/ide/atapi.c | 13 +- hw/ide/cmd646.c | 32 +- hw/ide/core.c | 207 +- hw/ide/ich.c | 1 + hw/ide/ioport.c | 10 - hw/ide/isa.c | 22 +- hw/ide/macio.c | 15 +- hw/ide/microdrive.c | 369 +- hw/ide/mmio.c | 37 +- hw/ide/pci.c | 11 +- hw/ide/piix.c | 50 +- hw/ide/qdev.c | 34 +- hw/ide/sii3112.c | 4 +- hw/ide/trace-events | 3 +- hw/ide/via.c | 16 +- hw/input/adb.c | 2 +- hw/input/ads7846.c | 54 +- hw/input/ps2.c | 51 +- hw/input/tsc2005.c | 2 +- hw/input/tsc210x.c | 4 +- hw/intc/Kconfig | 3 + hw/intc/apic.c | 6 +- hw/intc/apic_common.c | 30 +- hw/intc/arm_gic_common.c | 7 +- hw/intc/arm_gic_kvm.c | 14 +- hw/intc/arm_gicv3_common.c | 7 +- hw/intc/arm_gicv3_cpuif.c | 18 +- hw/intc/arm_gicv3_dist.c | 12 +- hw/intc/arm_gicv3_its.c | 28 +- hw/intc/arm_gicv3_its_common.c | 7 +- hw/intc/arm_gicv3_its_kvm.c | 14 +- hw/intc/arm_gicv3_kvm.c | 14 +- hw/intc/arm_gicv3_redist.c | 8 +- hw/intc/armv7m_nvic.c | 64 +- hw/intc/exynos4210_combiner.c | 10 +- hw/intc/i8259.c | 25 +- hw/intc/i8259_common.c | 24 +- hw/intc/ioapic.c | 7 +- hw/intc/ioapic_common.c | 4 +- hw/intc/ioapic_internal.h | 118 + hw/intc/kvm_irqcount.c | 49 + hw/intc/loongarch_pch_msi.c | 29 +- hw/intc/loongarch_pch_pic.c | 35 +- hw/intc/meson.build | 18 +- hw/intc/mips_gic.c | 4 +- hw/intc/omap_intc.c | 38 +- hw/intc/pnv_xive.c | 1 + hw/intc/pnv_xive2.c | 1 + hw/intc/riscv_aclint.c | 16 +- hw/intc/riscv_aplic.c | 4 +- hw/intc/riscv_imsic.c | 6 +- hw/intc/sifive_plic.c | 66 +- hw/intc/trace-events | 9 +- hw/intc/xics.c | 11 +- hw/intc/xilinx_intc.c | 28 +- hw/ipack/tpci200.c | 2 +- hw/ipmi/pci_ipmi_bt.c | 2 +- hw/ipmi/pci_ipmi_kcs.c | 2 +- hw/isa/Kconfig | 4 +- hw/isa/i82378.c | 19 +- hw/isa/isa-bus.c | 42 +- hw/isa/lpc_ich9.c | 47 +- hw/isa/piix3.c | 22 +- hw/isa/piix4.c | 41 +- hw/isa/trace-events | 5 + hw/isa/vt82c686.c | 54 +- hw/loongarch/Kconfig | 1 + hw/loongarch/acpi-build.c | 23 +- hw/loongarch/virt.c | 105 +- hw/m68k/next-cube.c | 1 + hw/m68k/q800.c | 1 + hw/m68k/virt.c | 10 +- hw/mem/cxl_type3.c | 320 +- hw/mem/cxl_type3_stubs.c | 17 + hw/mem/memory-device.c | 1 + hw/mem/meson.build | 2 + hw/mem/pc-dimm.c | 1 - hw/mem/sparse-mem.c | 14 +- hw/microblaze/petalogix_s3adsp1800_mmu.c | 7 +- hw/mips/Kconfig | 2 + hw/mips/bootloader.c | 139 +- hw/mips/boston.c | 8 +- hw/mips/cps.c | 35 +- hw/mips/fuloong2e.c | 2 +- hw/mips/gt64xxx_pci.c | 1234 -- hw/mips/jazz.c | 2 +- hw/mips/malta.c | 405 +- hw/mips/meson.build | 2 +- hw/mips/mips_int.c | 11 +- hw/mips/trace-events | 9 +- hw/misc/Kconfig | 14 +- hw/misc/allwinner-a10-ccm.c | 224 + hw/misc/allwinner-a10-dramc.c | 179 + hw/misc/applesmc.c | 1 + hw/misc/aspeed_hace.c | 21 +- hw/misc/aspeed_sdmc.c | 1 - hw/misc/auxbus.c | 2 +- hw/misc/axp209.c | 238 + hw/misc/edu.c | 5 + hw/misc/i2c-echo.c | 156 + hw/misc/imx6_src.c | 2 +- hw/misc/imx6ul_ccm.c | 6 - hw/misc/imx7_ccm.c | 49 +- hw/misc/iotkit-sysctl.c | 1 - hw/misc/ivshmem.c | 6 +- hw/misc/mac_via.c | 26 +- hw/misc/macio/cuda.c | 17 +- hw/misc/macio/gpio.c | 1 + hw/misc/macio/mac_dbdma.c | 4 +- hw/misc/macio/macio.c | 167 +- hw/misc/macio/pmu.c | 18 +- hw/misc/mchp_pfsoc_ioscb.c | 78 +- hw/misc/mchp_pfsoc_sysreg.c | 18 +- hw/misc/meson.build | 17 +- hw/misc/mips_cmgcr.c | 2 +- hw/misc/mips_itu.c | 30 +- hw/misc/mos6522.c | 8 +- hw/misc/mst_fpga.c | 4 +- hw/misc/omap_gpmc.c | 12 +- hw/misc/omap_l4.c | 7 +- hw/misc/omap_sdrc.c | 7 +- hw/misc/omap_tap.c | 5 +- hw/misc/pci-testdev.c | 2 +- hw/misc/pvpanic-pci.c | 2 +- hw/misc/sbsa_ec.c | 12 +- hw/misc/sga.c | 71 - hw/misc/sifive_u_otp.c | 7 - hw/misc/trace-events | 5 + hw/misc/xlnx-zynqmp-apu-ctrl.c | 1 - hw/net/Kconfig | 7 +- hw/net/allwinner-sun8i-emac.c | 4 +- hw/net/allwinner_emac.c | 4 +- hw/net/cadence_gem.c | 2 +- hw/net/can/can_kvaser_pci.c | 2 +- hw/net/can/can_mioe3680_pci.c | 2 +- hw/net/can/can_pcm3680_pci.c | 2 +- hw/net/can/ctucan_pci.c | 2 +- hw/net/e1000.c | 263 +- hw/net/e1000_common.h | 102 + hw/net/e1000_regs.h | 958 +- hw/net/e1000e.c | 102 +- hw/net/e1000e_core.c | 765 +- hw/net/e1000e_core.h | 70 +- hw/net/e1000x_common.c | 65 +- hw/net/e1000x_common.h | 138 +- hw/net/e1000x_regs.h | 971 ++ hw/net/eepro100.c | 2 +- hw/net/fsl_etsec/etsec.c | 15 +- hw/net/fsl_etsec/etsec.h | 17 - hw/net/fsl_etsec/miim.c | 5 +- hw/net/fsl_etsec/rings.c | 4 +- hw/net/ftgmac100.c | 4 +- hw/net/igb.c | 635 + hw/net/igb_common.h | 146 + hw/net/igb_core.c | 4199 ++++++ hw/net/igb_core.h | 145 + hw/net/igb_regs.h | 659 + hw/net/igbvf.c | 327 + hw/net/imx_fec.c | 8 +- hw/net/lan9118.c | 17 +- hw/net/meson.build | 3 + hw/net/ne2000-pci.c | 2 +- hw/net/net_rx_pkt.c | 112 +- hw/net/net_rx_pkt.h | 41 +- hw/net/net_tx_pkt.c | 360 +- hw/net/net_tx_pkt.h | 30 +- hw/net/pcnet-pci.c | 2 +- hw/net/pcnet.c | 4 +- hw/net/rocker/qmp-norocker.c | 12 +- hw/net/rocker/rocker-hmp-cmds.c | 316 + hw/net/rocker/rocker.c | 28 +- hw/net/rocker/rocker_desc.c | 4 +- hw/net/rocker/rocker_of_dpa.c | 13 +- hw/net/rtl8139.c | 2 +- hw/net/sungem.c | 2 +- hw/net/sunhme.c | 2 +- hw/net/trace-events | 52 +- hw/net/tulip.c | 2 +- hw/net/vhost_net-stub.c | 14 + hw/net/vhost_net.c | 18 + hw/net/virtio-net.c | 177 +- hw/net/vmxnet3.c | 69 +- hw/net/vmxnet3_defs.h | 2 +- hw/net/xen_nic.c | 25 +- hw/net/xilinx_axienet.c | 5 +- hw/net/xilinx_ethlite.c | 6 +- hw/nubus/nubus-device.c | 1 + hw/nvme/ctrl.c | 1012 +- hw/nvme/ns.c | 148 + hw/nvme/nvme.h | 94 +- hw/nvme/subsys.c | 94 +- hw/nvme/trace-events | 9 +- hw/nvram/eeprom_at24c.c | 88 +- hw/nvram/fw_cfg.c | 2 +- hw/nvram/mac_nvram.c | 28 + hw/openrisc/boot.c | 1 + hw/pci-bridge/cxl_downstream.c | 3 +- hw/pci-bridge/cxl_root_port.c | 78 +- hw/pci-bridge/cxl_upstream.c | 1 - hw/pci-bridge/dec.c | 164 - hw/pci-bridge/dec.h | 9 - hw/pci-bridge/gen_pcie_root_port.c | 7 +- hw/pci-bridge/i82801b11.c | 5 +- hw/pci-bridge/meson.build | 2 - hw/pci-bridge/pci_bridge_dev.c | 2 - hw/pci-bridge/pci_expander_bridge.c | 47 +- hw/pci-bridge/pcie_pci_bridge.c | 1 - hw/pci-bridge/pcie_root_port.c | 9 +- hw/pci-bridge/simba.c | 1 - hw/pci-bridge/xio3130_downstream.c | 1 - hw/pci-bridge/xio3130_upstream.c | 1 - hw/pci-host/Kconfig | 6 + hw/pci-host/bonito.c | 53 +- hw/pci-host/designware.c | 1 - hw/pci-host/dino.c | 2 +- hw/pci-host/grackle.c | 4 +- hw/pci-host/gt64120.c | 1288 ++ hw/pci-host/i440fx.c | 3 +- hw/pci-host/meson.build | 1 + hw/pci-host/mv64361.c | 14 +- hw/pci-host/pnv_phb.c | 29 +- hw/pci-host/pnv_phb.h | 2 +- hw/pci-host/pnv_phb3.c | 1 + hw/pci-host/pnv_phb3_msi.c | 22 +- hw/pci-host/pnv_phb4.c | 2 +- hw/pci-host/pnv_phb4_pec.c | 62 +- hw/pci-host/ppce500.c | 6 +- hw/pci-host/q35.c | 3 +- hw/pci-host/raven.c | 13 +- hw/pci-host/sh_pci.c | 2 +- hw/pci-host/trace-events | 7 + hw/pci-host/uninorth.c | 44 +- hw/pci-host/versatile.c | 5 +- hw/pci-host/xilinx-pcie.c | 1 - hw/pci/meson.build | 2 + hw/pci/msi.c | 12 +- hw/pci/msix.c | 9 + hw/pci/pci-hmp-cmds.c | 239 + hw/pci/pci-internal.h | 24 + hw/pci/pci-qmp-cmds.c | 199 + hw/pci/pci-stub.c | 9 +- hw/pci/pci.c | 381 +- hw/pci/pci_bridge.c | 16 +- hw/pci/pci_host.c | 25 +- hw/pci/pcie.c | 36 +- hw/pci/pcie_aer.c | 130 +- hw/pci/pcie_host.c | 2 +- hw/pci/pcie_port.c | 49 +- hw/pci/pcie_sriov.c | 7 +- hw/pci/shpc.c | 114 +- hw/pci/slotid_cap.c | 2 +- hw/pci/trace-events | 1 + hw/ppc/Kconfig | 4 +- hw/ppc/e500.c | 77 +- hw/ppc/e500.h | 1 + hw/ppc/e500plat.c | 10 +- hw/ppc/mac_newworld.c | 3 +- hw/ppc/mac_oldworld.c | 11 +- hw/ppc/pegasos2.c | 43 +- hw/ppc/pnv.c | 73 +- hw/ppc/pnv_core.c | 1 + hw/ppc/pnv_homer.c | 1 + hw/ppc/pnv_lpc.c | 3 +- hw/ppc/pnv_psi.c | 1 + hw/ppc/pnv_xscom.c | 1 + hw/ppc/ppc.c | 43 +- hw/ppc/ppc405_uc.c | 2 - hw/ppc/ppc440_bamboo.c | 1 - hw/ppc/ppc440_pcix.c | 2 +- hw/ppc/ppc4xx_pci.c | 2 +- hw/ppc/ppc4xx_sdram.c | 18 +- hw/ppc/prep.c | 11 +- hw/ppc/sam460ex.c | 4 +- hw/ppc/spapr.c | 18 +- hw/ppc/spapr_drc.c | 4 +- hw/ppc/spapr_hcall.c | 1 + hw/ppc/spapr_pci.c | 15 +- hw/ppc/spapr_pci_vfio.c | 1 + hw/ppc/spapr_softmmu.c | 2 + hw/ppc/virtex_ml507.c | 2 +- hw/rdma/rdma_utils.c | 1 + hw/rdma/rdma_utils.h | 1 - hw/rdma/vmw/pvrdma.h | 2 +- hw/rdma/vmw/pvrdma_cmd.c | 66 +- hw/rdma/vmw/pvrdma_dev_ring.c | 1 - hw/rdma/vmw/pvrdma_qp_ops.c | 6 +- hw/remote/machine.c | 4 +- hw/remote/proxy-memory-listener.c | 1 - hw/remote/remote-obj.c | 1 - hw/remote/vfio-user-obj.c | 7 +- hw/riscv/Kconfig | 23 +- hw/riscv/boot.c | 234 +- hw/riscv/meson.build | 1 + hw/riscv/microchip_pfsoc.c | 148 +- hw/riscv/numa.c | 14 +- hw/riscv/opentitan.c | 98 +- hw/riscv/shakti_c.c | 1 + hw/riscv/sifive_e.c | 5 +- hw/riscv/sifive_u.c | 80 +- hw/riscv/spike.c | 114 +- hw/riscv/virt-acpi-build.c | 417 + hw/riscv/virt.c | 632 +- hw/rtc/exynos4210_rtc.c | 4 +- hw/rtc/m48t59-isa.c | 2 +- hw/rtc/m48t59.c | 150 +- hw/rtc/mc146818rtc.c | 149 +- hw/rtc/meson.build | 3 +- hw/rtc/twl92230.c | 160 +- hw/s390x/event-facility.c | 3 +- hw/s390x/pv.c | 74 + hw/s390x/s390-pci-bus.c | 28 + hw/s390x/s390-pci-inst.c | 56 +- hw/s390x/s390-pci-vfio.c | 13 + hw/s390x/s390-stattrib.c | 11 +- hw/s390x/s390-virtio-ccw.c | 21 +- hw/s390x/virtio-ccw-serial.c | 1 - hw/scsi/esp-pci.c | 2 +- hw/scsi/lsi53c895a.c | 2 +- hw/scsi/mptsas.h | 2 +- hw/scsi/scsi-bus.c | 4 +- hw/scsi/scsi-disk.c | 28 +- hw/scsi/scsi-generic.c | 11 +- hw/scsi/vhost-scsi-common.c | 1 + hw/scsi/viosrp.h | 3 +- hw/scsi/virtio-scsi.c | 170 +- hw/sd/omap_mmc.c | 9 +- hw/sd/sd.c | 184 +- hw/sd/sdhci-internal.h | 1 + hw/sd/sdhci.c | 32 +- hw/sensor/adm1272.c | 1 - hw/sensor/dps310.c | 1 - hw/sh4/r2d.c | 4 +- hw/sh4/sh7750.c | 4 +- hw/sh4/sh7750_regs.h | 3 +- hw/smbios/smbios-stub.c | 4 +- hw/smbios/smbios.c | 1 + hw/sparc64/niagara.c | 1 + hw/sparc64/sun4u.c | 13 +- hw/ssi/aspeed_smc.c | 5 +- hw/ssi/ibex_spi_host.c | 1 + hw/ssi/meson.build | 2 +- hw/ssi/npcm_pspi.c | 221 + hw/ssi/omap_spi.c | 7 +- hw/ssi/sifive_spi.c | 2 +- hw/ssi/trace-events | 5 + hw/ssi/xilinx_spi.c | 5 +- hw/ssi/xilinx_spips.c | 8 +- hw/timer/digic-timer.c | 4 +- hw/timer/etraxfs_timer.c | 3 +- hw/timer/exynos4210_mct.c | 2 +- hw/timer/exynos4210_pwm.c | 4 +- hw/timer/hpet.c | 1 + hw/timer/imx_epit.c | 370 +- hw/timer/imx_gpt.c | 25 + hw/timer/omap_gptimer.c | 22 +- hw/timer/omap_synctimer.c | 4 +- hw/timer/xilinx_timer.c | 27 +- hw/tpm/meson.build | 4 +- hw/usb/ccid-card-emulated.c | 2 +- hw/usb/dev-smartcard-reader.c | 7 +- hw/usb/dev-storage-bot.c | 1 - hw/usb/dev-storage-classic.c | 1 - hw/usb/dev-uas.c | 2 +- hw/usb/hcd-ehci.h | 3 +- hw/usb/hcd-ohci-pci.c | 2 +- hw/usb/hcd-ohci.c | 463 +- hw/usb/hcd-ohci.h | 11 +- hw/usb/hcd-uhci.c | 23 +- hw/usb/hcd-uhci.h | 8 +- hw/usb/hcd-xhci-nec.c | 8 +- hw/usb/hcd-xhci-pci.h | 1 + hw/usb/imx-usb-phy.c | 19 +- hw/usb/meson.build | 6 +- hw/usb/trace-events | 4 + hw/usb/u2f.h | 16 +- hw/usb/vt82c686-uhci-pci.c | 12 - hw/usb/xen-usb.c | 29 +- hw/vfio/ccw.c | 40 +- hw/vfio/common.c | 765 +- hw/vfio/display.c | 1 + hw/vfio/igd.c | 1 + hw/vfio/migration.c | 768 +- hw/vfio/pci.c | 12 +- hw/vfio/pci.h | 2 +- hw/vfio/trace-events | 35 +- hw/virtio/Kconfig | 5 + hw/virtio/meson.build | 45 +- hw/virtio/trace-events | 6 +- hw/virtio/vdpa-dev-pci.c | 102 + hw/virtio/vdpa-dev.c | 386 + hw/virtio/vhost-shadow-virtqueue.c | 52 +- hw/virtio/vhost-shadow-virtqueue.h | 5 +- hw/virtio/vhost-stub.c | 4 + hw/virtio/vhost-user-fs.c | 22 +- hw/virtio/vhost-user-gpio.c | 10 + hw/virtio/vhost-user.c | 45 +- hw/virtio/vhost-vdpa.c | 298 +- hw/virtio/vhost-vsock-common.c | 18 + hw/virtio/vhost.c | 199 +- hw/virtio/virtio-balloon.c | 20 +- hw/virtio/virtio-config-io.c | 204 + hw/virtio/virtio-crypto.c | 71 +- hw/virtio/virtio-hmp-cmds.c | 321 + hw/virtio/virtio-iommu.c | 10 +- hw/virtio/virtio-mem-pci.c | 4 +- hw/virtio/virtio-mem.c | 166 +- hw/virtio/virtio-mmio.c | 31 +- hw/virtio/virtio-pci.c | 425 +- hw/virtio/virtio-pmem-pci.c | 1 - hw/virtio/virtio-pmem.c | 1 + hw/virtio/virtio-qmp.c | 848 ++ hw/virtio/virtio-qmp.h | 30 + hw/virtio/virtio.c | 1024 +- hw/watchdog/trace-events | 4 + hw/watchdog/watchdog.c | 4 + hw/watchdog/wdt_aspeed.c | 24 +- hw/watchdog/wdt_i6300esb.c | 2 +- hw/watchdog/wdt_ib700.c | 2 +- hw/xen/Kconfig | 3 + hw/xen/meson.build | 6 +- hw/xen/trace-events | 2 +- hw/xen/xen-bus-helper.c | 62 +- hw/xen/xen-bus.c | 412 +- hw/xen/xen-legacy-backend.c | 308 +- hw/xen/xen-operations.c | 478 + hw/xen/xen_devconfig.c | 4 +- hw/xen/xen_pt.c | 6 +- hw/xen/xen_pt.h | 3 +- hw/xen/xen_pt_config_init.c | 2 +- hw/xen/xen_pt_graphics.c | 1 - hw/xen/xen_pt_msi.c | 4 +- hw/xen/xen_pvdev.c | 64 +- hw/xenpv/xen_machine_pv.c | 8 +- include/block/aio-wait.h | 2 +- include/block/aio.h | 26 +- include/block/aio_task.h | 2 - include/block/block-common.h | 52 +- include/block/block-copy.h | 9 +- include/block/block-global-state.h | 65 +- include/block/block-hmp-cmds.h | 2 + include/block/block-io.h | 235 +- include/block/block.h | 4 +- include/block/block_backup.h | 2 +- include/block/block_int-common.h | 256 +- include/block/block_int-global-state.h | 22 +- include/block/block_int-io.h | 66 +- include/block/block_int.h | 5 +- include/block/blockjob.h | 2 +- include/block/blockjob_int.h | 1 - include/block/dirty-bitmap.h | 11 +- include/block/graph-lock.h | 277 + include/block/nbd.h | 1 + include/block/nvme.h | 236 +- include/block/qapi.h | 16 +- include/block/raw-aio.h | 1 - include/block/thread-pool.h | 2 +- include/block/throttle-groups.h | 2 +- include/block/write-threshold.h | 2 - include/crypto/aes.h | 8 +- include/crypto/desrfb.h | 16 +- include/crypto/tlssession.h | 11 + include/disas/dis-asm.h | 76 +- include/elf.h | 1801 +-- include/exec/cpu-all.h | 17 +- include/exec/cpu-defs.h | 37 +- include/exec/cpu_ldst.h | 10 + include/exec/exec-all.h | 82 +- include/exec/gdbstub.h | 208 - include/exec/gen-icount.h | 15 +- include/exec/helper-head.h | 11 +- include/exec/helper-proto.h | 32 +- include/exec/hwaddr.h | 2 +- include/exec/memory-internal.h | 4 - include/exec/memory.h | 40 + include/exec/plugin-gen.h | 1 + include/exec/poison.h | 1 - include/exec/replay-core.h | 80 + include/exec/target_long.h | 42 + include/exec/tb-flush.h | 26 + include/exec/translate-all.h | 6 - include/exec/translator.h | 6 +- include/gdbstub/helpers.h | 103 + include/gdbstub/syscalls.h | 113 + include/gdbstub/user.h | 43 + include/hw/acpi/acpi.h | 4 +- include/hw/acpi/acpi_aml_interface.h | 3 + include/hw/acpi/acpi_dev_interface.h | 3 +- include/hw/acpi/erst.h | 3 + include/hw/acpi/ich9.h | 9 +- include/hw/acpi/ich9_tco.h | 82 + include/hw/acpi/pci.h | 4 + include/hw/acpi/pcihp.h | 11 +- include/hw/acpi/piix4.h | 4 +- include/hw/acpi/tco.h | 82 - include/hw/adc/npcm7xx_adc.h | 7 +- include/hw/arm/allwinner-a10.h | 29 +- include/hw/arm/allwinner-h3.h | 9 + include/hw/arm/armsse.h | 6 +- include/hw/arm/aspeed_soc.h | 19 + include/hw/arm/bcm2835_peripherals.h | 2 +- include/hw/arm/exynos4210.h | 4 +- include/hw/arm/fsl-imx6ul.h | 1 - include/hw/arm/fsl-imx7.h | 21 +- include/hw/arm/npcm7xx.h | 20 +- include/hw/arm/omap.h | 24 +- include/hw/arm/pxa.h | 11 +- include/hw/arm/raspi_platform.h | 3 +- include/hw/arm/smmu-common.h | 5 - include/hw/arm/smmuv3.h | 4 +- include/hw/arm/stm32f205_soc.h | 2 +- include/hw/arm/stm32f405_soc.h | 7 +- include/hw/arm/virt.h | 17 +- include/hw/arm/xlnx-versal.h | 6 +- include/hw/arm/xlnx-zynqmp.h | 2 +- include/hw/block/flash.h | 20 +- include/hw/block/swim.h | 1 + include/hw/boards.h | 7 +- include/hw/char/cmsdk-apb-uart.h | 33 - include/hw/char/goldfish_tty.h | 1 + include/hw/char/ibex_uart.h | 1 - include/hw/char/pl011.h | 41 +- include/hw/char/riscv_htif.h | 19 +- include/hw/char/xilinx_uartlite.h | 21 +- include/hw/core/cpu.h | 57 +- include/hw/core/tcg-cpu-ops.h | 43 + include/hw/cris/etraxfs.h | 1 + include/hw/cxl/cxl.h | 6 +- include/hw/cxl/cxl_cdat.h | 1 + include/hw/cxl/cxl_component.h | 30 +- include/hw/cxl/cxl_device.h | 15 +- include/hw/cxl/cxl_host.h | 1 - include/hw/cxl/cxl_pci.h | 4 - include/hw/display/macfb.h | 3 +- include/hw/dma/sifive_pdma.h | 2 + include/hw/elf_ops.h | 42 +- include/hw/hotplug.h | 2 + include/hw/i2c/allwinner-i2c.h | 61 + include/hw/i2c/arm_sbcon_i2c.h | 6 +- include/hw/i2c/bitbang_i2c.h | 2 + include/hw/i2c/i2c.h | 2 + include/hw/i2c/npcm7xx_smbus.h | 7 +- include/hw/i386/apic.h | 2 - include/hw/i386/apic_internal.h | 3 +- include/hw/i386/ich9.h | 256 - include/hw/i386/intel_iommu.h | 88 +- include/hw/i386/ioapic.h | 33 - include/hw/i386/ioapic_internal.h | 117 - include/hw/i386/pc.h | 14 +- include/hw/i386/sgx-epc.h | 1 + include/hw/i386/x86-iommu.h | 51 +- include/hw/i386/x86.h | 8 +- include/hw/ide.h | 12 - include/hw/ide/internal.h | 278 +- include/hw/ide/isa.h | 20 + include/hw/ide/mmio.h | 26 + include/hw/ide/pci.h | 9 +- include/hw/input/pl050.h | 1 - include/hw/input/ps2.h | 2 +- include/hw/input/tsc2xxx.h | 4 +- include/hw/intc/armv7m_nvic.h | 128 +- include/hw/intc/goldfish_pic.h | 2 + include/hw/intc/i8259.h | 16 +- include/hw/intc/ioapic.h | 33 + include/hw/intc/kvm_irqcount.h | 10 + include/hw/intc/loongarch_pch_msi.h | 11 +- include/hw/intc/loongarch_pch_pic.h | 8 +- include/hw/intc/mips_gic.h | 4 +- include/hw/intc/nios2_vic.h | 2 + include/hw/intc/sifive_plic.h | 1 - include/hw/isa/i8259_internal.h | 3 +- include/hw/isa/isa.h | 36 +- include/hw/isa/superio.h | 2 +- include/hw/isa/vt82c686.h | 26 +- include/hw/loader.h | 22 +- include/hw/loongarch/virt.h | 6 + include/hw/mips/bootloader.h | 10 +- include/hw/misc/allwinner-a10-ccm.h | 67 + include/hw/misc/allwinner-a10-dramc.h | 68 + include/hw/misc/aspeed_lpc.h | 2 - include/hw/misc/mac_via.h | 1 + include/hw/misc/macio/cuda.h | 1 + include/hw/misc/macio/macio.h | 2 +- include/hw/misc/macio/pmu.h | 1 + include/hw/misc/mchp_pfsoc_dmc.h | 2 + include/hw/misc/mchp_pfsoc_ioscb.h | 6 + include/hw/misc/mchp_pfsoc_sysreg.h | 3 + include/hw/misc/mips_cmgcr.h | 2 +- include/hw/misc/mips_itu.h | 9 +- include/hw/misc/mos6522.h | 5 +- include/hw/misc/npcm7xx_clk.h | 2 +- include/hw/misc/npcm7xx_gcr.h | 6 +- include/hw/misc/npcm7xx_mft.h | 7 +- include/hw/misc/npcm7xx_pwm.h | 3 +- include/hw/misc/npcm7xx_rng.h | 6 +- include/hw/misc/pvpanic.h | 1 + include/hw/misc/sifive_e_prci.h | 3 +- include/hw/misc/sifive_u_otp.h | 3 +- include/hw/misc/sifive_u_prci.h | 3 +- include/hw/misc/virt_ctrl.h | 2 + include/hw/misc/xlnx-versal-pmc-iou-slcr.h | 1 + include/hw/misc/xlnx-zynqmp-apu-ctrl.h | 2 +- include/hw/net/lasi_82596.h | 2 +- include/hw/net/mii.h | 14 +- include/hw/net/npcm7xx_emc.h | 5 +- include/hw/net/xlnx-zynqmp-can.h | 1 + include/hw/nvram/eeprom_at24c.h | 39 + include/hw/nvram/mac_nvram.h | 1 + include/hw/or-irq.h | 5 +- include/hw/pci-host/bonito.h | 18 + include/hw/pci-host/designware.h | 3 - include/hw/pci-host/gpex.h | 2 +- include/hw/pci-host/i440fx.h | 2 +- include/hw/pci-host/ls7a.h | 21 +- include/hw/pci-host/pnv_phb3.h | 3 - include/hw/pci-host/pnv_phb4.h | 16 +- include/hw/pci-host/q35.h | 2 +- include/hw/pci-host/sabre.h | 2 +- include/hw/pci-host/xilinx-pcie.h | 1 - include/hw/pci/msi.h | 3 +- include/hw/pci/pci.h | 359 +- include/hw/pci/pci_bridge.h | 15 +- include/hw/pci/pci_device.h | 350 + include/hw/pci/pci_ids.h | 1 - include/hw/pci/pcie.h | 9 - include/hw/pci/pcie_aer.h | 1 + include/hw/pci/pcie_doe.h | 1 - include/hw/pci/pcie_port.h | 8 +- include/hw/pci/pcie_regs.h | 17 +- include/hw/pci/pcie_sriov.h | 5 + include/hw/pci/shpc.h | 2 +- include/hw/pcmcia.h | 32 +- include/hw/ppc/pnv.h | 148 +- include/hw/ppc/pnv_chip.h | 147 + include/hw/ppc/pnv_core.h | 3 +- include/hw/ppc/pnv_homer.h | 2 +- include/hw/ppc/pnv_lpc.h | 11 +- include/hw/ppc/pnv_occ.h | 3 +- include/hw/ppc/pnv_pnor.h | 2 +- include/hw/ppc/pnv_psi.h | 2 +- include/hw/ppc/pnv_sbe.h | 3 +- include/hw/ppc/pnv_xive.h | 7 +- include/hw/ppc/pnv_xscom.h | 3 +- include/hw/ppc/spapr.h | 3 +- include/hw/ppc/vof.h | 2 +- include/hw/ppc/xics.h | 2 +- include/hw/ppc/xive2.h | 2 + include/hw/ppc/xive2_regs.h | 2 + include/hw/qdev-core.h | 50 +- include/hw/remote/iohub.h | 2 +- include/hw/remote/proxy.h | 2 +- include/hw/riscv/boot.h | 14 +- include/hw/riscv/boot_opensbi.h | 2 + include/hw/riscv/microchip_pfsoc.h | 10 +- include/hw/riscv/numa.h | 11 +- include/hw/riscv/opentitan.h | 16 +- include/hw/riscv/shakti_c.h | 2 +- include/hw/riscv/sifive_e.h | 9 +- include/hw/riscv/sifive_u.h | 6 +- include/hw/riscv/spike.h | 4 +- include/hw/riscv/virt.h | 16 +- include/hw/rtc/mc146818rtc.h | 15 +- include/hw/s390x/pv.h | 4 +- include/hw/s390x/s390-pci-bus.h | 6 + include/hw/scsi/scsi.h | 2 +- include/hw/sd/npcm7xx_sdhci.h | 4 +- include/hw/sd/sd.h | 8 +- include/hw/sd/sdhci.h | 3 +- include/hw/southbridge/ich9.h | 245 + include/hw/southbridge/piix.h | 3 +- include/hw/ssi/ibex_spi_host.h | 2 - include/hw/ssi/npcm_pspi.h | 53 + include/hw/ssi/sifive_spi.h | 3 + include/hw/timer/cmsdk-apb-timer.h | 1 - include/hw/timer/i8254.h | 3 +- include/hw/timer/i8254_internal.h | 2 +- include/hw/timer/imx_epit.h | 8 +- include/hw/timer/imx_gpt.h | 1 + include/hw/timer/sse-timer.h | 1 + include/hw/tricore/triboard.h | 1 - include/hw/tricore/tricore_testdevice.h | 1 - include/hw/usb/hcd-dwc3.h | 1 + include/hw/usb/hcd-musb.h | 2 + include/hw/usb/xlnx-usb-subsystem.h | 2 + include/hw/usb/xlnx-versal-usb2-ctrl-regs.h | 3 + include/hw/vfio/vfio-common.h | 18 +- include/hw/virtio/vdpa-dev.h | 43 + include/hw/virtio/vhost-backend.h | 7 + include/hw/virtio/vhost-vdpa.h | 21 +- include/hw/virtio/vhost.h | 30 +- include/hw/virtio/virtio-blk.h | 2 - include/hw/virtio/virtio-mem.h | 8 + include/hw/virtio/virtio-mmio.h | 2 +- include/hw/virtio/virtio-pci.h | 9 +- include/hw/virtio/virtio-scsi.h | 12 +- include/hw/virtio/virtio.h | 31 +- include/hw/watchdog/wdt_aspeed.h | 4 +- include/hw/xen/interface/arch-arm.h | 510 + include/hw/xen/interface/arch-x86/cpuid.h | 118 + include/hw/xen/interface/arch-x86/xen-x86_32.h | 194 + include/hw/xen/interface/arch-x86/xen-x86_64.h | 241 + include/hw/xen/interface/arch-x86/xen.h | 398 + include/hw/xen/interface/event_channel.h | 388 + include/hw/xen/interface/features.h | 143 + include/hw/xen/interface/grant_table.h | 650 + include/hw/xen/interface/hvm/hvm_op.h | 395 + include/hw/xen/interface/hvm/params.h | 318 + include/hw/xen/interface/io/blkif.h | 14 +- include/hw/xen/interface/io/console.h | 10 + include/hw/xen/interface/io/fbif.h | 20 + include/hw/xen/interface/io/kbdif.h | 10 + include/hw/xen/interface/io/netif.h | 94 +- include/hw/xen/interface/io/ring.h | 99 +- include/hw/xen/interface/io/usbif.h | 377 +- include/hw/xen/interface/io/xenbus.h | 10 + include/hw/xen/interface/io/xs_wire.h | 153 + include/hw/xen/interface/memory.h | 754 + include/hw/xen/interface/physdev.h | 383 + include/hw/xen/interface/sched.h | 202 + include/hw/xen/interface/trace.h | 341 + include/hw/xen/interface/vcpu.h | 248 + include/hw/xen/interface/version.h | 113 + include/hw/xen/interface/xen-compat.h | 46 + include/hw/xen/interface/xen.h | 1049 ++ include/hw/xen/xen-bus-helper.h | 32 +- include/hw/xen/xen-bus.h | 24 +- include/hw/xen/xen-legacy-backend.h | 27 +- include/hw/xen/xen.h | 29 +- include/hw/xen/xen_backend_ops.h | 408 + include/hw/xen/xen_common.h | 690 - include/hw/xen/xen_native.h | 629 + include/hw/xen/xen_pvdev.h | 6 +- include/io/channel-tls.h | 1 + include/io/channel.h | 20 +- include/migration/misc.h | 4 +- include/migration/register.h | 31 +- include/migration/vmstate.h | 35 +- include/monitor/hmp-target.h | 6 + include/monitor/hmp.h | 40 +- include/monitor/monitor.h | 4 +- include/monitor/qmp-helpers.h | 29 + include/monitor/stats.h | 45 - include/net/eth.h | 21 +- include/net/net.h | 24 +- include/net/vhost-user.h | 1 + include/net/vhost_net.h | 4 + include/qapi/error.h | 6 + include/qapi/qmp/qerror.h | 6 - include/qemu/accel.h | 4 +- include/qemu/async-teardown.h | 2 - include/qemu/atomic.h | 17 +- include/qemu/atomic128.h | 29 +- include/qemu/bitmap.h | 52 +- include/qemu/bswap.h | 103 +- include/qemu/clang-tsa.h | 114 + include/qemu/compiler.h | 4 +- include/qemu/config-file.h | 2 +- include/qemu/coroutine-core.h | 154 + include/qemu/coroutine.h | 113 +- include/qemu/cpuid.h | 7 + include/qemu/dbus.h | 1 - include/qemu/envlist.h | 8 - include/qemu/hbitmap.h | 2 +- include/qemu/host-utils.h | 1 - include/qemu/int128.h | 25 +- include/qemu/interval-tree.h | 99 + include/qemu/lockable.h | 2 +- include/qemu/main-loop.h | 31 +- include/qemu/osdep.h | 87 +- include/qemu/plugin-event.h | 26 + include/qemu/plugin-memory.h | 3 + include/qemu/plugin.h | 30 +- include/qemu/progress_meter.h | 2 +- include/qemu/qemu-plugin.h | 47 +- include/qemu/qtree.h | 201 + include/qemu/rcu.h | 8 - include/qemu/rcu_queue.h | 8 - include/qemu/readline.h | 2 + include/qemu/sockets.h | 2 - include/qemu/thread.h | 19 +- include/qemu/typedefs.h | 13 +- include/qemu/uri.h | 42 +- include/qemu/userfaultfd.h | 13 +- include/qemu/uuid.h | 12 + include/qemu/vhost-user-server.h | 1 - include/qemu/xattr.h | 4 +- include/scsi/pr-manager.h | 1 - include/standard-headers/drm/drm_fourcc.h | 63 +- include/standard-headers/linux/ethtool.h | 81 +- include/standard-headers/linux/fuse.h | 20 +- include/standard-headers/linux/input-event-codes.h | 4 + include/standard-headers/linux/pci_regs.h | 2 + include/standard-headers/linux/virtio_blk.h | 19 + include/standard-headers/linux/virtio_bt.h | 8 + include/standard-headers/linux/virtio_net.h | 4 + include/sysemu/accel-blocker.h | 55 + include/sysemu/accel-ops.h | 7 +- include/sysemu/block-backend-global-state.h | 26 +- include/sysemu/block-backend-io.h | 112 +- include/sysemu/cpus.h | 1 - include/sysemu/cryptodev.h | 113 +- include/sysemu/dirtyrate.h | 2 + include/sysemu/dump.h | 1 + include/sysemu/event-loop-base.h | 1 - include/sysemu/kvm.h | 2 - include/sysemu/kvm_int.h | 12 + include/sysemu/kvm_xen.h | 43 + include/sysemu/os-posix.h | 3 - include/sysemu/os-win32.h | 58 +- include/sysemu/replay.h | 67 +- include/sysemu/stats.h | 45 + include/sysemu/sysemu.h | 3 - include/tcg/tcg-op.h | 68 +- include/tcg/tcg-temp-internal.h | 83 + include/tcg/tcg.h | 261 +- include/ui/console.h | 8 +- include/ui/egl-helpers.h | 4 + include/ui/qemu-spice.h | 8 +- include/ui/spice-display.h | 2 - include/user/syscall-trace.h | 2 + io/channel-buffer.c | 1 + io/channel-command.c | 1 + io/channel-file.c | 1 + io/channel-null.c | 1 + io/channel-socket.c | 27 +- io/channel-tls.c | 86 +- io/channel-watch.c | 10 +- io/channel-websock.c | 1 + io/channel.c | 49 +- iothread.c | 6 +- job-qmp.c | 3 +- linux-headers/asm-arm64/kvm.h | 1 + linux-headers/asm-generic/hugetlb_encode.h | 26 +- linux-headers/asm-generic/mman-common.h | 2 + linux-headers/asm-mips/mman.h | 2 + linux-headers/asm-riscv/kvm.h | 7 + linux-headers/asm-x86/kvm.h | 11 +- linux-headers/linux/kvm.h | 35 +- linux-headers/linux/psci.h | 14 + linux-headers/linux/userfaultfd.h | 4 + linux-headers/linux/vfio.h | 278 +- linux-user/aarch64/cpu_loop.c | 11 +- linux-user/aarch64/signal.c | 13 +- linux-user/aarch64/target_flat.h | 1 + linux-user/alpha/target_mman.h | 4 + linux-user/arm/cpu_loop.c | 13 +- linux-user/arm/target_cpu.h | 2 +- linux-user/arm/target_flat.h | 1 + linux-user/elfload.c | 78 +- linux-user/exit.c | 5 +- linux-user/fd-trans.c | 64 +- linux-user/flatload.c | 2 +- linux-user/generic/target_flat.h | 16 + linux-user/generic/target_mman.h | 13 + linux-user/hexagon/signal.c | 17 +- linux-user/hppa/target_mman.h | 4 + linux-user/i386/cpu_loop.c | 9 + linux-user/include/host/ppc/host-signal.h | 39 + linux-user/m68k/target_flat.h | 1 + linux-user/main.c | 71 +- linux-user/meson.build | 1 + linux-user/microblaze/cpu_loop.c | 10 +- linux-user/microblaze/target_flat.h | 1 + linux-user/mips/target_elf.h | 3 + linux-user/mmap.c | 82 +- linux-user/sh4/target_flat.h | 1 + linux-user/signal.c | 10 +- linux-user/sparc/cpu_loop.c | 190 +- linux-user/sparc/signal.c | 36 +- linux-user/sparc/target_signal.h | 2 +- linux-user/strace.c | 302 +- linux-user/strace.list | 69 +- linux-user/syscall.c | 500 +- linux-user/syscall_defs.h | 7 +- linux-user/target_flat.h | 16 - linux-user/user-internals.h | 15 +- meson.build | 208 +- meson_options.txt | 16 +- migration/block-dirty-bitmap.c | 20 +- migration/block.c | 31 +- migration/channel-block.c | 1 + migration/channel.c | 45 + migration/channel.h | 5 + migration/colo-failover.c | 3 +- migration/colo.c | 2 - migration/dirtyrate.c | 21 +- migration/exec.c | 25 + migration/meson.build | 2 + migration/migration-hmp-cmds.c | 806 + migration/migration.c | 377 +- migration/migration.h | 67 +- migration/multifd-zlib.c | 14 +- migration/multifd-zstd.c | 12 +- migration/multifd.c | 156 +- migration/multifd.h | 13 +- migration/postcopy-ram.c | 76 +- migration/postcopy-ram.h | 6 +- migration/qemu-file.c | 34 + migration/qemu-file.h | 1 + migration/ram.c | 965 +- migration/ram.h | 23 + migration/rdma.c | 27 +- migration/savevm.c | 192 +- migration/savevm.h | 8 +- migration/target.c | 2 +- migration/threadinfo.c | 51 + migration/threadinfo.h | 28 + migration/tls.c | 6 +- migration/trace-events | 8 +- migration/vmstate.c | 2 + migration/xbzrle.c | 124 + migration/xbzrle.h | 4 + monitor/fds.c | 517 + monitor/hmp-cmds-target.c | 380 + monitor/hmp-cmds.c | 2854 +--- monitor/hmp-target.c | 178 + monitor/hmp.c | 16 +- monitor/meson.build | 4 +- monitor/misc.c | 1994 --- monitor/monitor-internal.h | 1 - monitor/monitor.c | 41 +- monitor/qmp-cmds-control.c | 1 - monitor/qmp-cmds.c | 518 +- nbd/client-connection.c | 1 + nbd/nbd-internal.h | 1 - nbd/server.c | 71 +- net/announce.c | 8 +- net/colo-compare.c | 13 +- net/dgram.c | 14 +- net/dump.c | 11 +- net/eth.c | 134 +- net/hub.c | 2 +- net/l2tpv3.c | 21 +- net/meson.build | 1 + net/net-hmp-cmds.c | 170 + net/net.c | 121 +- net/slirp.c | 20 +- net/socket.c | 56 +- net/stream.c | 53 +- net/tap-bsd.c | 6 +- net/tap-linux.c | 2 +- net/tap-solaris.c | 8 +- net/tap-win32.c | 2 +- net/tap.c | 77 +- net/vhost-user.c | 27 +- net/vhost-vdpa.c | 395 +- net/vmnet-common.m | 48 +- net/vmnet-host.c | 20 +- net/vmnet-shared.c | 16 +- net/vmnet_int.h | 3 +- os-posix.c | 16 +- pc-bios/README | 10 +- pc-bios/bios-256k.bin | Bin 262144 -> 262144 bytes pc-bios/bios-microvm.bin | Bin 131072 -> 131072 bytes pc-bios/bios.bin | Bin 131072 -> 131072 bytes pc-bios/edk2-aarch64-code.fd.bz2 | Bin 1161290 -> 1508184 bytes pc-bios/edk2-arm-code.fd.bz2 | Bin 1161845 -> 1483149 bytes pc-bios/edk2-i386-code.fd.bz2 | Bin 1282120 -> 1695318 bytes pc-bios/edk2-i386-secure-code.fd.bz2 | Bin 1473677 -> 1922002 bytes pc-bios/edk2-riscv.fd.bz2 | Bin 0 -> 1096418 bytes pc-bios/edk2-x86_64-code.fd.bz2 | Bin 1327522 -> 1796544 bytes pc-bios/edk2-x86_64-microvm.fd.bz2 | Bin 1309407 -> 1697788 bytes pc-bios/edk2-x86_64-secure-code.fd.bz2 | Bin 1513711 -> 1999841 bytes pc-bios/keymaps/meson.build | 2 +- pc-bios/meson.build | 1 - pc-bios/openbios-ppc | Bin 677196 -> 677196 bytes pc-bios/openbios-sparc32 | Bin 382080 -> 382080 bytes pc-bios/openbios-sparc64 | Bin 1593408 -> 1593408 bytes pc-bios/opensbi-riscv32-generic-fw_dynamic.bin | Bin 117704 -> 123072 bytes pc-bios/opensbi-riscv64-generic-fw_dynamic.bin | Bin 115344 -> 121800 bytes pc-bios/optionrom/optionrom.h | 262 +- pc-bios/s390-ccw.img | Bin 42608 -> 42608 bytes pc-bios/s390-ccw/bootmap.c | 157 +- pc-bios/s390-ccw/bootmap.h | 30 +- pc-bios/sgabios.bin | Bin 4096 -> 0 bytes pc-bios/vgabios-ati.bin | Bin 39936 -> 39936 bytes pc-bios/vgabios-bochs-display.bin | Bin 28672 -> 28672 bytes pc-bios/vgabios-cirrus.bin | Bin 39424 -> 39424 bytes pc-bios/vgabios-qxl.bin | Bin 39936 -> 39936 bytes pc-bios/vgabios-ramfb.bin | Bin 29184 -> 29184 bytes pc-bios/vgabios-stdvga.bin | Bin 39936 -> 39936 bytes pc-bios/vgabios-virtio.bin | Bin 39936 -> 39936 bytes pc-bios/vgabios-vmware.bin | Bin 39936 -> 39936 bytes pc-bios/vgabios.bin | Bin 39424 -> 39424 bytes plugins/core.c | 35 +- plugins/loader.c | 2 +- python/.gitignore | 4 +- python/Makefile | 53 +- python/Pipfile | 13 - python/Pipfile.lock | 347 - python/README.rst | 3 - python/qemu/machine/console_socket.py | 2 +- python/qemu/machine/machine.py | 62 +- python/qemu/machine/qtest.py | 2 +- python/qemu/qmp/legacy.py | 18 +- python/qemu/qmp/protocol.py | 29 +- python/qemu/qmp/qmp_client.py | 4 +- python/qemu/qmp/qmp_tui.py | 6 +- python/qemu/utils/qemu_ga_client.py | 6 +- python/setup.cfg | 10 +- python/tests/minreqs.txt | 45 + qapi/audio.json | 57 +- qapi/block-core.json | 150 +- qapi/cryptodev.json | 89 + qapi/cxl.json | 128 + qapi/machine.json | 4 +- qapi/meson.build | 2 + qapi/migration.json | 29 + qapi/misc-target.json | 128 +- qapi/misc.json | 36 +- qapi/net.json | 7 +- qapi/qapi-schema.json | 2 + qapi/qom.json | 8 +- qapi/stats.json | 10 +- qapi/ui.json | 15 +- qemu-img.c | 122 +- qemu-io-cmds.c | 275 +- qemu-keymap.c | 2 + qemu-nbd.c | 37 +- qemu-options.hx | 118 +- qga/commands-bsd.c | 5 + qga/commands-posix.c | 46 +- qga/commands-win32.c | 80 +- qga/commands.c | 11 +- qga/cutils.c | 3 +- qga/cutils.h | 2 - qga/installer/qemu-ga.wxs | 31 +- qga/main.c | 57 +- qga/meson.build | 25 +- qga/messages-win32.mc | 9 + qga/vss-win32/install.cpp | 9 + qga/vss-win32/qga-vss.def | 2 + qga/vss-win32/requester.cpp | 41 +- qga/vss-win32/vss-handles.h | 3 + qom/object_interfaces.c | 2 +- qom/qom-hmp-cmds.c | 67 + qom/qom-qmp-cmds.c | 7 +- replay/replay-debugging.c | 1 - replay/replay-time.c | 5 +- replay/replay.c | 6 +- replay/stubs-system.c | 2 +- roms/Makefile | 38 +- roms/Makefile.edk2 | 178 - roms/edk2 | 2 +- roms/edk2-build.config | 124 + roms/edk2-build.py | 380 + roms/edk2-build.sh | 55 - roms/edk2-funcs.sh | 273 - roms/openbios | 2 +- roms/opensbi | 2 +- roms/seabios | 2 +- roms/sgabios | 1 - scripts/block-coroutine-wrapper.py | 201 +- scripts/checkpatch.pl | 3 + .../ci/org.centos/stream/8/build-environment.yml | 39 +- scripts/ci/org.centos/stream/8/x86_64/configure | 5 +- scripts/ci/org.centos/stream/8/x86_64/test-avocado | 8 +- scripts/ci/setup/build-environment.yml | 59 +- scripts/ci/setup/gitlab-runner.yml | 70 +- scripts/ci/setup/vars.yml.template | 2 - scripts/clean-includes | 27 +- scripts/coccinelle/return_directly.cocci | 5 +- scripts/coverage/compare_gcov_json.py | 119 + scripts/coverity-scan/COMPONENTS.md | 3 - scripts/git.orderfile | 2 + scripts/make-config-poison.sh | 2 +- scripts/make-release | 16 +- scripts/meson-buildoptions.py | 7 +- scripts/meson-buildoptions.sh | 34 +- scripts/oss-fuzz/lsan_suppressions.txt | 2 + scripts/probe-gdb-support.py | 88 + scripts/qapi/.flake8 | 3 +- scripts/qapi/commands.py | 9 +- scripts/qapi/events.py | 3 +- scripts/qapi/expr.py | 100 +- scripts/qapi/gen.py | 2 +- scripts/qapi/parser.py | 41 +- scripts/qapi/pylintrc | 1 + scripts/qapi/schema.py | 86 +- scripts/qapi/types.py | 2 +- scripts/qapi/visit.py | 17 +- scripts/tracetool/__init__.py | 23 - scripts/tracetool/transform.py | 168 - scsi/qemu-pr-helper.c | 2 +- semihosting/arm-compat-semi.c | 1 + semihosting/console.c | 4 +- semihosting/guestfd.c | 2 +- semihosting/syscalls.c | 69 +- semihosting/uaccess.c | 2 +- softmmu/cpus.c | 1 + softmmu/dirtylimit.c | 1 - softmmu/dma-helpers.c | 12 +- softmmu/globals.c | 6 +- softmmu/memory.c | 42 +- softmmu/memory_mapping.c | 4 +- softmmu/meson.build | 5 +- softmmu/physmem.c | 234 +- softmmu/qdev-monitor.c | 82 + softmmu/qtest.c | 1 - softmmu/rtc.c | 11 +- softmmu/runstate-hmp-cmds.c | 82 + softmmu/runstate.c | 36 +- softmmu/tpm-hmp-cmds.c | 65 + softmmu/vl.c | 59 +- softmmu/watchpoint.c | 226 + stats/meson.build | 1 + stats/stats-hmp-cmds.c | 252 + stats/stats-qmp-cmds.c | 164 + storage-daemon/qemu-storage-daemon.c | 5 +- stubs/graph-lock.c | 10 + stubs/meson.build | 3 +- stubs/qdev.c | 6 +- stubs/replay.c | 2 +- stubs/semihost-all.c | 17 + stubs/semihost.c | 5 - stubs/vmgenid.c | 10 - subprojects/libvduse/libvduse.c | 9 +- subprojects/libvduse/meson.build | 8 +- subprojects/libvhost-user/libvhost-user.c | 56 +- subprojects/libvhost-user/libvhost-user.h | 22 +- subprojects/libvhost-user/meson.build | 8 +- target/alpha/STATUS | 28 - target/alpha/cpu-param.h | 2 - target/alpha/cpu.h | 2 +- target/alpha/gdbstub.c | 2 +- target/alpha/sys_helper.c | 1 + target/alpha/translate.c | 73 +- target/arm/a32-uncond.decode | 74 - target/arm/a32.decode | 557 - target/arm/arm-powerctl.c | 7 +- target/arm/arm-qmp-cmds.c | 257 + target/arm/cpregs.h | 582 +- target/arm/cpu-param.h | 4 - target/arm/cpu-qom.h | 4 +- target/arm/cpu.c | 84 +- target/arm/cpu.h | 303 +- target/arm/cpu64.c | 146 +- target/arm/cpu_tcg.c | 46 + target/arm/crypto_helper.c | 778 - target/arm/debug_helper.c | 669 +- target/arm/gdbstub.c | 283 +- target/arm/gdbstub64.c | 180 +- target/arm/helper-a64.c | 1101 -- target/arm/helper-a64.h | 8 - target/arm/helper-sme.h | 3 +- target/arm/helper.c | 1717 ++- target/arm/helper.h | 11 +- target/arm/hvf/hvf.c | 151 + target/arm/hvf/trace-events | 2 + target/arm/internals.h | 126 +- target/arm/iwmmxt_helper.c | 670 - target/arm/kvm-consts.h | 8 +- target/arm/m-nocp.decode | 72 - target/arm/m_helper.c | 2892 ---- target/arm/machine.c | 58 +- target/arm/meson.build | 48 +- target/arm/monitor.c | 230 - target/arm/mte_helper.c | 908 -- target/arm/mve.decode | 832 - target/arm/mve_helper.c | 3450 ----- target/arm/neon-dp.decode | 646 - target/arm/neon-ls.decode | 52 - target/arm/neon-shared.decode | 99 - target/arm/neon_helper.c | 1740 --- target/arm/op_helper.c | 1010 -- target/arm/pauth_helper.c | 515 - target/arm/psci.c | 222 - target/arm/ptw.c | 412 +- target/arm/sme-fa64.decode | 60 - target/arm/sme.decode | 88 - target/arm/sme_helper.c | 1201 -- target/arm/sve.decode | 1702 --- target/arm/sve_helper.c | 7489 --------- target/arm/syndrome.h | 10 + target/arm/t16.decode | 281 - target/arm/t32.decode | 753 - target/arm/tcg-stubs.c | 27 + target/arm/tcg/a32-uncond.decode | 74 + target/arm/tcg/a32.decode | 557 + target/arm/tcg/crypto_helper.c | 778 + target/arm/tcg/helper-a64.c | 954 ++ target/arm/tcg/hflags.c | 403 + target/arm/tcg/iwmmxt_helper.c | 670 + target/arm/tcg/m-nocp.decode | 72 + target/arm/tcg/m_helper.c | 2901 ++++ target/arm/tcg/meson.build | 50 + target/arm/tcg/mte_helper.c | 909 ++ target/arm/tcg/mve.decode | 832 + target/arm/tcg/mve_helper.c | 3450 +++++ target/arm/tcg/neon-dp.decode | 646 + target/arm/tcg/neon-ls.decode | 52 + target/arm/tcg/neon-shared.decode | 99 + target/arm/tcg/neon_helper.c | 1740 +++ target/arm/tcg/op_helper.c | 1069 ++ target/arm/tcg/pauth_helper.c | 517 + target/arm/tcg/psci.c | 222 + target/arm/tcg/sme-fa64.decode | 60 + target/arm/tcg/sme.decode | 88 + target/arm/tcg/sme_helper.c | 1168 ++ target/arm/tcg/sve.decode | 1702 +++ target/arm/tcg/sve_helper.c | 7490 +++++++++ target/arm/tcg/t16.decode | 281 + target/arm/tcg/t32.decode | 753 + target/arm/tcg/tlb_helper.c | 278 + target/arm/tcg/translate-a64.c | 14554 ++++++++++++++++++ target/arm/tcg/translate-a64.h | 198 + target/arm/tcg/translate-m-nocp.c | 768 + target/arm/tcg/translate-mve.c | 2262 +++ target/arm/tcg/translate-neon.c | 3935 +++++ target/arm/tcg/translate-sme.c | 357 + target/arm/tcg/translate-sve.c | 7369 +++++++++ target/arm/tcg/translate-vfp.c | 3420 +++++ target/arm/tcg/translate.c | 9724 ++++++++++++ target/arm/tcg/translate.h | 654 + target/arm/tcg/vec_helper.c | 2716 ++++ target/arm/tcg/vec_internal.h | 246 + target/arm/tcg/vfp-uncond.decode | 82 + target/arm/tcg/vfp.decode | 247 + target/arm/tlb_helper.c | 292 - target/arm/translate-a64.c | 15063 ------------------- target/arm/translate-a64.h | 201 - target/arm/translate-m-nocp.c | 788 - target/arm/translate-mve.c | 2310 --- target/arm/translate-neon.c | 4064 ----- target/arm/translate-sme.c | 373 - target/arm/translate-sve.c | 7583 ---------- target/arm/translate-vfp.c | 3619 ----- target/arm/translate.c | 9941 ------------ target/arm/translate.h | 631 - target/arm/vec_helper.c | 2716 ---- target/arm/vec_internal.h | 246 - target/arm/vfp-uncond.decode | 82 - target/arm/vfp.decode | 247 - target/arm/vfp_helper.c | 35 +- target/avr/cpu-param.h | 1 - target/avr/cpu-qom.h | 4 +- target/avr/cpu.c | 16 +- target/avr/cpu.h | 4 +- target/avr/gdbstub.c | 2 +- target/avr/translate.c | 301 +- target/cris/cpu-param.h | 1 - target/cris/cpu-qom.h | 4 +- target/cris/cpu.c | 12 +- target/cris/cpu.h | 3 +- target/cris/gdbstub.c | 2 +- target/cris/translate.c | 167 +- target/cris/translate_v10.c.inc | 85 +- target/hexagon/README | 49 +- target/hexagon/attribs_def.h.inc | 1 + target/hexagon/cpu-param.h | 2 - target/hexagon/cpu.c | 22 +- target/hexagon/cpu.h | 21 +- target/hexagon/decode.c | 15 +- target/hexagon/gdbstub.c | 2 +- target/hexagon/gen_analyze_funcs.py | 252 + target/hexagon/gen_helper_funcs.py | 47 +- target/hexagon/gen_helper_protos.py | 41 +- target/hexagon/gen_idef_parser_funcs.py | 130 + target/hexagon/gen_tcg.h | 525 +- target/hexagon/gen_tcg_funcs.py | 298 +- target/hexagon/gen_tcg_hvx.h | 36 +- target/hexagon/genptr.c | 895 +- target/hexagon/genptr.h | 36 + target/hexagon/hex_arch_types.h | 1 - target/hexagon/hex_common.py | 50 +- target/hexagon/hex_regs.h | 2 +- target/hexagon/idef-parser/README.rst | 714 + target/hexagon/idef-parser/idef-parser.h | 251 + target/hexagon/idef-parser/idef-parser.lex | 448 + target/hexagon/idef-parser/idef-parser.y | 916 ++ target/hexagon/idef-parser/macros.inc | 131 + target/hexagon/idef-parser/parser-helpers.c | 2145 +++ target/hexagon/idef-parser/parser-helpers.h | 366 + target/hexagon/idef-parser/prepare | 24 + target/hexagon/insn.h | 9 +- target/hexagon/macros.h | 59 +- target/hexagon/meson.build | 168 +- target/hexagon/mmvec/macros.h | 5 +- target/hexagon/op_helper.c | 81 +- target/hexagon/op_helper.h | 36 + target/hexagon/translate.c | 464 +- target/hexagon/translate.h | 92 +- target/hppa/cpu-param.h | 1 - target/hppa/cpu.c | 8 +- target/hppa/cpu.h | 7 +- target/hppa/fpu_helper.c | 450 + target/hppa/gdbstub.c | 2 +- target/hppa/insns.decode | 5 +- target/hppa/meson.build | 2 + target/hppa/op_helper.c | 504 - target/hppa/sys_helper.c | 101 + target/hppa/translate.c | 146 +- target/i386/cpu-dump.c | 5 +- target/i386/cpu-param.h | 5 - target/i386/cpu-qom.h | 4 +- target/i386/cpu-sysemu.c | 22 +- target/i386/cpu.c | 240 +- target/i386/cpu.h | 42 +- target/i386/gdbstub.c | 6 +- target/i386/hax/hax-all.c | 5 +- target/i386/hax/hax-i386.h | 2 - target/i386/helper.c | 2 +- target/i386/helper.h | 6 - target/i386/host-cpu.c | 1 + target/i386/hvf/hvf-i386.h | 4 - target/i386/kvm/kvm.c | 280 +- target/i386/kvm/kvm_i386.h | 2 + target/i386/kvm/meson.build | 2 + target/i386/kvm/trace-events | 7 + target/i386/kvm/xen-compat.h | 70 + target/i386/kvm/xen-emu.c | 1903 +++ target/i386/kvm/xen-emu.h | 33 + target/i386/machine.c | 25 + target/i386/monitor.c | 7 +- target/i386/ops_sse.h | 4 + target/i386/sev-sysemu-stub.c | 1 - target/i386/sev.c | 2 +- target/i386/tcg/decode-new.c.inc | 36 +- target/i386/tcg/emit.c.inc | 8 +- target/i386/tcg/mem_helper.c | 126 - target/i386/tcg/seg_helper.c | 8 +- target/i386/tcg/sysemu/excp_helper.c | 4 +- target/i386/tcg/tcg-cpu.c | 8 +- target/i386/tcg/translate.c | 344 +- target/i386/whpx/whpx-all.c | 4 +- target/i386/whpx/whpx-apic.c | 1 + target/loongarch/cpu-param.h | 1 - target/loongarch/cpu.c | 51 +- target/loongarch/cpu.h | 9 +- target/loongarch/csr_helper.c | 9 + target/loongarch/disas.c | 39 +- target/loongarch/gdbstub.c | 1 + target/loongarch/helper.h | 1 + target/loongarch/insn_trans/trans_arith.c.inc | 12 - target/loongarch/insn_trans/trans_atomic.c.inc | 3 - target/loongarch/insn_trans/trans_bit.c.inc | 12 - target/loongarch/insn_trans/trans_branch.c.inc | 2 +- target/loongarch/insn_trans/trans_fcmp.c.inc | 3 - target/loongarch/insn_trans/trans_fmemory.c.inc | 20 +- target/loongarch/insn_trans/trans_fmov.c.inc | 6 - target/loongarch/insn_trans/trans_memory.c.inc | 34 +- target/loongarch/insn_trans/trans_privileged.c.inc | 14 +- target/loongarch/insn_trans/trans_shift.c.inc | 11 - target/loongarch/insns.decode | 3 +- target/loongarch/loongarch-qmp-cmds.c | 37 + target/loongarch/meson.build | 4 +- target/loongarch/tlb_helper.c | 2 +- target/loongarch/translate.c | 26 +- target/loongarch/translate.h | 3 - target/m68k/cpu-param.h | 1 - target/m68k/cpu-qom.h | 4 +- target/m68k/cpu.c | 12 +- target/m68k/cpu.h | 4 +- target/m68k/fpu_helper.c | 49 +- target/m68k/gdbstub.c | 2 +- target/m68k/helper.c | 1 + target/m68k/m68k-semi.c | 5 +- target/m68k/translate.c | 501 +- target/microblaze/cpu-param.h | 1 - target/microblaze/cpu-qom.h | 4 +- target/microblaze/cpu.c | 23 +- target/microblaze/cpu.h | 8 +- target/microblaze/gdbstub.c | 47 +- target/microblaze/op_helper.c | 2 +- target/microblaze/translate.c | 91 +- target/mips/cpu-defs.c.inc | 17 +- target/mips/cpu-param.h | 1 - target/mips/cpu-qom.h | 4 +- target/mips/cpu.c | 55 +- target/mips/cpu.h | 4 +- target/mips/gdbstub.c | 2 +- target/mips/internal.h | 3 - target/mips/kvm.c | 11 +- target/mips/sysemu/addr.c | 17 - target/mips/sysemu/meson.build | 1 + target/mips/sysemu/mips-qmp-cmds.c | 39 + target/mips/sysemu/physaddr.c | 16 +- target/mips/tcg/dsp_helper.c | 15 +- target/mips/tcg/exception.c | 3 +- target/mips/tcg/ldst_helper.c | 4 +- target/mips/tcg/micromips_translate.c.inc | 12 +- target/mips/tcg/mips16e_translate.c.inc | 6 - target/mips/tcg/msa_helper.c | 104 +- target/mips/tcg/msa_translate.c | 9 - target/mips/tcg/mxu_translate.c | 55 +- target/mips/tcg/nanomips_translate.c.inc | 147 +- target/mips/tcg/octeon_translate.c | 23 - target/mips/tcg/sysemu/mips-semi.c | 3 +- target/mips/tcg/sysemu/special_helper.c | 2 +- target/mips/tcg/sysemu/tlb_helper.c | 2 +- target/mips/tcg/translate.c | 887 +- target/mips/tcg/translate_addr_const.c | 7 - target/mips/tcg/tx79_translate.c | 45 +- target/mips/tcg/vr54xx_translate.c | 6 +- target/nios2/cpu-param.h | 1 - target/nios2/cpu.c | 14 +- target/nios2/cpu.h | 6 +- target/nios2/nios2-semi.c | 9 +- target/nios2/translate.c | 19 +- target/openrisc/cpu-param.h | 1 - target/openrisc/cpu.c | 16 +- target/openrisc/cpu.h | 7 +- target/openrisc/gdbstub.c | 2 +- target/openrisc/interrupt.c | 2 +- target/openrisc/mmu.c | 2 +- target/openrisc/translate.c | 41 +- target/ppc/cpu-param.h | 1 - target/ppc/cpu-qom.h | 6 +- target/ppc/cpu.h | 21 +- target/ppc/cpu_init.c | 87 +- target/ppc/dfp_helper.c | 4 +- target/ppc/excp_helper.c | 75 +- target/ppc/gdbstub.c | 1 + target/ppc/helper.h | 2 - target/ppc/helper_regs.c | 14 +- target/ppc/insn32.decode | 20 +- target/ppc/internal.h | 5 + target/ppc/kvm.c | 1 - target/ppc/kvm_ppc.h | 3 + target/ppc/mem_helper.c | 44 - target/ppc/meson.build | 2 +- target/ppc/mmu-hash32.c | 14 +- target/ppc/mmu-hash64.c | 84 +- target/ppc/mmu-hash64.h | 5 + target/ppc/mmu_common.c | 31 +- target/ppc/mmu_helper.c | 4 +- target/ppc/monitor.c | 174 - target/ppc/power8-pmu-regs.c.inc | 20 +- target/ppc/ppc-qmp-cmds.c | 222 + target/ppc/spr_common.h | 1 + target/ppc/translate.c | 564 +- target/ppc/translate/dfp-impl.c.inc | 20 - target/ppc/translate/fixedpoint-impl.c.inc | 66 +- target/ppc/translate/fp-impl.c.inc | 168 +- target/ppc/translate/spe-impl.c.inc | 67 +- target/ppc/translate/storage-ctrl-impl.c.inc | 2 - target/ppc/translate/vmx-impl.c.inc | 430 +- target/ppc/translate/vsx-impl.c.inc | 323 +- target/riscv/cpu-param.h | 1 - target/riscv/cpu.c | 889 +- target/riscv/cpu.h | 115 +- target/riscv/cpu_bits.h | 41 + target/riscv/cpu_helper.c | 78 +- target/riscv/cpu_vendorid.h | 6 + target/riscv/csr.c | 822 +- target/riscv/debug.c | 212 +- target/riscv/debug.h | 13 + target/riscv/fpu_helper.c | 36 +- target/riscv/gdbstub.c | 101 +- target/riscv/helper.h | 10 +- target/riscv/insn32.decode | 24 +- target/riscv/insn_trans/trans_privileged.c.inc | 4 +- target/riscv/insn_trans/trans_rva.c.inc | 10 +- target/riscv/insn_trans/trans_rvb.c.inc | 25 +- target/riscv/insn_trans/trans_rvd.c.inc | 4 +- target/riscv/insn_trans/trans_rvf.c.inc | 11 +- target/riscv/insn_trans/trans_rvh.c.inc | 3 + target/riscv/insn_trans/trans_rvi.c.inc | 47 +- target/riscv/insn_trans/trans_rvk.c.inc | 15 - target/riscv/insn_trans/trans_rvm.c.inc | 33 - target/riscv/insn_trans/trans_rvv.c.inc | 271 +- target/riscv/insn_trans/trans_rvzawrs.c.inc | 51 + target/riscv/insn_trans/trans_rvzfh.c.inc | 41 +- target/riscv/insn_trans/trans_rvzicbo.c.inc | 57 + target/riscv/insn_trans/trans_rvzicond.c.inc | 49 + target/riscv/insn_trans/trans_svinval.c.inc | 3 + target/riscv/insn_trans/trans_xthead.c.inc | 1068 ++ target/riscv/kvm.c | 5 +- target/riscv/machine.c | 47 +- target/riscv/meson.build | 1 + target/riscv/monitor.c | 4 +- target/riscv/op_helper.c | 171 +- target/riscv/pmp.c | 101 +- target/riscv/pmp.h | 6 +- target/riscv/pmu.h | 1 - target/riscv/time_helper.c | 36 +- target/riscv/translate.c | 164 +- target/riscv/vector_helper.c | 136 +- target/riscv/xthead.decode | 185 + target/rx/cpu-param.h | 2 - target/rx/cpu-qom.h | 4 +- target/rx/cpu.c | 16 +- target/rx/cpu.h | 2 +- target/rx/gdbstub.c | 2 +- target/rx/helper.c | 4 +- target/rx/translate.c | 170 +- target/s390x/arch_dump.c | 20 +- target/s390x/cpu-param.h | 1 - target/s390x/cpu-sysemu.c | 1 + target/s390x/cpu.c | 30 +- target/s390x/cpu.h | 10 + target/s390x/cpu_features.c | 4 + target/s390x/cpu_models.c | 5 +- target/s390x/cpu_models_sysemu.c | 1 - target/s390x/diag.c | 2 + target/s390x/gdbstub.c | 1 + target/s390x/helper.c | 2 +- target/s390x/helper.h | 60 +- target/s390x/mmu_helper.c | 2 +- target/s390x/tcg/excp_helper.c | 17 +- target/s390x/tcg/fpu_helper.c | 110 +- target/s390x/tcg/insn-data.h.inc | 120 +- target/s390x/tcg/int_helper.c | 64 +- target/s390x/tcg/mem_helper.c | 404 +- target/s390x/tcg/misc_helper.c | 1 - target/s390x/tcg/translate.c | 968 +- target/s390x/tcg/translate_vx.c.inc | 190 +- target/sh4/cpu-param.h | 1 - target/sh4/cpu-qom.h | 4 +- target/sh4/cpu.c | 18 +- target/sh4/cpu.h | 2 +- target/sh4/gdbstub.c | 2 +- target/sh4/translate.c | 161 +- target/sparc/cpu-param.h | 2 - target/sparc/cpu-qom.h | 4 +- target/sparc/cpu.c | 16 +- target/sparc/cpu.h | 6 +- target/sparc/gdbstub.c | 2 +- target/sparc/ldst_helper.c | 6 +- target/sparc/mmu_helper.c | 133 +- target/sparc/translate.c | 374 +- target/tricore/cpu-param.h | 1 - target/tricore/cpu-qom.h | 2 +- target/tricore/cpu.c | 15 +- target/tricore/cpu.h | 11 - target/tricore/gdbstub.c | 4 +- target/tricore/helper.c | 2 +- target/tricore/translate.c | 1069 +- target/xtensa/core-dc232b.c | 2 +- target/xtensa/core-dc233c.c | 2 +- target/xtensa/core-de212.c | 2 +- target/xtensa/core-de233_fpu.c | 2 +- target/xtensa/core-dsp3400.c | 2 +- target/xtensa/core-fsf.c | 2 +- target/xtensa/core-lx106.c | 2 +- target/xtensa/core-sample_controller.c | 2 +- target/xtensa/core-test_kc705_be.c | 2 +- target/xtensa/core-test_mmuhifi_c3.c | 2 +- target/xtensa/cpu-param.h | 1 - target/xtensa/cpu-qom.h | 4 +- target/xtensa/cpu.c | 15 +- target/xtensa/cpu.h | 2 +- target/xtensa/gdbstub.c | 2 +- target/xtensa/helper.c | 2 +- target/xtensa/import_core.sh | 2 +- target/xtensa/translate.c | 189 +- tcg/README | 784 - tcg/aarch64/tcg-target.c.inc | 136 +- tcg/aarch64/tcg-target.h | 12 +- tcg/arm/tcg-target-con-set.h | 7 +- tcg/arm/tcg-target-con-str.h | 2 + tcg/arm/tcg-target.c.inc | 157 +- tcg/arm/tcg-target.h | 11 +- tcg/i386/tcg-target-con-set.h | 5 +- tcg/i386/tcg-target.c.inc | 160 +- tcg/i386/tcg-target.h | 21 +- tcg/loongarch64/tcg-insn-defs.c.inc | 10 +- tcg/loongarch64/tcg-target-con-set.h | 5 +- tcg/loongarch64/tcg-target-con-str.h | 2 +- tcg/loongarch64/tcg-target.c.inc | 404 +- tcg/loongarch64/tcg-target.h | 19 +- tcg/mips/tcg-target.c.inc | 79 +- tcg/mips/tcg-target.h | 12 +- tcg/optimize.c | 12 +- tcg/ppc/tcg-target.c.inc | 251 +- tcg/ppc/tcg-target.h | 7 +- tcg/region.c | 19 +- tcg/riscv/tcg-target.c.inc | 159 +- tcg/riscv/tcg-target.h | 14 +- tcg/s390x/tcg-target-con-set.h | 26 +- tcg/s390x/tcg-target-con-str.h | 11 +- tcg/s390x/tcg-target.c.inc | 1314 +- tcg/s390x/tcg-target.h | 68 +- tcg/sparc64/tcg-target.c.inc | 201 +- tcg/sparc64/tcg-target.h | 9 +- tcg/tcg-common.c | 2 +- tcg/tcg-internal.h | 75 +- tcg/tcg-op-gvec.c | 191 +- tcg/tcg-op-vec.c | 45 +- tcg/tcg-op.c | 716 +- tcg/tcg.c | 2421 ++- tcg/tci.c | 63 +- tcg/tci/tcg-target.c.inc | 65 +- tcg/tci/tcg-target.h | 14 +- tests/avocado/acpi-bits.py | 2 +- tests/avocado/acpi-bits/bits-tests/smbios.py2 | 4 + tests/avocado/acpi-bits/bits-tests/testacpi.py2 | 4 + tests/avocado/acpi-bits/bits-tests/testcpuid.py2 | 4 + tests/avocado/avocado_qemu/__init__.py | 16 +- tests/avocado/boot_linux.py | 51 +- tests/avocado/boot_linux_console.py | 67 +- tests/avocado/kvm_xen_guest.py | 171 + tests/avocado/machine_aarch64_virt.py | 71 +- tests/avocado/machine_aspeed.py | 70 +- tests/avocado/machine_mips_malta.py | 43 +- tests/avocado/multiprocess.py | 1 + tests/avocado/netdev-ethtool.py | 116 + tests/avocado/replay_kernel.py | 1 + tests/avocado/reverse_debugging.py | 8 + tests/avocado/riscv_opensbi.py | 65 + tests/avocado/tuxrun_baselines.py | 410 + tests/avocado/version.py | 1 + tests/avocado/virtiofs_submounts.py | 217 - tests/bench/benchmark-crypto-akcipher.c | 6 +- tests/bench/meson.build | 10 + tests/bench/qtree-bench.c | 286 + tests/bench/xbzrle-bench.c | 469 + tests/check-block.sh | 43 - tests/data/acpi/pc/DSDT | Bin 6458 -> 6488 bytes tests/data/acpi/pc/DSDT.acpierst | Bin 6418 -> 6411 bytes tests/data/acpi/pc/DSDT.acpihmat | Bin 7783 -> 7813 bytes tests/data/acpi/pc/DSDT.bridge | Bin 9532 -> 12615 bytes tests/data/acpi/pc/DSDT.cphp | Bin 6922 -> 6952 bytes tests/data/acpi/pc/DSDT.dimmpxm | Bin 8112 -> 8142 bytes tests/data/acpi/pc/DSDT.hpbridge | Bin 6418 -> 6451 bytes tests/data/acpi/pc/DSDT.hpbrroot | Bin 3064 -> 3343 bytes tests/data/acpi/pc/DSDT.ipmikcs | Bin 6530 -> 6560 bytes tests/data/acpi/pc/DSDT.memhp | Bin 7817 -> 7847 bytes tests/data/acpi/pc/DSDT.nohpet | Bin 6316 -> 6346 bytes tests/data/acpi/pc/DSDT.numamem | Bin 6464 -> 6494 bytes tests/data/acpi/pc/DSDT.roothp | Bin 6656 -> 9873 bytes tests/data/acpi/q35/DSDT | Bin 8310 -> 8361 bytes tests/data/acpi/q35/DSDT.acpierst | Bin 8327 -> 8378 bytes tests/data/acpi/q35/DSDT.acpihmat | Bin 9635 -> 9686 bytes tests/data/acpi/q35/DSDT.acpihmat-noinitiator | Bin 8589 -> 8640 bytes tests/data/acpi/q35/DSDT.applesmc | Bin 8356 -> 8407 bytes tests/data/acpi/q35/DSDT.bridge | Bin 11439 -> 11590 bytes tests/data/acpi/q35/DSDT.core-count2 | Bin 32450 -> 32501 bytes tests/data/acpi/q35/DSDT.cphp | Bin 8774 -> 8825 bytes tests/data/acpi/q35/DSDT.cxl | Bin 9636 -> 9673 bytes tests/data/acpi/q35/DSDT.dimmpxm | Bin 9964 -> 10015 bytes tests/data/acpi/q35/DSDT.ipmibt | Bin 8385 -> 8436 bytes tests/data/acpi/q35/DSDT.ipmismbus | Bin 8398 -> 8449 bytes tests/data/acpi/q35/DSDT.ivrs | Bin 8327 -> 8378 bytes tests/data/acpi/q35/DSDT.memhp | Bin 9669 -> 9720 bytes tests/data/acpi/q35/DSDT.mmio64 | Bin 9440 -> 9491 bytes tests/data/acpi/q35/DSDT.multi-bridge | Bin 8630 -> 12770 bytes tests/data/acpi/q35/DSDT.noacpihp | Bin 0 -> 8248 bytes tests/data/acpi/q35/DSDT.nohpet | Bin 8168 -> 8219 bytes tests/data/acpi/q35/DSDT.numamem | Bin 8316 -> 8367 bytes tests/data/acpi/q35/DSDT.pvpanic-isa | Bin 8411 -> 8462 bytes tests/data/acpi/q35/DSDT.tis.tpm12 | Bin 8916 -> 8967 bytes tests/data/acpi/q35/DSDT.tis.tpm2 | Bin 8942 -> 8993 bytes tests/data/acpi/q35/DSDT.viot | Bin 9419 -> 9470 bytes tests/data/acpi/q35/DSDT.xapic | Bin 35673 -> 35724 bytes tests/data/acpi/virt/APIC.memhp | Bin 172 -> 0 bytes tests/data/acpi/virt/APIC.numamem | Bin 172 -> 0 bytes tests/data/acpi/virt/APIC.topology | Bin 0 -> 732 bytes tests/data/acpi/virt/DSDT.numamem | Bin 5196 -> 0 bytes tests/data/acpi/virt/DSDT.topology | Bin 0 -> 5398 bytes tests/data/acpi/virt/FACP.memhp | Bin 276 -> 0 bytes tests/data/acpi/virt/FACP.numamem | Bin 276 -> 0 bytes tests/data/acpi/virt/GTDT.memhp | Bin 96 -> 0 bytes tests/data/acpi/virt/GTDT.numamem | Bin 96 -> 0 bytes tests/data/acpi/virt/IORT.memhp | Bin 128 -> 0 bytes tests/data/acpi/virt/IORT.numamem | Bin 128 -> 0 bytes tests/data/acpi/virt/IORT.pxb | Bin 128 -> 0 bytes tests/data/acpi/virt/MCFG.memhp | Bin 60 -> 0 bytes tests/data/acpi/virt/MCFG.numamem | Bin 60 -> 0 bytes tests/data/acpi/virt/PPTT | Bin 96 -> 76 bytes tests/data/acpi/virt/PPTT.acpihmatvirt | Bin 196 -> 156 bytes tests/data/acpi/virt/PPTT.topology | Bin 0 -> 336 bytes tests/data/acpi/virt/SPCR.memhp | Bin 80 -> 0 bytes tests/data/acpi/virt/SPCR.numamem | Bin 80 -> 0 bytes tests/data/acpi/virt/SRAT.acpihmatvirt | Bin 240 -> 240 bytes tests/data/acpi/virt/SSDT.memhp | Bin 1817 -> 1817 bytes tests/docker/Makefile.include | 33 +- tests/docker/docker.py | 6 +- tests/docker/dockerfiles/alpine.docker | 11 +- tests/docker/dockerfiles/centos8.docker | 33 +- .../dockerfiles/debian-all-test-cross.docker | 5 + tests/docker/dockerfiles/debian-alpha-cross.docker | 5 + tests/docker/dockerfiles/debian-amd64-cross.docker | 9 +- tests/docker/dockerfiles/debian-amd64.docker | 11 +- tests/docker/dockerfiles/debian-arm64-cross.docker | 9 +- tests/docker/dockerfiles/debian-armel-cross.docker | 9 +- tests/docker/dockerfiles/debian-armhf-cross.docker | 9 +- .../debian-hexagon-cross.d/build-toolchain.sh | 141 - .../docker/dockerfiles/debian-hexagon-cross.docker | 58 +- tests/docker/dockerfiles/debian-hppa-cross.docker | 5 + .../dockerfiles/debian-loongarch-cross.docker | 5 + tests/docker/dockerfiles/debian-m68k-cross.docker | 5 + tests/docker/dockerfiles/debian-mips-cross.docker | 5 + .../docker/dockerfiles/debian-mips64-cross.docker | 5 + .../dockerfiles/debian-mips64el-cross.docker | 9 +- .../docker/dockerfiles/debian-mipsel-cross.docker | 9 +- tests/docker/dockerfiles/debian-native.docker | 5 + .../dockerfiles/debian-powerpc-test-cross.docker | 6 +- .../docker/dockerfiles/debian-ppc64el-cross.docker | 9 +- .../docker/dockerfiles/debian-riscv64-cross.docker | 6 + .../dockerfiles/debian-riscv64-test-cross.docker | 5 + tests/docker/dockerfiles/debian-s390x-cross.docker | 9 +- tests/docker/dockerfiles/debian-sh4-cross.docker | 5 + .../docker/dockerfiles/debian-sparc64-cross.docker | 5 + tests/docker/dockerfiles/debian-toolchain.docker | 10 +- .../docker/dockerfiles/debian-tricore-cross.docker | 17 +- .../docker/dockerfiles/debian-xtensa-cross.docker | 5 + tests/docker/dockerfiles/fedora-cris-cross.docker | 5 + tests/docker/dockerfiles/fedora-i386-cross.docker | 6 + tests/docker/dockerfiles/fedora-win32-cross.docker | 16 +- tests/docker/dockerfiles/fedora-win64-cross.docker | 16 +- tests/docker/dockerfiles/fedora.docker | 15 +- tests/docker/dockerfiles/opensuse-leap.docker | 33 +- tests/docker/dockerfiles/python.docker | 6 +- tests/docker/dockerfiles/ubuntu2004.docker | 16 +- tests/docker/dockerfiles/ubuntu2204.docker | 153 + tests/docker/test-tsan | 2 +- tests/fp/berkeley-testfloat-3 | 2 +- tests/fp/fp-test.c | 19 +- tests/fp/meson.build | 3 +- tests/lcitool/libvirt-ci | 2 +- tests/lcitool/mappings.yml | 77 + tests/lcitool/projects/qemu.yml | 4 +- tests/lcitool/refresh | 32 +- tests/lcitool/targets/centos-stream-8.yml | 3 + tests/lcitool/targets/opensuse-leap-153.yml | 3 + tests/migration/guestperf/engine.py | 30 +- tests/migration/meson.build | 4 +- tests/qapi-schema/meson.build | 13 +- tests/qemu-iotests/022 | 4 +- tests/qemu-iotests/065 | 2 +- tests/qemu-iotests/106 | 4 +- tests/qemu-iotests/186 | 1 + tests/qemu-iotests/214 | 6 +- tests/qemu-iotests/262 | 3 +- tests/qemu-iotests/302.out | 5 + tests/qemu-iotests/308 | 47 +- tests/qemu-iotests/308.out | 35 + tests/qemu-iotests/312 | 1 + tests/qemu-iotests/check | 32 +- tests/qemu-iotests/common.filter | 22 +- tests/qemu-iotests/common.rc | 22 +- tests/qemu-iotests/iotests.py | 22 +- tests/qemu-iotests/meson.build | 36 +- tests/qemu-iotests/testenv.py | 20 +- tests/qemu-iotests/testrunner.py | 43 +- .../tests/detect-zeroes-registered-buf | 58 + .../tests/detect-zeroes-registered-buf.out | 7 + .../tests/migrate-bitmaps-postcopy-test | 2 +- tests/qemu-iotests/tests/qemu-img-close-errors | 96 + tests/qemu-iotests/tests/qemu-img-close-errors.out | 23 + tests/qemu-iotests/tests/regression-vhdx-log | 62 + tests/qemu-iotests/tests/regression-vhdx-log.out | 14 + tests/qemu-iotests/tests/stream-under-throttle | 2 + tests/qtest/ahci-test.c | 3 + tests/qtest/arm-cpu-features.c | 23 +- tests/qtest/bios-tables-test.c | 250 +- tests/qtest/boot-sector.c | 6 +- tests/qtest/boot-serial-test.c | 2 +- tests/qtest/dbus-display-test.c | 5 +- tests/qtest/device-plug-test.c | 41 +- tests/qtest/display-vga-test.c | 65 +- tests/qtest/drive_del-test.c | 65 + tests/qtest/e1000e-test.c | 38 +- tests/qtest/erst-test.c | 7 +- tests/qtest/fuzz-lsi53c895a-test.c | 4 + tests/qtest/fuzz/fork_fuzz.c | 41 - tests/qtest/fuzz/fork_fuzz.h | 23 - tests/qtest/fuzz/fork_fuzz.ld | 56 - tests/qtest/fuzz/fuzz.c | 6 + tests/qtest/fuzz/fuzz.h | 2 +- tests/qtest/fuzz/generic_fuzz.c | 120 +- tests/qtest/fuzz/generic_fuzz_configs.h | 5 + tests/qtest/fuzz/i440fx_fuzz.c | 27 +- tests/qtest/fuzz/meson.build | 6 +- tests/qtest/fuzz/qos_fuzz.c | 3 +- tests/qtest/fuzz/virtio_blk_fuzz.c | 51 +- tests/qtest/fuzz/virtio_net_fuzz.c | 54 +- tests/qtest/fuzz/virtio_scsi_fuzz.c | 51 +- tests/qtest/hd-geo-test.c | 38 +- tests/qtest/hexloader-test.c | 6 +- tests/qtest/ide-test.c | 3 +- tests/qtest/igb-test.c | 256 + tests/qtest/ivshmem-test.c | 4 +- tests/qtest/libqmp.c | 2 +- tests/qtest/libqos/e1000e.c | 40 +- tests/qtest/libqos/e1000e.h | 18 +- tests/qtest/libqos/igb.c | 185 + tests/qtest/libqos/libqos-pc.h | 6 +- tests/qtest/libqos/libqos-spapr.h | 6 +- tests/qtest/libqos/libqos.h | 6 +- tests/qtest/libqos/meson.build | 1 + tests/qtest/libqos/virtio-9p.c | 1 + tests/qtest/libqtest.c | 186 +- tests/qtest/libqtest.h | 5 +- tests/qtest/meson.build | 46 +- tests/qtest/microbit-test.c | 2 +- tests/qtest/migration-helpers.h | 1 + tests/qtest/migration-test.c | 45 +- tests/qtest/netdev-socket.c | 549 + tests/qtest/npcm7xx_pwm-test.c | 27 +- tests/qtest/pvpanic-pci-test.c | 6 +- tests/qtest/pvpanic-test.c | 6 +- tests/qtest/pxe-test.c | 4 + tests/qtest/qmp-cmd-test.c | 3 +- tests/qtest/qom-test.c | 16 +- tests/qtest/readconfig-test.c | 42 +- tests/qtest/rtas-test.c | 2 +- tests/qtest/rtl8139-test.c | 18 +- tests/qtest/tco-test.c | 6 +- tests/qtest/test-filter-mirror.c | 6 +- tests/qtest/test-hmp.c | 2 +- tests/qtest/tpm-emu.c | 12 +- tests/qtest/usb-hcd-uhci-test.c | 4 +- tests/qtest/vhost-user-blk-test.c | 6 + tests/qtest/virtio-ccw-test.c | 6 +- tests/qtest/vnc-display-test.c | 15 +- tests/tcg/Makefile.target | 11 +- tests/tcg/aarch64/Makefile.softmmu-target | 7 + tests/tcg/aarch64/Makefile.target | 14 +- tests/tcg/aarch64/sme-outprod1.c | 83 + tests/tcg/aarch64/sysregs.c | 24 +- tests/tcg/aarch64/system/boot.S | 3 +- tests/tcg/aarch64/system/semiheap.c | 4 +- tests/tcg/hexagon/Makefile.target | 43 +- tests/tcg/hexagon/crt.S | 14 + tests/tcg/hexagon/fpstuff.c | 31 +- tests/tcg/hexagon/hvx_misc.c | 72 + tests/tcg/hexagon/mem_noshuf.c | 2 +- tests/tcg/hexagon/misc.c | 6 +- tests/tcg/hexagon/preg_alias.c | 10 +- tests/tcg/hexagon/reg_mut.c | 152 + tests/tcg/hexagon/scatter_gather.c | 513 +- tests/tcg/hexagon/signal_context.c | 84 + tests/tcg/hexagon/test_abs.S | 17 + tests/tcg/hexagon/test_bitcnt.S | 40 + tests/tcg/hexagon/test_bitsplit.S | 22 + tests/tcg/hexagon/test_call.S | 64 + tests/tcg/hexagon/test_clobber.S | 29 + tests/tcg/hexagon/test_cmp.S | 31 + tests/tcg/hexagon/test_dotnew.S | 38 + tests/tcg/hexagon/test_ext.S | 13 + tests/tcg/hexagon/test_fibonacci.S | 30 + tests/tcg/hexagon/test_hl.S | 16 + tests/tcg/hexagon/test_hwloops.S | 19 + tests/tcg/hexagon/test_jmp.S | 22 + tests/tcg/hexagon/test_lsr.S | 36 + tests/tcg/hexagon/test_mpyi.S | 17 + tests/tcg/hexagon/test_packet.S | 29 + tests/tcg/hexagon/test_reorder.S | 33 + tests/tcg/hexagon/test_round.S | 29 + tests/tcg/hexagon/test_vavgw.S | 31 + tests/tcg/hexagon/test_vcmpb.S | 30 + tests/tcg/hexagon/test_vcmpw.S | 30 + tests/tcg/hexagon/test_vlsrw.S | 20 + tests/tcg/hexagon/test_vmaxh.S | 35 + tests/tcg/hexagon/test_vminh.S | 35 + tests/tcg/hexagon/test_vpmpyh.S | 28 + tests/tcg/hexagon/test_vspliceb.S | 31 + tests/tcg/hexagon/usr.c | 34 +- tests/tcg/multiarch/Makefile.target | 17 + tests/tcg/multiarch/munmap-pthread.c | 16 +- tests/tcg/multiarch/nop_func.h | 25 + tests/tcg/multiarch/sha512.c | 9 +- tests/tcg/multiarch/system/Makefile.softmmu-target | 6 +- tests/tcg/multiarch/test-vma.c | 22 + tests/tcg/multiarch/vma-pthread.c | 207 + tests/tcg/s390x/Makefile.softmmu-target | 22 +- tests/tcg/s390x/Makefile.target | 24 +- tests/tcg/s390x/bal.S | 24 + tests/tcg/s390x/br-odd.S | 16 + tests/tcg/s390x/cdsg.c | 93 + tests/tcg/s390x/cgrl-unaligned.S | 16 + tests/tcg/s390x/chrl.c | 80 + tests/tcg/s390x/clrl-unaligned.S | 16 + tests/tcg/s390x/clst.c | 82 + tests/tcg/s390x/crl-unaligned.S | 16 + tests/tcg/s390x/div.c | 75 + tests/tcg/s390x/ex-branch.c | 158 + tests/tcg/s390x/ex-odd.S | 17 + tests/tcg/s390x/ex-relative-long.c | 156 + tests/tcg/s390x/exrl-ssm-early.S | 43 + tests/tcg/s390x/lgrl-unaligned.S | 16 + tests/tcg/s390x/llgfrl-unaligned.S | 16 + tests/tcg/s390x/long-double.c | 24 + tests/tcg/s390x/lpsw.S | 36 + tests/tcg/s390x/lpswe-early.S | 38 + tests/tcg/s390x/lpswe-unaligned.S | 18 + tests/tcg/s390x/lrl-unaligned.S | 16 + tests/tcg/s390x/mxdb.c | 30 + tests/tcg/s390x/pgm-specification-softmmu.S | 40 + tests/tcg/s390x/pgm-specification-user.c | 37 + tests/tcg/s390x/pgm-specification.mak | 15 + tests/tcg/s390x/rxsbg.c | 46 + tests/tcg/s390x/sam.S | 67 + tests/tcg/s390x/softmmu.ld | 20 + tests/tcg/s390x/ssm-early.S | 41 + tests/tcg/s390x/stgrl-unaligned.S | 16 + tests/tcg/s390x/stosm-early.S | 41 + tests/tcg/s390x/strl-unaligned.S | 16 + tests/tcg/tricore/Makefile.softmmu-target | 11 +- tests/tcg/tricore/macros.h | 76 +- tests/tcg/tricore/test_dextr.S | 75 + tests/tcg/tricore/test_imask.S | 10 + tests/tcg/tricore/test_insert.S | 9 + tests/tcg/tricore/test_ld_bu.S | 15 + tests/tcg/tricore/test_ld_h.S | 15 + tests/tcg/x86_64/Makefile.target | 3 + tests/tcg/x86_64/adox.c | 69 + tests/tcg/xtensa/Makefile.softmmu-target | 5 +- tests/tcg/xtensaeb/Makefile.softmmu-target | 5 + tests/unit/meson.build | 11 +- tests/unit/ptimer-test-stubs.c | 2 +- tests/unit/rcutorture.c | 3 +- tests/unit/socket-helpers.c | 2 +- tests/unit/test-aio.c | 2 +- tests/unit/test-bdrv-drain.c | 409 +- tests/unit/test-block-iothread.c | 7 +- tests/unit/test-blockjob.c | 9 +- tests/unit/test-char.c | 1 - tests/unit/test-coroutine.c | 2 - tests/unit/test-crypto-block.c | 6 - tests/unit/test-crypto-tlssession.c | 4 +- tests/unit/test-cutils.c | 9 +- tests/unit/test-error-report.c | 139 + tests/unit/test-interval-tree.c | 209 + tests/unit/test-io-channel-command.c | 22 +- tests/unit/test-io-channel-socket.c | 1 + tests/unit/test-io-channel-tls.c | 2 +- tests/unit/test-nested-aio-poll.c | 130 + tests/unit/test-qmp-cmds.c | 39 +- tests/unit/test-qmp-event.c | 4 +- tests/unit/test-qobject-input-visitor.c | 2 +- tests/unit/test-qobject-output-visitor.c | 2 - tests/unit/test-qtree.c | 333 + tests/unit/test-rcu-list.c | 5 +- tests/unit/test-seccomp.c | 1 - tests/unit/test-visitor-serialization.c | 3 +- tests/unit/test-vmstate.c | 6 +- tests/unit/test-xbzrle.c | 39 +- tests/unit/test-xs-node.c | 871 ++ tests/vhost-user-bridge.c | 4 +- tests/vm/basevm.py | 3 +- tests/vm/centos.aarch64 | 2 +- tests/vm/freebsd | 4 +- tests/vm/haiku.x86_64 | 7 +- tests/vm/netbsd | 3 +- tests/vm/openbsd | 30 +- tools/ebpf/Makefile.ebpf | 8 +- tools/ebpf/rss.bpf.c | 43 +- tools/meson.build | 13 - tools/virtiofsd/50-qemu-virtiofsd.json.in | 5 - tools/virtiofsd/buffer.c | 350 - tools/virtiofsd/fuse_common.h | 837 -- tools/virtiofsd/fuse_i.h | 107 - tools/virtiofsd/fuse_log.c | 39 - tools/virtiofsd/fuse_log.h | 73 - tools/virtiofsd/fuse_lowlevel.c | 2744 ---- tools/virtiofsd/fuse_lowlevel.h | 1988 --- tools/virtiofsd/fuse_misc.h | 59 - tools/virtiofsd/fuse_opt.c | 446 - tools/virtiofsd/fuse_opt.h | 272 - tools/virtiofsd/fuse_signals.c | 93 - tools/virtiofsd/fuse_virtio.c | 1081 -- tools/virtiofsd/fuse_virtio.h | 33 - tools/virtiofsd/helper.c | 409 - tools/virtiofsd/meson.build | 18 - tools/virtiofsd/passthrough_helpers.h | 51 - tools/virtiofsd/passthrough_ll.c | 4520 ------ tools/virtiofsd/passthrough_seccomp.c | 182 - tools/virtiofsd/passthrough_seccomp.h | 14 - trace-events | 4 - trace/meson.build | 5 +- trace/trace-hmp-cmds.c | 148 + ui/cocoa.m | 30 +- ui/console.c | 27 +- ui/cursor.c | 5 +- ui/dbus-clipboard.c | 19 +- ui/dbus-console.c | 14 +- ui/dbus-listener.c | 23 +- ui/dbus.c | 39 +- ui/egl-headless.c | 17 +- ui/egl-helpers.c | 78 +- ui/gtk.c | 5 +- ui/input.c | 36 +- ui/keycodemapdb | 2 +- ui/meson.build | 8 +- ui/sdl2.c | 36 +- ui/shader/texture-blit-flip.vert | 1 - ui/shader/texture-blit.frag | 1 - ui/shader/texture-blit.vert | 1 - ui/spice-app.c | 1 + ui/spice-core.c | 56 +- ui/spice-display.c | 19 +- ui/udmabuf.c | 2 +- ui/ui-hmp-cmds.c | 460 + ui/ui-qmp-cmds.c | 177 + ui/util.c | 3 +- ui/vdagent.c | 5 +- ui/vnc-clipboard.c | 10 +- ui/vnc.c | 18 +- ui/vnc.h | 1 - util/aio-posix.c | 38 +- util/aio-win32.c | 23 +- util/async-teardown.c | 29 +- util/async.c | 51 +- util/bitops.c | 8 +- util/bufferiszero.c | 44 +- util/cacheflush.c | 14 +- util/cutils.c | 14 +- util/envlist.c | 202 +- util/error-report.c | 1 + util/error.c | 21 +- util/guest-random.c | 2 +- util/hbitmap.c | 2 +- util/int128.c | 42 + util/interval-tree.c | 889 ++ util/log.c | 86 +- util/main-loop.c | 64 +- util/meson.build | 4 +- util/osdep.c | 4 +- util/oslib-posix.c | 76 - util/oslib-win32.c | 359 +- util/qemu-config.c | 230 +- util/qemu-coroutine-lock.c | 10 +- util/qemu-coroutine-sleep.c | 1 - util/qemu-coroutine.c | 1 - util/qemu-sockets.c | 48 +- util/qemu-thread-posix.c | 80 +- util/qemu-thread-win32.c | 82 +- util/qht.c | 97 +- util/qtree.c | 1390 ++ util/readline.c | 8 + util/thread-context.c | 10 +- util/trace-events | 1 + util/uri.c | 3 +- util/userfaultfd.c | 45 +- util/vfio-helpers.c | 14 +- util/vhost-user-server.c | 8 +- 2577 files changed, 190519 insertions(+), 143114 deletions(-) diff --git a/.cirrus.yml b/.cirrus.yml deleted file mode 100644 index 4895987da4..0000000000 --- a/.cirrus.yml +++ /dev/null @@ -1,109 +0,0 @@ -env: - CIRRUS_CLONE_DEPTH: 1 - -windows_msys2_task: - timeout_in: 90m - windows_container: - image: cirrusci/windowsservercore:2019 - os_version: 2019 - cpu: 8 - memory: 8G - env: - CIRRUS_SHELL: powershell - MSYS: winsymlinks:native - MSYSTEM: MINGW64 - MSYS2_URL: https://github.com/msys2/msys2-installer/releases/download/2022-06-03/msys2-base-x86_64-20220603.sfx.exe - MSYS2_FINGERPRINT: 0 - MSYS2_PACKAGES: " - diffutils git grep make pkg-config sed - mingw-w64-x86_64-python - mingw-w64-x86_64-python-sphinx - mingw-w64-x86_64-toolchain - mingw-w64-x86_64-SDL2 - mingw-w64-x86_64-SDL2_image - mingw-w64-x86_64-gtk3 - mingw-w64-x86_64-glib2 - mingw-w64-x86_64-ninja - mingw-w64-x86_64-jemalloc - mingw-w64-x86_64-lzo2 - mingw-w64-x86_64-zstd - mingw-w64-x86_64-libjpeg-turbo - mingw-w64-x86_64-pixman - mingw-w64-x86_64-libgcrypt - mingw-w64-x86_64-libpng - mingw-w64-x86_64-libssh - mingw-w64-x86_64-snappy - mingw-w64-x86_64-libusb - mingw-w64-x86_64-usbredir - mingw-w64-x86_64-libtasn1 - mingw-w64-x86_64-nettle - mingw-w64-x86_64-cyrus-sasl - mingw-w64-x86_64-curl - mingw-w64-x86_64-gnutls - mingw-w64-x86_64-libnfs - " - CHERE_INVOKING: 1 - msys2_cache: - folder: C:\tools\archive - reupload_on_changes: false - # These env variables are used to generate fingerprint to trigger the cache procedure - # If wanna to force re-populate msys2, increase MSYS2_FINGERPRINT - fingerprint_script: - - | - echo $env:CIRRUS_TASK_NAME - echo $env:MSYS2_URL - echo $env:MSYS2_FINGERPRINT - echo $env:MSYS2_PACKAGES - populate_script: - - | - md -Force C:\tools\archive\pkg - $start_time = Get-Date - bitsadmin /transfer msys_download /dynamic /download /priority FOREGROUND $env:MSYS2_URL C:\tools\archive\base.exe - Write-Output "Download time taken: $((Get-Date).Subtract($start_time))" - cd C:\tools - C:\tools\archive\base.exe -y - del -Force C:\tools\archive\base.exe - Write-Output "Base install time taken: $((Get-Date).Subtract($start_time))" - $start_time = Get-Date - - ((Get-Content -path C:\tools\msys64\etc\\post-install\\07-pacman-key.post -Raw) -replace '--refresh-keys', '--version') | Set-Content -Path C:\tools\msys64\etc\\post-install\\07-pacman-key.post - C:\tools\msys64\usr\bin\bash.exe -lc "sed -i 's/^CheckSpace/#CheckSpace/g' /etc/pacman.conf" - C:\tools\msys64\usr\bin\bash.exe -lc "export" - C:\tools\msys64\usr\bin\pacman.exe --noconfirm -Sy - echo Y | C:\tools\msys64\usr\bin\pacman.exe --noconfirm -Suu --overwrite=* - 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 -Syuu --overwrite=*" - Write-Output "Core install time taken: $((Get-Date).Subtract($start_time))" - $start_time = Get-Date - - C:\tools\msys64\usr\bin\bash.exe -lc "pacman --noconfirm -S --needed $env:MSYS2_PACKAGES" - Write-Output "Package install time taken: $((Get-Date).Subtract($start_time))" - $start_time = Get-Date - - del -Force -ErrorAction SilentlyContinue C:\tools\msys64\etc\mtab - del -Force -ErrorAction SilentlyContinue C:\tools\msys64\dev\fd - del -Force -ErrorAction SilentlyContinue C:\tools\msys64\dev\stderr - del -Force -ErrorAction SilentlyContinue C:\tools\msys64\dev\stdin - del -Force -ErrorAction SilentlyContinue C:\tools\msys64\dev\stdout - del -Force -Recurse -ErrorAction SilentlyContinue C:\tools\msys64\var\cache\pacman\pkg - tar cf C:\tools\archive\msys64.tar -C C:\tools\ msys64 - - Write-Output "Package archive time taken: $((Get-Date).Subtract($start_time))" - del -Force -Recurse -ErrorAction SilentlyContinue c:\tools\msys64 - install_script: - - | - $start_time = Get-Date - cd C:\tools - ls C:\tools\archive\msys64.tar - tar xf C:\tools\archive\msys64.tar - Write-Output "Extract msys2 time taken: $((Get-Date).Subtract($start_time))" - script: - - C:\tools\msys64\usr\bin\bash.exe -lc "mkdir build" - - C:\tools\msys64\usr\bin\bash.exe -lc "cd build && ../configure --python=python3" - - C:\tools\msys64\usr\bin\bash.exe -lc "cd build && make -j8" - - exit $LastExitCode - test_script: - - C:\tools\msys64\usr\bin\bash.exe -lc "cd build && make V=1 check" - - exit $LastExitCode diff --git a/.git-blame-ignore-revs b/.git-blame-ignore-revs new file mode 100644 index 0000000000..93718ef425 --- /dev/null +++ b/.git-blame-ignore-revs @@ -0,0 +1,21 @@ +# +# List of code-formatting clean ups the git blame can ignore +# +# git blame --ignore-revs-file .git-blame-ignore-revs +# +# or +# +# git config blame.ignoreRevsFile .git-blame-ignore-revs +# + +# gdbstub: clean-up indents +ad9e4585b3c7425759d3eea697afbca71d2c2082 + +# e1000e: fix code style +0eadd56bf53ab196a16d492d7dd31c62e1c24c32 + +# target/riscv: coding style fixes +8c7feddddd9218b407792120bcfda0347ed16205 + +# replace TABs with spaces +48805df9c22a0700fba4b3b548fafaa21726ca68 diff --git a/.gitlab-ci.d/base.yml b/.gitlab-ci.d/base.yml index 69b36c148a..2fbb58d2a3 100644 --- a/.gitlab-ci.d/base.yml +++ b/.gitlab-ci.d/base.yml @@ -6,6 +6,13 @@ # most restrictive to least restrictive # .base_job_template: + variables: + # Each script line from will be in a collapsible section in the job output + # and show the duration of each line. + FF_SCRIPT_SECTIONS: 1 + + interruptible: true + rules: ############################################################# # Stage 1: exclude scenarios where we definitely don't @@ -68,5 +75,5 @@ - if: '$QEMU_CI != "2" && $CI_PROJECT_NAMESPACE != "qemu-project"' when: manual - # Jobs can run if any jobs they depend on were successfull + # Jobs can run if any jobs they depend on were successful - when: on_success diff --git a/.gitlab-ci.d/buildtest-template.yml b/.gitlab-ci.d/buildtest-template.yml index 73ecfabb8d..a6cfe9be97 100644 --- a/.gitlab-ci.d/buildtest-template.yml +++ b/.gitlab-ci.d/buildtest-template.yml @@ -11,12 +11,10 @@ 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; } + - ../configure --enable-werror --disable-docs --enable-fdt=system + ${LD_JOBS:+--meson=git} ${TARGETS:+--target-list="$TARGETS"} + $CONFIGURE_ARGS || + { 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" ; @@ -27,6 +25,22 @@ make -j"$JOBS" $MAKE_CHECK_ARGS ; fi +# We jump some hoops in common_test_job_template to avoid +# rebuilding all the object files we skip in the artifacts +.native_build_artifact_template: + artifacts: + expire_in: 2 days + paths: + - build + - .git-submodule-status + exclude: + - build/**/*.p + - build/**/*.a.p + - build/**/*.fa.p + - build/**/*.c.o + - build/**/*.c.o.d + - build/**/*.fa + .common_test_job_template: extends: .base_job_template stage: test diff --git a/.gitlab-ci.d/buildtest.yml b/.gitlab-ci.d/buildtest.yml index 10886bb414..bb3650a51c 100644 --- a/.gitlab-ci.d/buildtest.yml +++ b/.gitlab-ci.d/buildtest.yml @@ -2,20 +2,16 @@ include: - local: '/.gitlab-ci.d/buildtest-template.yml' build-system-alpine: - extends: .native_build_job_template + extends: + - .native_build_job_template + - .native_build_artifact_template needs: - job: amd64-alpine-container variables: IMAGE: alpine - TARGETS: aarch64-softmmu alpha-softmmu cris-softmmu hppa-softmmu - microblazeel-softmmu mips64el-softmmu + TARGETS: avr-softmmu loongarch64-softmmu mips64-softmmu mipsel-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 @@ -36,19 +32,17 @@ avocado-system-alpine: MAKE_CHECK_ARGS: check-avocado build-system-ubuntu: - extends: .native_build_job_template + extends: + - .native_build_job_template + - .native_build_artifact_template needs: - job: amd64-ubuntu2004-container + job: amd64-ubuntu2204-container variables: - IMAGE: ubuntu2004 - CONFIGURE_ARGS: --enable-docs --enable-fdt=system --enable-capstone - TARGETS: aarch64-softmmu alpha-softmmu cris-softmmu hppa-softmmu + IMAGE: ubuntu2204 + CONFIGURE_ARGS: --enable-docs + TARGETS: alpha-softmmu cris-softmmu hppa-softmmu microblazeel-softmmu mips64el-softmmu MAKE_CHECK_ARGS: check-build - artifacts: - expire_in: 2 days - paths: - - build check-system-ubuntu: extends: .native_test_job_template @@ -56,7 +50,7 @@ check-system-ubuntu: - job: build-system-ubuntu artifacts: true variables: - IMAGE: ubuntu2004 + IMAGE: ubuntu2204 MAKE_CHECK_ARGS: check avocado-system-ubuntu: @@ -65,22 +59,21 @@ avocado-system-ubuntu: - job: build-system-ubuntu artifacts: true variables: - IMAGE: ubuntu2004 + IMAGE: ubuntu2204 MAKE_CHECK_ARGS: check-avocado build-system-debian: - extends: .native_build_job_template + extends: + - .native_build_job_template + - .native_build_artifact_template needs: job: amd64-debian-container variables: IMAGE: debian-amd64 - TARGETS: arm-softmmu avr-softmmu i386-softmmu mipsel-softmmu - riscv64-softmmu sh4eb-softmmu sparc-softmmu xtensaeb-softmmu + CONFIGURE_ARGS: --with-coroutine=sigaltstack + TARGETS: arm-softmmu i386-softmmu riscv64-softmmu sh4eb-softmmu + sparc-softmmu xtensaeb-softmmu MAKE_CHECK_ARGS: check-build - artifacts: - expire_in: 2 days - paths: - - build check-system-debian: extends: .native_test_job_template @@ -113,20 +106,17 @@ crash-test-debian: - tests/venv/bin/python3 scripts/device-crash-test -q --tcg-only ./qemu-system-i386 build-system-fedora: - extends: .native_build_job_template + extends: + - .native_build_job_template + - .native_build_artifact_template needs: job: amd64-fedora-container variables: IMAGE: fedora CONFIGURE_ARGS: --disable-gcrypt --enable-nettle --enable-docs - --enable-fdt=system --enable-slirp --enable-capstone TARGETS: tricore-softmmu microblaze-softmmu mips-softmmu xtensa-softmmu m68k-softmmu riscv32-softmmu ppc-softmmu sparc64-softmmu MAKE_CHECK_ARGS: check-build - artifacts: - expire_in: 2 days - paths: - - build check-system-fedora: extends: .native_test_job_template @@ -160,21 +150,18 @@ crash-test-fedora: - tests/venv/bin/python3 scripts/device-crash-test -q ./qemu-system-riscv32 build-system-centos: - extends: .native_build_job_template + extends: + - .native_build_job_template + - .native_build_artifact_template needs: job: amd64-centos8-container variables: IMAGE: centos8 - CONFIGURE_ARGS: --disable-nettle --enable-gcrypt --enable-fdt=system + CONFIGURE_ARGS: --disable-nettle --enable-gcrypt --enable-vfio-user-server --enable-modules --enable-trace-backends=dtrace --enable-docs - --enable-vfio-user-server TARGETS: ppc64-softmmu or1k-softmmu s390x-softmmu x86_64-softmmu rx-softmmu sh4-softmmu nios2-softmmu MAKE_CHECK_ARGS: check-build - artifacts: - expire_in: 2 days - paths: - - build check-system-centos: extends: .native_test_job_template @@ -195,18 +182,15 @@ avocado-system-centos: MAKE_CHECK_ARGS: check-avocado build-system-opensuse: - extends: .native_build_job_template + extends: + - .native_build_job_template + - .native_build_artifact_template needs: job: amd64-opensuse-leap-container variables: IMAGE: opensuse-leap - CONFIGURE_ARGS: --enable-fdt=system TARGETS: s390x-softmmu x86_64-softmmu aarch64-softmmu MAKE_CHECK_ARGS: check-build - artifacts: - expire_in: 2 days - paths: - - build check-system-opensuse: extends: .native_test_job_template @@ -244,6 +228,7 @@ build-tcg-disabled: - mkdir build - cd build - ../configure --disable-tcg --audio-drv-list="" --with-coroutine=ucontext + --disable-docs --disable-sdl --disable-gtk --disable-vnc || { cat config.log meson-logs/meson-log.txt && exit 1; } - make -j"$JOBS" - make check-unit @@ -275,14 +260,10 @@ build-user-static: CONFIGURE_ARGS: --disable-tools --disable-system --static MAKE_CHECK_ARGS: check-tcg -# Because the hexagon cross-compiler takes so long to build we don't rely -# on the CI system to build it and hence this job has an optional dependency -# declared. The image is manually uploaded. build-user-hexagon: extends: .native_build_job_template needs: job: hexagon-cross-container - optional: true variables: IMAGE: debian-hexagon-cross TARGETS: hexagon-linux-user @@ -319,8 +300,7 @@ clang-system: IMAGE: fedora CONFIGURE_ARGS: --cc=clang --cxx=clang++ --extra-cflags=-fsanitize=undefined --extra-cflags=-fno-sanitize-recover=undefined
|
Lists.xenproject.org is hosted with RackSpace, monitoring our |