History log of /openbmc/qemu/block/ (Results 151 – 175 of 6196)
Revision Date Author Comments
(<<< Hide modified files)
(Show modified files >>>)
fed8245013-Oct-2023 Kevin Wolf <kwolf@redhat.com>

block: Fix locking in media change monitor commands

blk_insert_bs() requires that the caller holds the AioContext lock for
the node to be inserted. Since commit c066e808e11, neglecting to do so
caus

block: Fix locking in media change monitor commands

blk_insert_bs() requires that the caller holds the AioContext lock for
the node to be inserted. Since commit c066e808e11, neglecting to do so
causes a crash when the child has to be moved to a different AioContext
to attach it to the BlockBackend.

This fixes qmp_blockdev_insert_anon_medium(), which is called for the
QMP commands 'blockdev-insert-medium' and 'blockdev-change-medium', to
correctly take the lock.

Cc: qemu-stable@nongnu.org
Fixes: https://issues.redhat.com/browse/RHEL-3922
Fixes: c066e808e11a5c181b625537b6c78e0de27a4801
Signed-off-by: Kevin Wolf <kwolf@redhat.com>
Message-ID: <20231013153302.39234-2-kwolf@redhat.com>
Reviewed-by: Hanna Czenczek <hreitz@redhat.com>
Signed-off-by: Kevin Wolf <kwolf@redhat.com>

show more ...


/openbmc/qemu/.mailmap
/openbmc/qemu/MAINTAINERS
/openbmc/qemu/Makefile
/openbmc/qemu/accel/kvm/kvm-all.c
/openbmc/qemu/accel/stubs/kvm-stub.c
qapi-sysemu.c
/openbmc/qemu/bsd-user/arm/target_arch.h
/openbmc/qemu/chardev/msmouse.c
/openbmc/qemu/chardev/wctablet.c
/openbmc/qemu/configs/targets/sparc-softmmu.mak
/openbmc/qemu/configs/targets/sparc64-softmmu.mak
/openbmc/qemu/contrib/elf2dmp/addrspace.c
/openbmc/qemu/contrib/elf2dmp/main.c
/openbmc/qemu/contrib/elf2dmp/pdb.c
/openbmc/qemu/contrib/elf2dmp/qemu_elf.c
/openbmc/qemu/docs/about/deprecated.rst
/openbmc/qemu/docs/devel/index-internals.rst
/openbmc/qemu/docs/devel/s390-cpu-topology.rst
/openbmc/qemu/docs/interop/vhost-user.rst
/openbmc/qemu/docs/system/arm/emulation.rst
/openbmc/qemu/docs/system/arm/virt.rst
/openbmc/qemu/docs/system/s390x/cpu-topology.rst
/openbmc/qemu/docs/system/target-i386-desc.rst.inc
/openbmc/qemu/docs/system/target-s390x.rst
/openbmc/qemu/docs/tools/qemu-img.rst
/openbmc/qemu/hw/acpi/cxl.c
/openbmc/qemu/hw/acpi/pcihp.c
/openbmc/qemu/hw/arm/armv7m.c
/openbmc/qemu/hw/arm/aspeed.c
/openbmc/qemu/hw/arm/aspeed_ast10x0.c
/openbmc/qemu/hw/arm/aspeed_ast2400.c
/openbmc/qemu/hw/arm/aspeed_ast2600.c
/openbmc/qemu/hw/arm/aspeed_soc_common.c
/openbmc/qemu/hw/arm/bananapi_m2u.c
/openbmc/qemu/hw/arm/boot.c
/openbmc/qemu/hw/arm/cubieboard.c
/openbmc/qemu/hw/arm/exynos4_boards.c
/openbmc/qemu/hw/arm/fby35.c
/openbmc/qemu/hw/arm/imx25_pdk.c
/openbmc/qemu/hw/arm/kzm.c
/openbmc/qemu/hw/arm/mcimx6ul-evk.c
/openbmc/qemu/hw/arm/mcimx7d-sabre.c
/openbmc/qemu/hw/arm/meson.build
/openbmc/qemu/hw/arm/orangepi.c
/openbmc/qemu/hw/arm/pxa2xx.c
/openbmc/qemu/hw/arm/pxa2xx_pic.c
/openbmc/qemu/hw/arm/realview.c
/openbmc/qemu/hw/arm/sabrelite.c
/openbmc/qemu/hw/arm/sbsa-ref.c
/openbmc/qemu/hw/arm/smmuv3-internal.h
/openbmc/qemu/hw/arm/smmuv3.c
/openbmc/qemu/hw/arm/virt-acpi-build.c
/openbmc/qemu/hw/arm/virt.c
/openbmc/qemu/hw/arm/xilinx_zynq.c
/openbmc/qemu/hw/arm/xlnx-versal-virt.c
/openbmc/qemu/hw/arm/xlnx-zcu102.c
/openbmc/qemu/hw/block/vhost-user-blk.c
/openbmc/qemu/hw/char/escc.c
/openbmc/qemu/hw/core/cpu-sysemu.c
/openbmc/qemu/hw/core/machine-hmp-cmds.c
/openbmc/qemu/hw/core/machine-smp.c
/openbmc/qemu/hw/core/machine.c
/openbmc/qemu/hw/core/qdev-properties-system.c
/openbmc/qemu/hw/display/virtio-dmabuf.c
/openbmc/qemu/hw/display/virtio-gpu.c
/openbmc/qemu/hw/display/xenfb.c
/openbmc/qemu/hw/dma/xilinx_axidma.c
/openbmc/qemu/hw/dma/xlnx-zdma.c
/openbmc/qemu/hw/dma/xlnx_csu_dma.c
/openbmc/qemu/hw/hppa/Kconfig
/openbmc/qemu/hw/hppa/hppa_hardware.h
/openbmc/qemu/hw/hppa/machine.c
/openbmc/qemu/hw/i386/Kconfig
/openbmc/qemu/hw/i386/acpi-build.c
/openbmc/qemu/hw/i386/amd_iommu.c
/openbmc/qemu/hw/i386/intel_iommu.c
/openbmc/qemu/hw/i386/intel_iommu_internal.h
/openbmc/qemu/hw/i386/kvm/clock.c
/openbmc/qemu/hw/i386/kvm/i8254.c
/openbmc/qemu/hw/i386/microvm.c
/openbmc/qemu/hw/i386/pc.c
/openbmc/qemu/hw/i386/pc_piix.c
/openbmc/qemu/hw/i386/pc_q35.c
/openbmc/qemu/hw/input/adb-kbd.c
/openbmc/qemu/hw/input/hid.c
/openbmc/qemu/hw/input/lasips2.c
/openbmc/qemu/hw/input/ps2.c
/openbmc/qemu/hw/input/virtio-input-hid.c
/openbmc/qemu/hw/intc/apic_common.c
/openbmc/qemu/hw/intc/arm_gicv3_its_common.c
/openbmc/qemu/hw/intc/arm_gicv3_its_kvm.c
/openbmc/qemu/hw/intc/armv7m_nvic.c
/openbmc/qemu/hw/intc/spapr_xive.c
/openbmc/qemu/hw/isa/Kconfig
/openbmc/qemu/hw/isa/i82378.c
/openbmc/qemu/hw/isa/isa-bus.c
/openbmc/qemu/hw/isa/lpc_ich9.c
/openbmc/qemu/hw/isa/meson.build
/openbmc/qemu/hw/isa/piix.c
/openbmc/qemu/hw/loongarch/virt.c
/openbmc/qemu/hw/mips/Kconfig
/openbmc/qemu/hw/mips/cps.c
/openbmc/qemu/hw/mips/fuloong2e.c
/openbmc/qemu/hw/mips/jazz.c
/openbmc/qemu/hw/mips/loongson3_virt.c
/openbmc/qemu/hw/mips/malta.c
/openbmc/qemu/hw/mips/mips_int.c
/openbmc/qemu/hw/mips/mipssim.c
/openbmc/qemu/hw/misc/allwinner-r40-dramc.c
/openbmc/qemu/hw/misc/bcm2835_property.c
/openbmc/qemu/hw/misc/led.c
/openbmc/qemu/hw/misc/mips_itu.c
/openbmc/qemu/hw/misc/pci-testdev.c
/openbmc/qemu/hw/net/cadence_gem.c
/openbmc/qemu/hw/net/tulip.c
/openbmc/qemu/hw/net/virtio-net.c
/openbmc/qemu/hw/nvram/xlnx-bbram.c
/openbmc/qemu/hw/nvram/xlnx-versal-efuse-ctrl.c
/openbmc/qemu/hw/nvram/xlnx-zynqmp-efuse.c
/openbmc/qemu/hw/pci-host/Kconfig
/openbmc/qemu/hw/pci-host/astro.c
/openbmc/qemu/hw/pci-host/bonito.c
/openbmc/qemu/hw/pci-host/meson.build
/openbmc/qemu/hw/pci-host/sh_pci.c
/openbmc/qemu/hw/pci-host/trace-events
/openbmc/qemu/hw/pci/pci.c
/openbmc/qemu/hw/pcmcia/pxa2xx.c
/openbmc/qemu/hw/ppc/pnv.c
/openbmc/qemu/hw/ppc/pnv_xscom.c
/openbmc/qemu/hw/ppc/ppc440_bamboo.c
/openbmc/qemu/hw/ppc/ppc440_uc.c
/openbmc/qemu/hw/ppc/spapr_vio.c
/openbmc/qemu/hw/ppc/virtex_ml507.c
/openbmc/qemu/hw/rdma/vmw/pvrdma_cmd.c
/openbmc/qemu/hw/s390x/cpu-topology.c
/openbmc/qemu/hw/s390x/css-bridge.c
/openbmc/qemu/hw/s390x/meson.build
/openbmc/qemu/hw/s390x/s390-virtio-ccw.c
/openbmc/qemu/hw/s390x/sclp.c
/openbmc/qemu/hw/s390x/sclpquiesce.c
/openbmc/qemu/hw/s390x/virtio-ccw.c
/openbmc/qemu/hw/scsi/vhost-scsi-common.c
/openbmc/qemu/hw/scsi/vhost-scsi.c
/openbmc/qemu/hw/scsi/vhost-user-scsi.c
/openbmc/qemu/hw/scsi/virtio-scsi.c
/openbmc/qemu/hw/sd/pxa2xx_mmci.c
/openbmc/qemu/hw/sd/sdhci.c
/openbmc/qemu/hw/sparc64/sun4u.c
/openbmc/qemu/hw/timer/i8254_common.c
/openbmc/qemu/hw/timer/npcm7xx_timer.c
/openbmc/qemu/hw/ufs/lu.c
/openbmc/qemu/hw/ufs/trace-events
/openbmc/qemu/hw/ufs/ufs.c
/openbmc/qemu/hw/ufs/ufs.h
/openbmc/qemu/hw/vfio/migration.c
/openbmc/qemu/hw/virtio/vhost-backend.c
/openbmc/qemu/hw/virtio/vhost-shadow-virtqueue.c
/openbmc/qemu/hw/virtio/vhost-shadow-virtqueue.h
/openbmc/qemu/hw/virtio/vhost-user-gpio.c
/openbmc/qemu/hw/virtio/vhost-user.c
/openbmc/qemu/hw/virtio/vhost.c
/openbmc/qemu/hw/virtio/virtio-mmio.c
/openbmc/qemu/hw/virtio/virtio-pci.c
/openbmc/qemu/hw/virtio/virtio-pmem.c
/openbmc/qemu/hw/virtio/virtio.c
/openbmc/qemu/include/block/ufs.h
/openbmc/qemu/include/exec/memory.h
/openbmc/qemu/include/exec/target_long.h
/openbmc/qemu/include/hw/acpi/cxl.h
/openbmc/qemu/include/hw/acpi/pcihp.h
/openbmc/qemu/include/hw/arm/allwinner-a10.h
/openbmc/qemu/include/hw/arm/allwinner-h3.h
/openbmc/qemu/include/hw/arm/allwinner-r40.h
/openbmc/qemu/include/hw/arm/aspeed_soc.h
/openbmc/qemu/include/hw/arm/bsa.h
/openbmc/qemu/include/hw/arm/exynos4210.h
/openbmc/qemu/include/hw/arm/fsl-imx25.h
/openbmc/qemu/include/hw/arm/fsl-imx31.h
/openbmc/qemu/include/hw/arm/fsl-imx6.h
/openbmc/qemu/include/hw/arm/fsl-imx6ul.h
/openbmc/qemu/include/hw/arm/fsl-imx7.h
/openbmc/qemu/include/hw/arm/pxa.h
/openbmc/qemu/include/hw/arm/raspberrypi-fw-defs.h
/openbmc/qemu/include/hw/arm/virt.h
/openbmc/qemu/include/hw/arm/xlnx-versal.h
/openbmc/qemu/include/hw/arm/xlnx-zynqmp.h
/openbmc/qemu/include/hw/audio/pcspk.h
/openbmc/qemu/include/hw/boards.h
/openbmc/qemu/include/hw/core/cpu.h
/openbmc/qemu/include/hw/core/sysemu-cpu-ops.h
/openbmc/qemu/include/hw/i386/pc.h
/openbmc/qemu/include/hw/misc/mips_itu.h
/openbmc/qemu/include/hw/nvram/xlnx-bbram.h
/openbmc/qemu/include/hw/pci-host/astro.h
/openbmc/qemu/include/hw/pci/pci.h
/openbmc/qemu/include/hw/pci/pci_ids.h
/openbmc/qemu/include/hw/ppc/pnv_xscom.h
/openbmc/qemu/include/hw/qdev-properties-system.h
/openbmc/qemu/include/hw/s390x/cpu-topology.h
/openbmc/qemu/include/hw/s390x/s390-virtio-ccw.h
/openbmc/qemu/include/hw/s390x/sclp.h
/openbmc/qemu/include/hw/southbridge/piix.h
/openbmc/qemu/include/hw/virtio/vhost-scsi-common.h
/openbmc/qemu/include/hw/virtio/vhost-user-scsi.h
/openbmc/qemu/include/hw/virtio/vhost-user.h
/openbmc/qemu/include/hw/virtio/vhost.h
/openbmc/qemu/include/hw/virtio/virtio-input.h
/openbmc/qemu/include/migration/misc.h
/openbmc/qemu/include/sysemu/kvm.h
/openbmc/qemu/include/sysemu/kvm_int.h
/openbmc/qemu/include/sysemu/memory_mapping.h
/openbmc/qemu/include/tcg/tcg-op-common.h
/openbmc/qemu/include/tcg/tcg-op.h
/openbmc/qemu/include/tcg/tcg.h
/openbmc/qemu/include/ui/input.h
/openbmc/qemu/linux-user/aarch64/Makefile.vdso
/openbmc/qemu/linux-user/aarch64/cpu_loop.c
/openbmc/qemu/linux-user/aarch64/meson.build
/openbmc/qemu/linux-user/aarch64/signal.c
/openbmc/qemu/linux-user/aarch64/target_prctl.h
/openbmc/qemu/linux-user/aarch64/vdso-be.so
/openbmc/qemu/linux-user/aarch64/vdso-le.so
/openbmc/qemu/linux-user/aarch64/vdso.S
/openbmc/qemu/linux-user/aarch64/vdso.ld
/openbmc/qemu/linux-user/arm/Makefile.vdso
/openbmc/qemu/linux-user/arm/meson.build
/openbmc/qemu/linux-user/arm/signal.c
/openbmc/qemu/linux-user/arm/vdso-asmoffset.h
/openbmc/qemu/linux-user/arm/vdso-be.so
/openbmc/qemu/linux-user/arm/vdso-le.so
/openbmc/qemu/linux-user/arm/vdso.S
/openbmc/qemu/linux-user/arm/vdso.ld
/openbmc/qemu/linux-user/elfload.c
/openbmc/qemu/linux-user/flatload.c
/openbmc/qemu/linux-user/gen-vdso-elfn.c.inc
/openbmc/qemu/linux-user/gen-vdso.c
/openbmc/qemu/linux-user/hppa/Makefile.vdso
/openbmc/qemu/linux-user/hppa/meson.build
/openbmc/qemu/linux-user/hppa/signal.c
/openbmc/qemu/linux-user/hppa/vdso-asmoffset.h
/openbmc/qemu/linux-user/hppa/vdso.S
/openbmc/qemu/linux-user/hppa/vdso.ld
/openbmc/qemu/linux-user/hppa/vdso.so
/openbmc/qemu/linux-user/i386/Makefile.vdso
/openbmc/qemu/linux-user/i386/meson.build
/openbmc/qemu/linux-user/i386/signal.c
/openbmc/qemu/linux-user/i386/vdso-asmoffset.h
/openbmc/qemu/linux-user/i386/vdso.S
/openbmc/qemu/linux-user/i386/vdso.ld
/openbmc/qemu/linux-user/i386/vdso.so
/openbmc/qemu/linux-user/linuxload.c
/openbmc/qemu/linux-user/loader.h
/openbmc/qemu/linux-user/loongarch64/Makefile.vdso
/openbmc/qemu/linux-user/loongarch64/meson.build
/openbmc/qemu/linux-user/loongarch64/signal.c
/openbmc/qemu/linux-user/loongarch64/vdso-asmoffset.h
/openbmc/qemu/linux-user/loongarch64/vdso.S
/openbmc/qemu/linux-user/loongarch64/vdso.ld
/openbmc/qemu/linux-user/loongarch64/vdso.so
/openbmc/qemu/linux-user/meson.build
/openbmc/qemu/linux-user/mmap.c
/openbmc/qemu/linux-user/ppc/Makefile.vdso
/openbmc/qemu/linux-user/ppc/meson.build
/openbmc/qemu/linux-user/ppc/signal.c
/openbmc/qemu/linux-user/ppc/vdso-32.ld
/openbmc/qemu/linux-user/ppc/vdso-32.so
/openbmc/qemu/linux-user/ppc/vdso-64.ld
/openbmc/qemu/linux-user/ppc/vdso-64.so
/openbmc/qemu/linux-user/ppc/vdso-64le.so
/openbmc/qemu/linux-user/ppc/vdso-asmoffset.h
/openbmc/qemu/linux-user/ppc/vdso.S
/openbmc/qemu/linux-user/qemu.h
/openbmc/qemu/linux-user/riscv/Makefile.vdso
/openbmc/qemu/linux-user/riscv/meson.build
/openbmc/qemu/linux-user/riscv/signal.c
/openbmc/qemu/linux-user/riscv/vdso-32.so
/openbmc/qemu/linux-user/riscv/vdso-64.so
/openbmc/qemu/linux-user/riscv/vdso-asmoffset.h
/openbmc/qemu/linux-user/riscv/vdso.S
/openbmc/qemu/linux-user/riscv/vdso.ld
/openbmc/qemu/linux-user/s390x/Makefile.vdso
/openbmc/qemu/linux-user/s390x/meson.build
/openbmc/qemu/linux-user/s390x/signal.c
/openbmc/qemu/linux-user/s390x/vdso-asmoffset.h
/openbmc/qemu/linux-user/s390x/vdso.S
/openbmc/qemu/linux-user/s390x/vdso.ld
/openbmc/qemu/linux-user/s390x/vdso.so
/openbmc/qemu/linux-user/signal.c
/openbmc/qemu/linux-user/sparc/target_syscall.h
/openbmc/qemu/linux-user/syscall.c
/openbmc/qemu/linux-user/x86_64/Makefile.vdso
/openbmc/qemu/linux-user/x86_64/meson.build
/openbmc/qemu/linux-user/x86_64/vdso.S
/openbmc/qemu/linux-user/x86_64/vdso.ld
/openbmc/qemu/linux-user/x86_64/vdso.so
/openbmc/qemu/meson.build
/openbmc/qemu/migration/migration.c
/openbmc/qemu/migration/multifd.c
/openbmc/qemu/migration/ram.c
/openbmc/qemu/net/vhost-vdpa.c
/openbmc/qemu/pc-bios/hppa-firmware.img
/openbmc/qemu/qapi/compat.json
/openbmc/qemu/qapi/machine-common.json
/openbmc/qemu/qapi/machine-target.json
/openbmc/qemu/qapi/machine.json
/openbmc/qemu/qapi/meson.build
/openbmc/qemu/qapi/qapi-schema.json
/openbmc/qemu/qemu-img-cmds.hx
/openbmc/qemu/qemu-img.c
/openbmc/qemu/qemu-options.hx
/openbmc/qemu/roms/seabios-hppa
/openbmc/qemu/scripts/qapi/gen.py
/openbmc/qemu/scripts/qapi/parser.py
/openbmc/qemu/scripts/qapi/schema.py
/openbmc/qemu/subprojects/libvhost-user/libvhost-user.h
/openbmc/qemu/system/memory.c
/openbmc/qemu/system/memory_mapping.c
/openbmc/qemu/system/qtest.c
/openbmc/qemu/system/vl.c
/openbmc/qemu/target/arm/arch_dump.c
/openbmc/qemu/target/arm/arm-powerctl.c
/openbmc/qemu/target/arm/common-semi-target.h
/openbmc/qemu/target/arm/cpu-features.h
/openbmc/qemu/target/arm/cpu-qom.h
/openbmc/qemu/target/arm/cpu.c
/openbmc/qemu/target/arm/cpu.h
/openbmc/qemu/target/arm/cpu64.c
/openbmc/qemu/target/arm/debug_helper.c
/openbmc/qemu/target/arm/gdbstub.c
/openbmc/qemu/target/arm/helper.c
/openbmc/qemu/target/arm/internals.h
/openbmc/qemu/target/arm/kvm.c
/openbmc/qemu/target/arm/kvm64.c
/openbmc/qemu/target/arm/machine.c
/openbmc/qemu/target/arm/ptw.c
/openbmc/qemu/target/arm/tcg/cpu32.c
/openbmc/qemu/target/arm/tcg/cpu64.c
/openbmc/qemu/target/arm/tcg/hflags.c
/openbmc/qemu/target/arm/tcg/m_helper.c
/openbmc/qemu/target/arm/tcg/op_helper.c
/openbmc/qemu/target/arm/tcg/pauth_helper.c
/openbmc/qemu/target/arm/tcg/tlb_helper.c
/openbmc/qemu/target/arm/tcg/translate-a64.c
/openbmc/qemu/target/arm/tcg/translate.c
/openbmc/qemu/target/arm/tcg/translate.h
/openbmc/qemu/target/arm/vfp_helper.c
/openbmc/qemu/target/hexagon/imported/alu.idef
/openbmc/qemu/target/hexagon/macros.h
/openbmc/qemu/target/hexagon/mmvec/macros.h
/openbmc/qemu/target/hexagon/op_helper.c
/openbmc/qemu/target/hexagon/op_helper.h
/openbmc/qemu/target/hexagon/translate.c
/openbmc/qemu/target/i386/arch_memory_mapping.c
/openbmc/qemu/target/i386/cpu.c
/openbmc/qemu/target/i386/cpu.h
/openbmc/qemu/target/i386/kvm/kvm.c
/openbmc/qemu/target/i386/kvm/kvm_i386.h
/openbmc/qemu/target/i386/ops_sse.h
/openbmc/qemu/target/i386/tcg/decode-new.c.inc
/openbmc/qemu/target/i386/tcg/decode-new.h
/openbmc/qemu/target/i386/tcg/emit.c.inc
/openbmc/qemu/target/i386/tcg/ops_sse_header.h.inc
/openbmc/qemu/target/i386/tcg/translate.c
/openbmc/qemu/target/m68k/translate.c
/openbmc/qemu/target/mips/cpu.h
/openbmc/qemu/target/mips/sysemu/cp0_timer.c
/openbmc/qemu/target/mips/tcg/sysemu/cp0_helper.c
/openbmc/qemu/target/mips/tcg/sysemu/tlb_helper.c
/openbmc/qemu/target/riscv/kvm/kvm-cpu.c
/openbmc/qemu/target/rx/translate.c
/openbmc/qemu/target/s390x/cpu-sysemu.c
/openbmc/qemu/target/s390x/cpu.c
/openbmc/qemu/target/s390x/cpu.h
/openbmc/qemu/target/s390x/cpu_models.c
/openbmc/qemu/target/s390x/kvm/kvm.c
/openbmc/qemu/target/s390x/kvm/kvm_s390x.h
/openbmc/qemu/target/s390x/kvm/meson.build
/openbmc/qemu/target/s390x/kvm/stsi-topology.c
/openbmc/qemu/target/sparc/cpu-feature.h.inc
/openbmc/qemu/target/sparc/cpu.c
/openbmc/qemu/target/sparc/cpu.h
/openbmc/qemu/target/sparc/fop_helper.c
/openbmc/qemu/target/sparc/helper.c
/openbmc/qemu/target/sparc/helper.h
/openbmc/qemu/target/sparc/insns.decode
/openbmc/qemu/target/sparc/ldst_helper.c
/openbmc/qemu/target/sparc/meson.build
/openbmc/qemu/target/sparc/translate.c
/openbmc/qemu/target/sparc/vis_helper.c
/openbmc/qemu/target/tricore/translate.c
/openbmc/qemu/target/xtensa/translate.c
/openbmc/qemu/tcg/aarch64/tcg-target.c.inc
/openbmc/qemu/tcg/arm/tcg-target.c.inc
/openbmc/qemu/tcg/i386/tcg-target.c.inc
/openbmc/qemu/tcg/loongarch64/tcg-target.c.inc
/openbmc/qemu/tcg/mips/tcg-target.c.inc
/openbmc/qemu/tcg/optimize.c
/openbmc/qemu/tcg/ppc/tcg-target.c.inc
/openbmc/qemu/tcg/riscv/tcg-target.c.inc
/openbmc/qemu/tcg/s390x/tcg-target.c.inc
/openbmc/qemu/tcg/tcg-op-ldst.c
/openbmc/qemu/tcg/tcg-op.c
/openbmc/qemu/tcg/tcg.c
/openbmc/qemu/tests/avocado/s390_topology.py
/openbmc/qemu/tests/data/acpi/q35/DSDT.cxl
/openbmc/qemu/tests/qemu-iotests/024
/openbmc/qemu/tests/qemu-iotests/024.out
/openbmc/qemu/tests/qemu-iotests/271
/openbmc/qemu/tests/qemu-iotests/271.out
/openbmc/qemu/tests/qemu-iotests/314
/openbmc/qemu/tests/qemu-iotests/314.out
/openbmc/qemu/tests/qtest/cdrom-test.c
/openbmc/qemu/tests/qtest/ipmi-bt-test.c
/openbmc/qemu/tests/qtest/libqtest.c
/openbmc/qemu/tests/qtest/libqtest.h
/openbmc/qemu/tests/qtest/migration-helpers.c
/openbmc/qemu/tests/qtest/migration-helpers.h
/openbmc/qemu/tests/qtest/migration-test.c
/openbmc/qemu/tests/qtest/npcm7xx_adc-test.c
/openbmc/qemu/tests/qtest/rtl8139-test.c
/openbmc/qemu/tests/qtest/ufs-test.c
/openbmc/qemu/tests/qtest/virtio-scsi-test.c
/openbmc/qemu/tests/tcg/i386/test-avx.c
/openbmc/qemu/tests/tcg/i386/test-avx.py
/openbmc/qemu/tests/unit/test-aio.c
/openbmc/qemu/tests/unit/test-coroutine.c
/openbmc/qemu/tests/unit/test-throttle.c
/openbmc/qemu/tests/vm/freebsd
/openbmc/qemu/ui/input-legacy.c
/openbmc/qemu/ui/input.c
/openbmc/qemu/ui/spice-core.c
/openbmc/qemu/ui/vdagent.c
/openbmc/qemu/util/cutils.c
c8a7fc5118-Oct-2023 Steve Sistare <steven.sistare@oracle.com>

migration: simplify blockers

Modify migrate_add_blocker and migrate_del_blocker to take an Error **
reason. This allows migration to own the Error object, so that if
an error occurs in migrate_add_

migration: simplify blockers

Modify migrate_add_blocker and migrate_del_blocker to take an Error **
reason. This allows migration to own the Error object, so that if
an error occurs in migrate_add_blocker, migration code can free the Error
and clear the client handle, simplifying client code. It also simplifies
the migrate_del_blocker call site.

In addition, this is a pre-requisite for a proposed future patch that would
add a mode argument to migration requests to support live update, and
maintain a list of blockers for each mode. A blocker may apply to a single
mode or to multiple modes, and passing Error** will allow one Error object
to be registered for multiple modes.

No functional change.

Signed-off-by: Steve Sistare <steven.sistare@oracle.com>
Tested-by: Michael Galaxy <mgalaxy@akamai.com>
Reviewed-by: Michael Galaxy <mgalaxy@akamai.com>
Reviewed-by: Peter Xu <peterx@redhat.com>
Reviewed-by: Juan Quintela <quintela@redhat.com>
Signed-off-by: Juan Quintela <quintela@redhat.com>
Message-ID: <1697634216-84215-1-git-send-email-steven.sistare@oracle.com>

show more ...


/openbmc/qemu/.gitlab-ci.d/container-cross.yml
/openbmc/qemu/MAINTAINERS
/openbmc/qemu/accel/kvm/kvm-all.c
/openbmc/qemu/accel/stubs/kvm-stub.c
/openbmc/qemu/backends/tpm/tpm_emulator.c
parallels.c
qcow.c
vdi.c
vhdx.c
vmdk.c
vpc.c
vvfat.c
/openbmc/qemu/configs/meson/windows.txt
/openbmc/qemu/configure
/openbmc/qemu/contrib/vhost-user-gpu/vhost-user-gpu.c
/openbmc/qemu/contrib/vhost-user-gpu/vugpu.h
/openbmc/qemu/disas/riscv.c
/openbmc/qemu/docs/about/deprecated.rst
/openbmc/qemu/docs/devel/testing.rst
/openbmc/qemu/docs/sphinx/hxtool.py
/openbmc/qemu/docs/system/device-emulation.rst
/openbmc/qemu/docs/system/devices/virtio-gpu.rst
/openbmc/qemu/docs/system/i386/amd-memory-encryption.rst
/openbmc/qemu/dump/dump.c
/openbmc/qemu/gdbstub/gdbstub.c
/openbmc/qemu/gdbstub/system.c
/openbmc/qemu/gdbstub/user.c
/openbmc/qemu/hw/9pfs/9p.c
/openbmc/qemu/hw/arm/meson.build
/openbmc/qemu/hw/char/riscv_htif.c
/openbmc/qemu/hw/core/machine.c
/openbmc/qemu/hw/display/meson.build
/openbmc/qemu/hw/display/ramfb-standalone.c
/openbmc/qemu/hw/display/ramfb.c
/openbmc/qemu/hw/display/virtio-gpu-base.c
/openbmc/qemu/hw/display/virtio-gpu-pci-rutabaga.c
/openbmc/qemu/hw/display/virtio-gpu-pci.c
/openbmc/qemu/hw/display/virtio-gpu-rutabaga.c
/openbmc/qemu/hw/display/virtio-gpu.c
/openbmc/qemu/hw/display/virtio-vga-rutabaga.c
/openbmc/qemu/hw/display/virtio-vga.c
/openbmc/qemu/hw/i386/meson.build
/openbmc/qemu/hw/intc/arm_gic_kvm.c
/openbmc/qemu/hw/intc/arm_gicv3_its_kvm.c
/openbmc/qemu/hw/intc/arm_gicv3_kvm.c
/openbmc/qemu/hw/intc/riscv_aplic.c
/openbmc/qemu/hw/loongarch/Kconfig
/openbmc/qemu/hw/loongarch/virt.c
/openbmc/qemu/hw/mem/memory-device.c
/openbmc/qemu/hw/misc/Kconfig
/openbmc/qemu/hw/misc/i2c-echo.c
/openbmc/qemu/hw/misc/ivshmem.c
/openbmc/qemu/hw/misc/meson.build
/openbmc/qemu/hw/misc/sifive_test.c
/openbmc/qemu/hw/ppc/pef.c
/openbmc/qemu/hw/ppc/spapr.c
/openbmc/qemu/hw/ppc/spapr_events.c
/openbmc/qemu/hw/ppc/spapr_rtas.c
/openbmc/qemu/hw/rdma/vmw/pvrdma_main.c
/openbmc/qemu/hw/remote/meson.build
/openbmc/qemu/hw/remote/proxy.c
/openbmc/qemu/hw/remote/vfio-user-obj-stub.c
/openbmc/qemu/hw/riscv/virt.c
/openbmc/qemu/hw/s390x/s390-virtio-ccw.c
/openbmc/qemu/hw/scsi/vhost-scsi.c
/openbmc/qemu/hw/ufs/lu.c
/openbmc/qemu/hw/ufs/ufs.c
/openbmc/qemu/hw/vfio/ap.c
/openbmc/qemu/hw/vfio/ccw.c
/openbmc/qemu/hw/vfio/common.c
/openbmc/qemu/hw/vfio/container.c
/openbmc/qemu/hw/vfio/display.c
/openbmc/qemu/hw/vfio/helpers.c
/openbmc/qemu/hw/vfio/meson.build
/openbmc/qemu/hw/vfio/migration.c
/openbmc/qemu/hw/vfio/pci.c
/openbmc/qemu/hw/vfio/pci.h
/openbmc/qemu/hw/vfio/platform.c
/openbmc/qemu/hw/vfio/trace-events
/openbmc/qemu/hw/virtio/vhost-stub.c
/openbmc/qemu/hw/virtio/vhost-user.c
/openbmc/qemu/hw/virtio/vhost-vdpa.c
/openbmc/qemu/hw/virtio/vhost.c
/openbmc/qemu/hw/virtio/virtio-mem-pci.c
/openbmc/qemu/hw/virtio/virtio-mem.c
/openbmc/qemu/hw/virtio/virtio-pci.c
/openbmc/qemu/hw/xen/meson.build
/openbmc/qemu/include/block/ufs.h
/openbmc/qemu/include/exec/cpu-common.h
/openbmc/qemu/include/exec/memory.h
/openbmc/qemu/include/gdbstub/syscalls.h
/openbmc/qemu/include/hw/boards.h
/openbmc/qemu/include/hw/display/ramfb.h
/openbmc/qemu/include/hw/loongarch/virt.h
/openbmc/qemu/include/hw/mem/memory-device.h
/openbmc/qemu/include/hw/s390x/vfio-ccw.h
/openbmc/qemu/include/hw/vfio/vfio-common.h
/openbmc/qemu/include/hw/virtio/vhost-backend.h
/openbmc/qemu/include/hw/virtio/vhost.h
/openbmc/qemu/include/hw/virtio/virtio-gpu-bswap.h
/openbmc/qemu/include/hw/virtio/virtio-gpu.h
/openbmc/qemu/include/hw/virtio/virtio-mem.h
/openbmc/qemu/include/hw/virtio/virtio-pci.h
/openbmc/qemu/include/migration/blocker.h
/openbmc/qemu/include/migration/register.h
/openbmc/qemu/include/qemu/compiler.h
/openbmc/qemu/include/sysemu/cpus.h
/openbmc/qemu/include/sysemu/kvm.h
/openbmc/qemu/include/sysemu/kvm_int.h
/openbmc/qemu/include/sysemu/runstate.h
/openbmc/qemu/include/sysemu/sysemu.h
/openbmc/qemu/linux-headers/linux/iommufd.h
/openbmc/qemu/linux-user/elfload.c
/openbmc/qemu/linux-user/mips/cpu_loop.c
/openbmc/qemu/linux-user/mmap.c
/openbmc/qemu/linux-user/sh4/signal.c
/openbmc/qemu/linux-user/signal.c
/openbmc/qemu/meson.build
/openbmc/qemu/meson_options.txt
/openbmc/qemu/migration/block-dirty-bitmap.c
/openbmc/qemu/migration/block.c
/openbmc/qemu/migration/migration-hmp-cmds.c
/openbmc/qemu/migration/migration-stats.c
/openbmc/qemu/migration/migration.c
/openbmc/qemu/migration/migration.h
/openbmc/qemu/migration/multifd.c
/openbmc/qemu/migration/options.c
/openbmc/qemu/migration/options.h
/openbmc/qemu/migration/qemu-file.c
/openbmc/qemu/migration/qemu-file.h
/openbmc/qemu/migration/ram-compress.c
/openbmc/qemu/migration/ram-compress.h
/openbmc/qemu/migration/ram.c
/openbmc/qemu/migration/rdma.c
/openbmc/qemu/migration/rdma.h
/openbmc/qemu/migration/savevm.c
/openbmc/qemu/migration/trace-events
/openbmc/qemu/python/qemu/machine/console_socket.py
/openbmc/qemu/python/qemu/machine/machine.py
/openbmc/qemu/python/qemu/machine/qtest.py
/openbmc/qemu/python/qemu/qmp/legacy.py
/openbmc/qemu/python/qemu/qmp/protocol.py
/openbmc/qemu/python/qemu/qmp/qmp_shell.py
/openbmc/qemu/python/qemu/utils/qemu_ga_client.py
/openbmc/qemu/python/qemu/utils/qom.py
/openbmc/qemu/python/qemu/utils/qom_common.py
/openbmc/qemu/python/qemu/utils/qom_fuse.py
/openbmc/qemu/python/setup.cfg
/openbmc/qemu/qapi/migration.json
/openbmc/qemu/qga/commands-win32.c
/openbmc/qemu/qga/commands.c
/openbmc/qemu/qga/meson.build
/openbmc/qemu/qga/qapi-schema.json
/openbmc/qemu/roms/Makefile
/openbmc/qemu/scripts/analyze-migration.py
/openbmc/qemu/scripts/cpu-x86-uarch-abi.py
/openbmc/qemu/scripts/device-crash-test
/openbmc/qemu/scripts/feature_to_c.py
/openbmc/qemu/scripts/get_maintainer.pl
/openbmc/qemu/scripts/meson-buildoptions.py
/openbmc/qemu/scripts/meson-buildoptions.sh
/openbmc/qemu/scripts/python_qmp_updater.py
/openbmc/qemu/scripts/render_block_graph.py
/openbmc/qemu/scripts/tracetool/__init__.py
/openbmc/qemu/scripts/tracetool/format/log_stap.py
/openbmc/qemu/scripts/update-linux-headers.sh
/openbmc/qemu/scripts/xml-preprocess.py
/openbmc/qemu/stubs/memory_device.c
/openbmc/qemu/stubs/meson.build
/openbmc/qemu/stubs/migr-blocker.c
/openbmc/qemu/stubs/ramfb.c
/openbmc/qemu/subprojects/libvduse/libvduse.c
/openbmc/qemu/subprojects/libvhost-user/libvhost-user.c
/openbmc/qemu/system/main.c
/openbmc/qemu/system/memory.c
/openbmc/qemu/system/physmem.c
/openbmc/qemu/system/qdev-monitor.c
/openbmc/qemu/system/runstate.c
/openbmc/qemu/system/vl.c
/openbmc/qemu/target/hexagon/hex_common.py
/openbmc/qemu/target/i386/cpu.c
/openbmc/qemu/target/i386/kvm/kvm.c
/openbmc/qemu/target/i386/nvmm/nvmm-all.c
/openbmc/qemu/target/i386/sev.c
/openbmc/qemu/target/i386/svm.h
/openbmc/qemu/target/i386/tcg/seg_helper.c
/openbmc/qemu/target/i386/tcg/translate.c
/openbmc/qemu/target/i386/whpx/whpx-all.c
/openbmc/qemu/target/loongarch/cpu.h
/openbmc/qemu/target/loongarch/disas.c
/openbmc/qemu/target/loongarch/insn_trans/trans_memory.c.inc
/openbmc/qemu/target/loongarch/insns.decode
/openbmc/qemu/target/riscv/cpu-qom.h
/openbmc/qemu/target/riscv/cpu.c
/openbmc/qemu/target/riscv/cpu.h
/openbmc/qemu/target/riscv/cpu_helper.c
/openbmc/qemu/target/riscv/csr.c
/openbmc/qemu/target/riscv/kvm/kvm-cpu.c
/openbmc/qemu/target/riscv/kvm/kvm_riscv.h
/openbmc/qemu/target/riscv/kvm/meson.build
/openbmc/qemu/target/riscv/meson.build
/openbmc/qemu/target/riscv/tcg/meson.build
/openbmc/qemu/target/riscv/tcg/tcg-cpu.c
/openbmc/qemu/target/riscv/tcg/tcg-cpu.h
/openbmc/qemu/target/riscv/vector_helper.c
/openbmc/qemu/tests/avocado/acpi-bits.py
/openbmc/qemu/tests/avocado/avocado_qemu/__init__.py
/openbmc/qemu/tests/avocado/cpu_queries.py
/openbmc/qemu/tests/avocado/hotplug_cpu.py
/openbmc/qemu/tests/avocado/info_usernet.py
/openbmc/qemu/tests/avocado/machine_arm_integratorcp.py
/openbmc/qemu/tests/avocado/machine_aspeed.py
/openbmc/qemu/tests/avocado/machine_m68k_nextcube.py
/openbmc/qemu/tests/avocado/machine_mips_malta.py
/openbmc/qemu/tests/avocado/machine_s390_ccw_virtio.py
/openbmc/qemu/tests/avocado/migration.py
/openbmc/qemu/tests/avocado/pc_cpu_hotplug_props.py
/openbmc/qemu/tests/avocado/tuxrun_baselines.py
/openbmc/qemu/tests/avocado/version.py
/openbmc/qemu/tests/avocado/virtio_check_params.py
/openbmc/qemu/tests/avocado/virtio_version.py
/openbmc/qemu/tests/avocado/vnc.py
/openbmc/qemu/tests/avocado/x86_cpu_model_versions.py
/openbmc/qemu/tests/docker/docker.py
/openbmc/qemu/tests/docker/dockerfiles/python.docker
/openbmc/qemu/tests/migration/guestperf/engine.py
/openbmc/qemu/tests/qemu-iotests/030
/openbmc/qemu/tests/qemu-iotests/040
/openbmc/qemu/tests/qemu-iotests/041
/openbmc/qemu/tests/qemu-iotests/045
/openbmc/qemu/tests/qemu-iotests/055
/openbmc/qemu/tests/qemu-iotests/056
/openbmc/qemu/tests/qemu-iotests/093
/openbmc/qemu/tests/qemu-iotests/118
/openbmc/qemu/tests/qemu-iotests/124
/openbmc/qemu/tests/qemu-iotests/129
/openbmc/qemu/tests/qemu-iotests/132
/openbmc/qemu/tests/qemu-iotests/139
/openbmc/qemu/tests/qemu-iotests/147
/openbmc/qemu/tests/qemu-iotests/151
/openbmc/qemu/tests/qemu-iotests/152
/openbmc/qemu/tests/qemu-iotests/155
/openbmc/qemu/tests/qemu-iotests/165
/openbmc/qemu/tests/qemu-iotests/196
/openbmc/qemu/tests/qemu-iotests/205
/openbmc/qemu/tests/qemu-iotests/218
/openbmc/qemu/tests/qemu-iotests/245
/openbmc/qemu/tests/qemu-iotests/256
/openbmc/qemu/tests/qemu-iotests/257
/openbmc/qemu/tests/qemu-iotests/264
/openbmc/qemu/tests/qemu-iotests/281
/openbmc/qemu/tests/qemu-iotests/295
/openbmc/qemu/tests/qemu-iotests/296
/openbmc/qemu/tests/qemu-iotests/298
/openbmc/qemu/tests/qemu-iotests/300
/openbmc/qemu/tests/qemu-iotests/iotests.py
/openbmc/qemu/tests/qemu-iotests/linters.py
/openbmc/qemu/tests/qemu-iotests/testenv.py
/openbmc/qemu/tests/qemu-iotests/tests/backing-file-invalidation
/openbmc/qemu/tests/qemu-iotests/tests/copy-before-write
/openbmc/qemu/tests/qemu-iotests/tests/export-incoming-iothread
/openbmc/qemu/tests/qemu-iotests/tests/graph-changes-while-io
/openbmc/qemu/tests/qemu-iotests/tests/image-fleecing
/openbmc/qemu/tests/qemu-iotests/tests/migrate-bitmaps-postcopy-test
/openbmc/qemu/tests/qemu-iotests/tests/migrate-bitmaps-test
/openbmc/qemu/tests/qemu-iotests/tests/migrate-during-backup
/openbmc/qemu/tests/qemu-iotests/tests/migration-permissions
/openbmc/qemu/tests/qemu-iotests/tests/mirror-ready-cancel-error
/openbmc/qemu/tests/qemu-iotests/tests/mirror-top-perms
/openbmc/qemu/tests/qemu-iotests/tests/nbd-multiconn
/openbmc/qemu/tests/qemu-iotests/tests/reopen-file
/openbmc/qemu/tests/qemu-iotests/tests/stream-error-on-reset
/openbmc/qemu/tests/qemu-iotests/tests/stream-under-throttle
/openbmc/qemu/tests/qtest/meson.build
/openbmc/qemu/tests/qtest/migration-test.c
/openbmc/qemu/tests/qtest/npcm7xx_timer-test.c
/openbmc/qemu/tests/qtest/ufs-test.c
/openbmc/qemu/tests/tcg/aarch64/Makefile.target
/openbmc/qemu/tests/tcg/loongarch64/system/boot.S
/openbmc/qemu/tests/tcg/multiarch/Makefile.target
/openbmc/qemu/tests/tcg/multiarch/system/Makefile.softmmu-target
/openbmc/qemu/tests/tcg/s390x/Makefile.target
/openbmc/qemu/tests/unit/test-coroutine.c
/openbmc/qemu/tests/vm/basevm.py
/openbmc/qemu/tests/vm/netbsd
/openbmc/qemu/ui/shader/meson.build
/openbmc/qemu/ui/vdagent.c
/openbmc/qemu/util/cutils.c
/openbmc/qemu/util/qemu-coroutine.c
e6e964b829-Sep-2023 Kevin Wolf <kwolf@redhat.com>

block: Add assertion for bdrv_graph_wrlock()

bdrv_graph_wrlock() can't run in a coroutine (because it polls) and
requires holding the BQL. We already have GLOBAL_STATE_CODE() to assert
the latter. A

block: Add assertion for bdrv_graph_wrlock()

bdrv_graph_wrlock() can't run in a coroutine (because it polls) and
requires holding the BQL. We already have GLOBAL_STATE_CODE() to assert
the latter. Assert the former as well and add a no_coroutine_fn marker.

Signed-off-by: Kevin Wolf <kwolf@redhat.com>
Message-ID: <20230929145157.45443-23-kwolf@redhat.com>
Reviewed-by: Stefan Hajnoczi <stefanha@redhat.com>
Signed-off-by: Kevin Wolf <kwolf@redhat.com>

show more ...

680e0cc429-Sep-2023 Kevin Wolf <kwolf@redhat.com>

block: Protect bs->children with graph_lock

Almost all functions that access the child links already take the graph
lock now. Add locking to the remaining users and finally annotate the
struct field

block: Protect bs->children with graph_lock

Almost all functions that access the child links already take the graph
lock now. Add locking to the remaining users and finally annotate the
struct field itself as protected by the graph lock.

Signed-off-by: Kevin Wolf <kwolf@redhat.com>
Message-ID: <20230929145157.45443-22-kwolf@redhat.com>
Reviewed-by: Stefan Hajnoczi <stefanha@redhat.com>
Signed-off-by: Kevin Wolf <kwolf@redhat.com>

show more ...

3574499a29-Sep-2023 Kevin Wolf <kwolf@redhat.com>

block: Mark bdrv_get_specific_info() and callers GRAPH_RDLOCK

This adds GRAPH_RDLOCK annotations to declare that callers of
bdrv_get_specific_info() need to hold a reader lock for the graph.
This re

block: Mark bdrv_get_specific_info() and callers GRAPH_RDLOCK

This adds GRAPH_RDLOCK annotations to declare that callers of
bdrv_get_specific_info() need to hold a reader lock for the graph.
This removes an assume_graph_lock() call in vmdk's implementation.

Signed-off-by: Kevin Wolf <kwolf@redhat.com>
Message-ID: <20230929145157.45443-20-kwolf@redhat.com>
Reviewed-by: Stefan Hajnoczi <stefanha@redhat.com>
Signed-off-by: Kevin Wolf <kwolf@redhat.com>

show more ...

018f9dea29-Sep-2023 Kevin Wolf <kwolf@redhat.com>

block: Mark bdrv_apply_auto_read_only() and callers GRAPH_RDLOCK

This adds GRAPH_RDLOCK annotations to declare that callers of
bdrv_apply_auto_read_only() need to hold a reader lock for the graph
be

block: Mark bdrv_apply_auto_read_only() and callers GRAPH_RDLOCK

This adds GRAPH_RDLOCK annotations to declare that callers of
bdrv_apply_auto_read_only() need to hold a reader lock for the graph
because it calls bdrv_can_set_read_only(), which indirectly accesses the
parents list of a node.

Signed-off-by: Kevin Wolf <kwolf@redhat.com>
Message-ID: <20230929145157.45443-19-kwolf@redhat.com>
Reviewed-by: Stefan Hajnoczi <stefanha@redhat.com>
Signed-off-by: Kevin Wolf <kwolf@redhat.com>

show more ...

277f200729-Sep-2023 Kevin Wolf <kwolf@redhat.com>

block: Mark bdrv_op_is_blocked() and callers GRAPH_RDLOCK

This adds GRAPH_RDLOCK annotations to declare that callers of
bdrv_op_is_blocked() need to hold a reader lock for the graph
because it calls

block: Mark bdrv_op_is_blocked() and callers GRAPH_RDLOCK

This adds GRAPH_RDLOCK annotations to declare that callers of
bdrv_op_is_blocked() need to hold a reader lock for the graph
because it calls bdrv_get_device_or_node_name(), which accesses the
parents list of a node.

Signed-off-by: Kevin Wolf <kwolf@redhat.com>
Message-ID: <20230929145157.45443-18-kwolf@redhat.com>
Reviewed-by: Stefan Hajnoczi <stefanha@redhat.com>
Signed-off-by: Kevin Wolf <kwolf@redhat.com>

show more ...

5155853e29-Sep-2023 Kevin Wolf <kwolf@redhat.com>

qcow2: Mark check_constraints_on_bitmap() GRAPH_RDLOCK

It still has an assume_graph_lock() call, but all of its callers are now
properly annotated to hold the graph lock. Update the function to be
G

qcow2: Mark check_constraints_on_bitmap() GRAPH_RDLOCK

It still has an assume_graph_lock() call, but all of its callers are now
properly annotated to hold the graph lock. Update the function to be
GRAPH_RDLOCK as well and remove the assume_graph_lock().

Signed-off-by: Kevin Wolf <kwolf@redhat.com>
Message-ID: <20230929145157.45443-17-kwolf@redhat.com>
Reviewed-by: Stefan Hajnoczi <stefanha@redhat.com>
Signed-off-by: Kevin Wolf <kwolf@redhat.com>

show more ...

de4fed6f29-Sep-2023 Kevin Wolf <kwolf@redhat.com>

qcow2: Mark qcow2_inactivate() and callers GRAPH_RDLOCK

This adds GRAPH_RDLOCK annotations to declare that callers of
qcow2_inactivate() need to hold a reader lock for the graph because it
calls bdr

qcow2: Mark qcow2_inactivate() and callers GRAPH_RDLOCK

This adds GRAPH_RDLOCK annotations to declare that callers of
qcow2_inactivate() need to hold a reader lock for the graph because it
calls bdrv_get_device_or_node_name(), which accesses the parents list of
a node.

qcow2_do_close() is a bit strange because it is called from different
contexts. If close_data_file = true, we know that we were called from
non-coroutine main loop context (more specifically, we're coming from
qcow2_close()) and can safely drop the reader lock temporarily with
bdrv_graph_rdunlock_main_loop() and acquire the writer lock.

Signed-off-by: Kevin Wolf <kwolf@redhat.com>
Message-ID: <20230929145157.45443-16-kwolf@redhat.com>
Reviewed-by: Stefan Hajnoczi <stefanha@redhat.com>
Signed-off-by: Kevin Wolf <kwolf@redhat.com>

show more ...

0bb79c9729-Sep-2023 Kevin Wolf <kwolf@redhat.com>

qcow2: Mark qcow2_signal_corruption() and callers GRAPH_RDLOCK

This adds GRAPH_RDLOCK annotations to declare that callers of
qcow2_signal_corruption() need to hold a reader lock for the graph
becaus

qcow2: Mark qcow2_signal_corruption() and callers GRAPH_RDLOCK

This adds GRAPH_RDLOCK annotations to declare that callers of
qcow2_signal_corruption() need to hold a reader lock for the graph
because it calls bdrv_get_node_name(), which accesses the parents list
of a node.

For some places, we know that they will hold the lock, but we don't have
the GRAPH_RDLOCK annotations yet. In this case, add assume_graph_lock()
with a FIXME comment. These places will be removed once everything is
properly annotated.

Signed-off-by: Kevin Wolf <kwolf@redhat.com>
Message-ID: <20230929145157.45443-15-kwolf@redhat.com>
Reviewed-by: Stefan Hajnoczi <stefanha@redhat.com>
Signed-off-by: Kevin Wolf <kwolf@redhat.com>

show more ...

bd131d6729-Sep-2023 Kevin Wolf <kwolf@redhat.com>

block: Mark bdrv_amend_options() and callers GRAPH_RDLOCK

This adds GRAPH_RDLOCK annotations to declare that callers of
bdrv_amend_options() need to hold a reader lock for the graph. This
removes an

block: Mark bdrv_amend_options() and callers GRAPH_RDLOCK

This adds GRAPH_RDLOCK annotations to declare that callers of
bdrv_amend_options() need to hold a reader lock for the graph. This
removes an assume_graph_lock() call in crypto's implementation.

Signed-off-by: Kevin Wolf <kwolf@redhat.com>
Message-ID: <20230929145157.45443-14-kwolf@redhat.com>
Reviewed-by: Stefan Hajnoczi <stefanha@redhat.com>
Signed-off-by: Kevin Wolf <kwolf@redhat.com>

show more ...

4026f1c429-Sep-2023 Kevin Wolf <kwolf@redhat.com>

block: Mark bdrv_get_parent_name() and callers GRAPH_RDLOCK

This adds GRAPH_RDLOCK annotations to declare that callers of
bdrv_get_parent_name() need to hold a reader lock for the graph
because it a

block: Mark bdrv_get_parent_name() and callers GRAPH_RDLOCK

This adds GRAPH_RDLOCK annotations to declare that callers of
bdrv_get_parent_name() need to hold a reader lock for the graph
because it accesses the parents list of a node.

For some places, we know that they will hold the lock, but we don't have
the GRAPH_RDLOCK annotations yet. In this case, add assume_graph_lock()
with a FIXME comment. These places will be removed once everything is
properly annotated.

Signed-off-by: Kevin Wolf <kwolf@redhat.com>
Message-ID: <20230929145157.45443-13-kwolf@redhat.com>
Reviewed-by: Stefan Hajnoczi <stefanha@redhat.com>
Signed-off-by: Kevin Wolf <kwolf@redhat.com>

show more ...

c0fc512329-Sep-2023 Kevin Wolf <kwolf@redhat.com>

block: Mark bdrv_primary_child() and callers GRAPH_RDLOCK

This adds GRAPH_RDLOCK annotations to declare that callers of
bdrv_primary_child() need to hold a reader lock for the graph
because it acces

block: Mark bdrv_primary_child() and callers GRAPH_RDLOCK

This adds GRAPH_RDLOCK annotations to declare that callers of
bdrv_primary_child() need to hold a reader lock for the graph
because it accesses the children list of a node.

Signed-off-by: Kevin Wolf <kwolf@redhat.com>
Message-ID: <20230929145157.45443-12-kwolf@redhat.com>
Reviewed-by: Stefan Hajnoczi <stefanha@redhat.com>
Signed-off-by: Kevin Wolf <kwolf@redhat.com>

show more ...

b7cfc7d529-Sep-2023 Kevin Wolf <kwolf@redhat.com>

block: Mark bdrv_refresh_filename() and callers GRAPH_RDLOCK

This adds GRAPH_RDLOCK annotations to declare that callers of
bdrv_refresh_filename() need to hold a reader lock for the graph
because it

block: Mark bdrv_refresh_filename() and callers GRAPH_RDLOCK

This adds GRAPH_RDLOCK annotations to declare that callers of
bdrv_refresh_filename() need to hold a reader lock for the graph
because it accesses the children list of a node.

Signed-off-by: Kevin Wolf <kwolf@redhat.com>
Message-ID: <20230929145157.45443-11-kwolf@redhat.com>
Reviewed-by: Stefan Hajnoczi <stefanha@redhat.com>
Signed-off-by: Kevin Wolf <kwolf@redhat.com>

show more ...

a32e781829-Sep-2023 Kevin Wolf <kwolf@redhat.com>

block: Mark bdrv_snapshot_fallback() and callers GRAPH_RDLOCK

This adds GRAPH_RDLOCK annotations to declare that callers of
bdrv_snapshot_fallback() need to hold a reader lock for the graph
because

block: Mark bdrv_snapshot_fallback() and callers GRAPH_RDLOCK

This adds GRAPH_RDLOCK annotations to declare that callers of
bdrv_snapshot_fallback() need to hold a reader lock for the graph
because it accesses the children list of a node.

Signed-off-by: Kevin Wolf <kwolf@redhat.com>
Message-ID: <20230929145157.45443-8-kwolf@redhat.com>
Reviewed-by: Stefan Hajnoczi <stefanha@redhat.com>
Signed-off-by: Kevin Wolf <kwolf@redhat.com>

show more ...

7859c45a29-Sep-2023 Kevin Wolf <kwolf@redhat.com>

block: Mark bdrv_parent_cb_resize() and callers GRAPH_RDLOCK

This adds GRAPH_RDLOCK annotations to declare that callers of
bdrv_parent_cb_resize() need to hold a reader lock for the graph.

Signed-o

block: Mark bdrv_parent_cb_resize() and callers GRAPH_RDLOCK

This adds GRAPH_RDLOCK annotations to declare that callers of
bdrv_parent_cb_resize() need to hold a reader lock for the graph.

Signed-off-by: Kevin Wolf <kwolf@redhat.com>
Message-ID: <20230929145157.45443-7-kwolf@redhat.com>
Reviewed-by: Stefan Hajnoczi <stefanha@redhat.com>
Signed-off-by: Kevin Wolf <kwolf@redhat.com>

show more ...

d05ab38029-Sep-2023 Emanuele Giuseppe Esposito <eesposit@redhat.com>

block: Mark drain related functions GRAPH_RDLOCK

Draining recursively traverses the graph, therefore we need to make sure
that also such accesses to the graph are protected by the graph rdlock.

The

block: Mark drain related functions GRAPH_RDLOCK

Draining recursively traverses the graph, therefore we need to make sure
that also such accesses to the graph are protected by the graph rdlock.

There are 3 different drain callers to consider:
1. drain in the main loop: no issue at all, rdlock is nop.
2. drain in an iothread: rdlock only works in main loop or coroutines,
so disallow it.
3. drain in a coroutine (regardless of AioContext): the drain mechanism
takes care of scheduling a BH in the bs->aio_context that will
then take care of perform the actual draining. This is wrong,
because as pointed in (2) if bs->aio_context is an iothread then
rdlock won't work. Therefore change bdrv_co_yield_to_drain to
schedule the BH in the main loop.

Caller (2) also implies that we need to modify test-bdrv-drain.c to
disallow draining in the iothreads.

For some places, we know that they will hold the lock, but we don't have
the GRAPH_RDLOCK annotations yet. In this case, add assume_graph_lock()
with a FIXME comment. These places will be removed once everything is
properly annotated.

Signed-off-by: Emanuele Giuseppe Esposito <eesposit@redhat.com>
Signed-off-by: Kevin Wolf <kwolf@redhat.com>
Message-ID: <20230929145157.45443-6-kwolf@redhat.com>
Reviewed-by: Stefan Hajnoczi <stefanha@redhat.com>
Signed-off-by: Kevin Wolf <kwolf@redhat.com>

show more ...

2b3912f129-Sep-2023 Kevin Wolf <kwolf@redhat.com>

block: Mark bdrv_first_blk() and bdrv_is_root_node() GRAPH_RDLOCK

This adds GRAPH_RDLOCK annotations to declare that callers of
bdrv_first_blk() and bdrv_is_root_node() need to hold a reader lock
fo

block: Mark bdrv_first_blk() and bdrv_is_root_node() GRAPH_RDLOCK

This adds GRAPH_RDLOCK annotations to declare that callers of
bdrv_first_blk() and bdrv_is_root_node() need to hold a reader lock
for the graph. These functions are the only functions in block-backend.c
that access the parent list of a node.

Signed-off-by: Kevin Wolf <kwolf@redhat.com>
Message-ID: <20230929145157.45443-5-kwolf@redhat.com>
Reviewed-by: Stefan Hajnoczi <stefanha@redhat.com>
Signed-off-by: Kevin Wolf <kwolf@redhat.com>

show more ...

cc32399704-Sep-2023 Paolo Bonzini <pbonzini@redhat.com>

block: convert more bdrv_is_allocated* and bdrv_block_status* calls to coroutine versions

Reviewed-by: Eric Blake <eblake@redhat.com>
Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
Message-ID: <

block: convert more bdrv_is_allocated* and bdrv_block_status* calls to coroutine versions

Reviewed-by: Eric Blake <eblake@redhat.com>
Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
Message-ID: <20230904100306.156197-5-pbonzini@redhat.com>
Reviewed-by: Kevin Wolf <kwolf@redhat.com>
Signed-off-by: Kevin Wolf <kwolf@redhat.com>

show more ...

578ffa9f04-Sep-2023 Paolo Bonzini <pbonzini@redhat.com>

block: switch to co_wrapper for bdrv_is_allocated_*

Reviewed-by: Eric Blake <eblake@redhat.com>
Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
Message-ID: <20230904100306.156197-4-pbonzini@redha

block: switch to co_wrapper for bdrv_is_allocated_*

Reviewed-by: Eric Blake <eblake@redhat.com>
Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
Message-ID: <20230904100306.156197-4-pbonzini@redhat.com>
Reviewed-by: Kevin Wolf <kwolf@redhat.com>
Signed-off-by: Kevin Wolf <kwolf@redhat.com>

show more ...

1b88457e04-Sep-2023 Paolo Bonzini <pbonzini@redhat.com>

block: complete public block status API

Include both coroutine and non-coroutine versions, the latter being
co_wrapper_mixed_bdrv_rdlock of the former.

Reviewed-by: Eric Blake <eblake@redhat.com>
S

block: complete public block status API

Include both coroutine and non-coroutine versions, the latter being
co_wrapper_mixed_bdrv_rdlock of the former.

Reviewed-by: Eric Blake <eblake@redhat.com>
Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
Message-ID: <20230904100306.156197-3-pbonzini@redhat.com>
Reviewed-by: Kevin Wolf <kwolf@redhat.com>
Signed-off-by: Kevin Wolf <kwolf@redhat.com>

show more ...

b170e92904-Sep-2023 Paolo Bonzini <pbonzini@redhat.com>

block: rename the bdrv_co_block_status static function

bdrv_block_status exists as a wrapper for bdrv_block_status_above, but
the name of the (hypothetical) coroutine version, bdrv_co_block_status,

block: rename the bdrv_co_block_status static function

bdrv_block_status exists as a wrapper for bdrv_block_status_above, but
the name of the (hypothetical) coroutine version, bdrv_co_block_status,
is squatted by a random static function. Rename it to
bdrv_co_do_block_status.

Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
Message-ID: <20230904100306.156197-2-pbonzini@redhat.com>
Reviewed-by: Kevin Wolf <kwolf@redhat.com>
Signed-off-by: Kevin Wolf <kwolf@redhat.com>

show more ...


/openbmc/qemu/.gitlab-ci.d/buildtest.yml
/openbmc/qemu/.gitlab-ci.d/cirrus/macos-12.vars
/openbmc/qemu/.travis.yml
/openbmc/qemu/MAINTAINERS
/openbmc/qemu/accel/accel-system.c
/openbmc/qemu/accel/accel-system.h
/openbmc/qemu/accel/accel-target.c
/openbmc/qemu/accel/meson.build
/openbmc/qemu/accel/stubs/meson.build
/openbmc/qemu/accel/tcg/icount-common.c
/openbmc/qemu/accel/tcg/plugin-gen.c
/openbmc/qemu/accel/tcg/translator.c
/openbmc/qemu/accel/tcg/user-exec.c
/openbmc/qemu/audio/audio.c
/openbmc/qemu/audio/audio.h
/openbmc/qemu/audio/ossaudio.c
io.c
/openbmc/qemu/configure
/openbmc/qemu/contrib/plugins/cache.c
/openbmc/qemu/contrib/plugins/execlog.c
/openbmc/qemu/contrib/plugins/hotblocks.c
/openbmc/qemu/contrib/plugins/lockstep.c
/openbmc/qemu/cpu-target.c
/openbmc/qemu/docs/about/deprecated.rst
/openbmc/qemu/docs/about/removed-features.rst
/openbmc/qemu/docs/devel/build-system.rst
/openbmc/qemu/docs/devel/qtest.rst
/openbmc/qemu/docs/devel/testing.rst
/openbmc/qemu/docs/interop/nbd.txt
/openbmc/qemu/dump/dump.c
/openbmc/qemu/gdbstub/gdbstub.c
/openbmc/qemu/gdbstub/internals.h
/openbmc/qemu/gdbstub/meson.build
/openbmc/qemu/gdbstub/system.c
/openbmc/qemu/gdbstub/trace-events
/openbmc/qemu/hw/audio/Kconfig
/openbmc/qemu/hw/audio/asc.c
/openbmc/qemu/hw/audio/es1370.c
/openbmc/qemu/hw/audio/meson.build
/openbmc/qemu/hw/audio/soundhw.c
/openbmc/qemu/hw/audio/trace-events
/openbmc/qemu/hw/block/swim.c
/openbmc/qemu/hw/block/trace-events
/openbmc/qemu/hw/core/cpu-common.c
/openbmc/qemu/hw/cxl/cxl-device-utils.c
/openbmc/qemu/hw/i386/acpi-microvm.c
/openbmc/qemu/hw/i386/pc.c
/openbmc/qemu/hw/i386/x86.c
/openbmc/qemu/hw/ide/ahci.c
/openbmc/qemu/hw/loongarch/virt.c
/openbmc/qemu/hw/m68k/Kconfig
/openbmc/qemu/hw/m68k/q800-glue.c
/openbmc/qemu/hw/m68k/q800.c
/openbmc/qemu/hw/misc/Kconfig
/openbmc/qemu/hw/misc/djmemc.c
/openbmc/qemu/hw/misc/iosb.c
/openbmc/qemu/hw/misc/mac_via.c
/openbmc/qemu/hw/misc/meson.build
/openbmc/qemu/hw/misc/trace-events
/openbmc/qemu/hw/net/vhost_net.c
/openbmc/qemu/hw/usb/desc.c
/openbmc/qemu/hw/usb/dev-hub.c
/openbmc/qemu/hw/usb/dev-storage.c
/openbmc/qemu/hw/usb/hcd-xhci.c
/openbmc/qemu/hw/usb/host-libusb.c
/openbmc/qemu/hw/vfio/display.c
/openbmc/qemu/hw/vfio/pci.c
/openbmc/qemu/hw/vfio/pci.h
/openbmc/qemu/hw/vfio/trace-events
/openbmc/qemu/hw/virtio/vhost.c
/openbmc/qemu/hw/virtio/virtio-pci.c
/openbmc/qemu/include/block/nbd.h
/openbmc/qemu/include/exec/gdbstub.h
/openbmc/qemu/include/exec/plugin-gen.h
/openbmc/qemu/include/exec/translator.h
/openbmc/qemu/include/hw/audio/asc.h
/openbmc/qemu/include/hw/audio/soundhw.h
/openbmc/qemu/include/hw/block/swim.h
/openbmc/qemu/include/hw/core/cpu.h
/openbmc/qemu/include/hw/m68k/q800-glue.h
/openbmc/qemu/include/hw/m68k/q800.h
/openbmc/qemu/include/hw/misc/djmemc.h
/openbmc/qemu/include/hw/misc/iosb.h
/openbmc/qemu/include/hw/misc/mac_via.h
/openbmc/qemu/include/net/net.h
/openbmc/qemu/include/qemu/atomic128.h
/openbmc/qemu/include/qemu/guest-random.h
/openbmc/qemu/include/qemu/plugin.h
/openbmc/qemu/include/qom/object_interfaces.h
/openbmc/qemu/include/semihosting/semihost.h
/openbmc/qemu/include/semihosting/uaccess.h
/openbmc/qemu/include/sysemu/cpu-timers-internal.h
/openbmc/qemu/include/sysemu/hvf.h
/openbmc/qemu/include/sysemu/os-posix.h
/openbmc/qemu/include/sysemu/runstate-action.h
/openbmc/qemu/include/sysemu/tpm.h
/openbmc/qemu/include/tcg/tcg-op-common.h
/openbmc/qemu/linux-user/flatload.c
/openbmc/qemu/linux-user/mmap.c
/openbmc/qemu/linux-user/syscall.c
/openbmc/qemu/meson.build
/openbmc/qemu/migration/dirtyrate.c
/openbmc/qemu/migration/dirtyrate.h
/openbmc/qemu/migration/migration.c
/openbmc/qemu/migration/migration.h
/openbmc/qemu/migration/options.c
/openbmc/qemu/migration/qemu-file.c
/openbmc/qemu/migration/ram.c
/openbmc/qemu/migration/rdma.c
/openbmc/qemu/migration/savevm.c
/openbmc/qemu/migration/trace-events
/openbmc/qemu/nbd/client-connection.c
/openbmc/qemu/nbd/client.c
/openbmc/qemu/nbd/server.c
/openbmc/qemu/nbd/trace-events
/openbmc/qemu/net/net.c
/openbmc/qemu/os-posix.c
/openbmc/qemu/pc-bios/bios-256k.bin
/openbmc/qemu/pc-bios/bios-microvm.bin
/openbmc/qemu/pc-bios/bios.bin
/openbmc/qemu/pc-bios/vgabios-ati.bin
/openbmc/qemu/pc-bios/vgabios-bochs-display.bin
/openbmc/qemu/pc-bios/vgabios-cirrus.bin
/openbmc/qemu/pc-bios/vgabios-qxl.bin
/openbmc/qemu/pc-bios/vgabios-ramfb.bin
/openbmc/qemu/pc-bios/vgabios-stdvga.bin
/openbmc/qemu/pc-bios/vgabios-virtio.bin
/openbmc/qemu/pc-bios/vgabios-vmware.bin
/openbmc/qemu/pc-bios/vgabios.bin
/openbmc/qemu/plugins/core.c
/openbmc/qemu/plugins/loader.c
/openbmc/qemu/qapi/migration.json
/openbmc/qemu/qemu-img.c
/openbmc/qemu/qemu-io.c
/openbmc/qemu/qemu-nbd.c
/openbmc/qemu/qemu-options.hx
/openbmc/qemu/qom/object_interfaces.c
/openbmc/qemu/roms/seabios
/openbmc/qemu/scripts/checkpatch.pl
/openbmc/qemu/scripts/coverity-scan/COMPONENTS.md
/openbmc/qemu/scripts/feature_to_c.py
/openbmc/qemu/scripts/get_maintainer.pl
/openbmc/qemu/scripts/oss-fuzz/build.sh
/openbmc/qemu/semihosting/arm-compat-semi.c
/openbmc/qemu/semihosting/config.c
/openbmc/qemu/semihosting/guestfd.c
/openbmc/qemu/semihosting/syscalls.c
/openbmc/qemu/semihosting/uaccess.c
/openbmc/qemu/stubs/gdbstub.c
/openbmc/qemu/stubs/semihost.c
/openbmc/qemu/system/arch_init.c
/openbmc/qemu/system/async-teardown.c
/openbmc/qemu/system/balloon.c
/openbmc/qemu/system/bootdevice.c
/openbmc/qemu/system/cpu-throttle.c
/openbmc/qemu/system/cpu-timers.c
/openbmc/qemu/system/cpus.c
/openbmc/qemu/system/datadir.c
/openbmc/qemu/system/device_tree.c
/openbmc/qemu/system/dirtylimit.c
/openbmc/qemu/system/dma-helpers.c
/openbmc/qemu/system/globals.c
/openbmc/qemu/system/ioport.c
/openbmc/qemu/system/main.c
/openbmc/qemu/system/memory.c
/openbmc/qemu/system/memory_mapping.c
/openbmc/qemu/system/meson.build
/openbmc/qemu/system/physmem.c
/openbmc/qemu/system/qdev-monitor.c
/openbmc/qemu/system/qemu-seccomp.c
/openbmc/qemu/system/qtest.c
/openbmc/qemu/system/rtc.c
/openbmc/qemu/system/runstate-action.c
/openbmc/qemu/system/runstate-hmp-cmds.c
/openbmc/qemu/system/runstate.c
/openbmc/qemu/system/tpm-hmp-cmds.c
/openbmc/qemu/system/tpm.c
/openbmc/qemu/system/trace-events
/openbmc/qemu/system/trace.h
/openbmc/qemu/system/vl.c
/openbmc/qemu/system/watchpoint.c
/openbmc/qemu/target/alpha/meson.build
/openbmc/qemu/target/arm/cpu.c
/openbmc/qemu/target/arm/cpu64.c
/openbmc/qemu/target/arm/gdbstub.c
/openbmc/qemu/target/arm/meson.build
/openbmc/qemu/target/avr/meson.build
/openbmc/qemu/target/cris/meson.build
/openbmc/qemu/target/hppa/meson.build
/openbmc/qemu/target/i386/cpu.c
/openbmc/qemu/target/i386/hvf/hvf-cpu.c
/openbmc/qemu/target/i386/hvf/hvf-i386.h
/openbmc/qemu/target/i386/hvf/x86_cpuid.c
/openbmc/qemu/target/i386/kvm/meson.build
/openbmc/qemu/target/i386/meson.build
/openbmc/qemu/target/i386/tcg/misc_helper.c
/openbmc/qemu/target/i386/tcg/translate.c
/openbmc/qemu/target/loongarch/cpu.c
/openbmc/qemu/target/loongarch/meson.build
/openbmc/qemu/target/m68k/m68k-semi.c
/openbmc/qemu/target/m68k/meson.build
/openbmc/qemu/target/microblaze/meson.build
/openbmc/qemu/target/mips/meson.build
/openbmc/qemu/target/mips/tcg/sysemu/mips-semi.c
/openbmc/qemu/target/nios2/meson.build
/openbmc/qemu/target/nios2/nios2-semi.c
/openbmc/qemu/target/openrisc/meson.build
/openbmc/qemu/target/ppc/gdbstub.c
/openbmc/qemu/target/ppc/int_helper.c
/openbmc/qemu/target/ppc/internal.h
/openbmc/qemu/target/ppc/kvm.c
/openbmc/qemu/target/ppc/meson.build
/openbmc/qemu/target/riscv/cpu.c
/openbmc/qemu/target/riscv/meson.build
/openbmc/qemu/target/riscv/vector_helper.c
/openbmc/qemu/target/rx/meson.build
/openbmc/qemu/target/s390x/cpu.c
/openbmc/qemu/target/s390x/meson.build
/openbmc/qemu/target/sh4/meson.build
/openbmc/qemu/target/sh4/translate.c
/openbmc/qemu/target/sparc/meson.build
/openbmc/qemu/target/tricore/cpu.c
/openbmc/qemu/target/tricore/meson.build
/openbmc/qemu/target/xtensa/meson.build
/openbmc/qemu/tcg/aarch64/tcg-target.c.inc
/openbmc/qemu/tcg/arm/tcg-target.c.inc
/openbmc/qemu/tcg/i386/tcg-target.c.inc
/openbmc/qemu/tcg/loongarch64/tcg-target.c.inc
/openbmc/qemu/tcg/meson.build
/openbmc/qemu/tcg/mips/tcg-target.c.inc
/openbmc/qemu/tcg/ppc/tcg-target.c.inc
/openbmc/qemu/tcg/region.c
/openbmc/qemu/tcg/riscv/tcg-target.c.inc
/openbmc/qemu/tcg/s390x/tcg-target.c.inc
/openbmc/qemu/tcg/sparc64/tcg-target.c.inc
/openbmc/qemu/tcg/tcg.c
/openbmc/qemu/tests/avocado/machine_aarch64_sbsaref.py
/openbmc/qemu/tests/data/acpi/q35/DSDT.mmio64
/openbmc/qemu/tests/docker/Makefile.include
/openbmc/qemu/tests/docker/dockerfiles/alpine.docker
/openbmc/qemu/tests/docker/dockerfiles/centos8.docker
/openbmc/qemu/tests/docker/dockerfiles/debian-amd64-cross.docker
/openbmc/qemu/tests/docker/dockerfiles/debian-amd64.docker
/openbmc/qemu/tests/docker/dockerfiles/debian-arm64-cross.docker
/openbmc/qemu/tests/docker/dockerfiles/debian-armhf-cross.docker
/openbmc/qemu/tests/docker/dockerfiles/debian-ppc64el-cross.docker
/openbmc/qemu/tests/docker/dockerfiles/debian-s390x-cross.docker
/openbmc/qemu/tests/docker/dockerfiles/fedora-win32-cross.docker
/openbmc/qemu/tests/docker/dockerfiles/fedora-win64-cross.docker
/openbmc/qemu/tests/docker/dockerfiles/fedora.docker
/openbmc/qemu/tests/docker/dockerfiles/opensuse-leap.docker
/openbmc/qemu/tests/docker/dockerfiles/ubuntu2204.docker
/openbmc/qemu/tests/lcitool/libvirt-ci
/openbmc/qemu/tests/lcitool/projects/qemu.yml
/openbmc/qemu/tests/qemu-iotests/223.out
/openbmc/qemu/tests/qemu-iotests/233.out
/openbmc/qemu/tests/qemu-iotests/241.out
/openbmc/qemu/tests/qemu-iotests/307.out
/openbmc/qemu/tests/qemu-iotests/tests/nbd-qemu-allocation.out
/openbmc/qemu/tests/qtest/bios-tables-test.c
/openbmc/qemu/tests/qtest/fuzz/fuzz.c
/openbmc/qemu/tests/qtest/fuzz/fuzz.h
/openbmc/qemu/tests/qtest/libqtest.c
/openbmc/qemu/tests/qtest/libqtest.h
/openbmc/qemu/tests/qtest/meson.build
/openbmc/qemu/tests/qtest/migration-helpers.c
/openbmc/qemu/tests/qtest/migration-helpers.h
/openbmc/qemu/tests/qtest/migration-test.c
/openbmc/qemu/tests/qtest/virtio-net-failover.c
/openbmc/qemu/tests/tcg/Makefile.target
/openbmc/qemu/tests/tcg/multiarch/gdbstub/interrupt.py
/openbmc/qemu/tests/tcg/multiarch/gdbstub/memory.py
/openbmc/qemu/tests/tcg/multiarch/system/memory.c
/openbmc/qemu/tests/tcg/s390x/pgm-specification-softmmu.S
/openbmc/qemu/tests/tcg/s390x/pgm-specification.mak
/openbmc/qemu/tests/tcg/s390x/softmmu.ld
/openbmc/qemu/tests/tcg/xtensa/Makefile.softmmu-target
/openbmc/qemu/tests/tcg/xtensaeb/Makefile.softmmu-target
/openbmc/qemu/tests/unit/meson.build
/openbmc/qemu/trace/control.c
/openbmc/qemu/trace/control.h
/openbmc/qemu/ui/cocoa.m
/openbmc/qemu/ui/vnc.c
/openbmc/qemu/util/cutils.c
/openbmc/qemu/util/guest-random.c
/openbmc/qemu/util/log.c
a7c1867025-Sep-2023 Eric Blake <eblake@redhat.com>

nbd/client: Accept 64-bit block status chunks

Once extended mode is enabled, we need to accept 64-bit status replies
(even for replies that don't exceed a 32-bit length). It is easier to
normalize

nbd/client: Accept 64-bit block status chunks

Once extended mode is enabled, we need to accept 64-bit status replies
(even for replies that don't exceed a 32-bit length). It is easier to
normalize narrow replies into wide format so that the rest of our code
only has to handle one width. Although a server is non-compliant if
it sends a 64-bit reply in compact mode, or a 32-bit reply in extended
mode, it is still easy enough to tolerate these mismatches.

In normal execution, we are only requesting "base:allocation" which
never exceeds 32 bits for flag values. But during testing with
x-dirty-bitmap, we can force qemu to connect to some other context
that might have 64-bit status bit; however, we ignore those upper bits
(other than mapping qemu:allocation-depth into something that
'qemu-img map --output=json' can expose), and since that only affects
testing, we really don't bother with checking whether more than the
two least-significant bits are set.

Signed-off-by: Eric Blake <eblake@redhat.com>
Reviewed-by: Vladimir Sementsov-Ogievskiy <vsementsov@yandex-team.ru>
Message-ID: <20230925192229.3186470-22-eblake@redhat.com>

show more ...

4fc55bf325-Sep-2023 Eric Blake <eblake@redhat.com>

nbd/client: Initial support for extended headers

Update the client code to be able to send an extended request, and
parse an extended header from the server. Note that since we reject
any structure

nbd/client: Initial support for extended headers

Update the client code to be able to send an extended request, and
parse an extended header from the server. Note that since we reject
any structured reply with a too-large payload, we can always normalize
a valid header back into the compact form, so that the caller need not
deal with two branches of a union. Still, until a later patch lets
the client negotiate extended headers, the code added here should not
be reached. Note that because of the different magic numbers, it is
just as easy to trace and then tolerate a non-compliant server sending
the wrong header reply as it would be to insist that the server is
compliant.

Signed-off-by: Eric Blake <eblake@redhat.com>
Message-ID: <20230925192229.3186470-21-eblake@redhat.com>
[eblake: fix trace format]
Reviewed-by: Vladimir Sementsov-Ogievskiy <vsementsov@yandex-team.ru>

show more ...

ed6c996c25-Sep-2023 Eric Blake <eblake@redhat.com>

nbd/client: Plumb errp through nbd_receive_replies

Instead of ignoring the low-level error just to refabricate our own
message to pass to the caller, we can just plumb the caller's errp
down to the

nbd/client: Plumb errp through nbd_receive_replies

Instead of ignoring the low-level error just to refabricate our own
message to pass to the caller, we can just plumb the caller's errp
down to the low level.

Signed-off-by: Eric Blake <eblake@redhat.com>
Message-ID: <20230925192229.3186470-20-eblake@redhat.com>
Reviewed-by: Vladimir Sementsov-Ogievskiy <vsementsov@yandex-team.ru>

show more ...


/openbmc/qemu/.mailmap
/openbmc/qemu/MAINTAINERS
/openbmc/qemu/accel/accel-target.c
/openbmc/qemu/accel/dummy-cpus.c
/openbmc/qemu/accel/hvf/hvf-accel-ops.c
/openbmc/qemu/accel/kvm/kvm-accel-ops.c
/openbmc/qemu/accel/kvm/kvm-all.c
/openbmc/qemu/accel/meson.build
/openbmc/qemu/accel/tcg/atomic_template.h
/openbmc/qemu/accel/tcg/cpu-exec-common.c
/openbmc/qemu/accel/tcg/cpu-exec.c
/openbmc/qemu/accel/tcg/cputlb.c
/openbmc/qemu/accel/tcg/icount-common.c
/openbmc/qemu/accel/tcg/internal-common.h
/openbmc/qemu/accel/tcg/internal-target.h
/openbmc/qemu/accel/tcg/ldst_atomicity.c.inc
/openbmc/qemu/accel/tcg/ldst_common.c.inc
/openbmc/qemu/accel/tcg/meson.build
/openbmc/qemu/accel/tcg/monitor.c
/openbmc/qemu/accel/tcg/plugin-gen.c
/openbmc/qemu/accel/tcg/tb-maint.c
/openbmc/qemu/accel/tcg/tcg-accel-ops-icount.c
/openbmc/qemu/accel/tcg/tcg-accel-ops-mttcg.c
/openbmc/qemu/accel/tcg/tcg-accel-ops-rr.c
/openbmc/qemu/accel/tcg/tcg-accel-ops.c
/openbmc/qemu/accel/tcg/tcg-all.c
/openbmc/qemu/accel/tcg/translate-all.c
/openbmc/qemu/accel/tcg/translator.c
/openbmc/qemu/accel/tcg/user-exec.c
/openbmc/qemu/audio/alsaaudio.c
/openbmc/qemu/audio/audio-hmp-cmds.c
/openbmc/qemu/audio/audio.c
/openbmc/qemu/audio/audio.h
/openbmc/qemu/audio/audio_int.h
/openbmc/qemu/audio/audio_template.h
/openbmc/qemu/audio/coreaudio.m
/openbmc/qemu/audio/dbusaudio.c
/openbmc/qemu/audio/dsoundaudio.c
/openbmc/qemu/audio/jackaudio.c
/openbmc/qemu/audio/meson.build
/openbmc/qemu/audio/noaudio.c
/openbmc/qemu/audio/ossaudio.c
/openbmc/qemu/audio/paaudio.c
/openbmc/qemu/audio/pwaudio.c
/openbmc/qemu/audio/sdlaudio.c
/openbmc/qemu/audio/sndioaudio.c
/openbmc/qemu/audio/spiceaudio.c
/openbmc/qemu/audio/wavaudio.c
nbd.c
/openbmc/qemu/bsd-user/bsd-mem.c
/openbmc/qemu/bsd-user/bsd-mem.h
/openbmc/qemu/bsd-user/bsd-proc.c
/openbmc/qemu/bsd-user/bsd-proc.h
/openbmc/qemu/bsd-user/freebsd/meson.build
/openbmc/qemu/bsd-user/freebsd/os-misc.h
/openbmc/qemu/bsd-user/freebsd/os-proc.c
/openbmc/qemu/bsd-user/freebsd/os-proc.h
/openbmc/qemu/bsd-user/freebsd/os-syscall.c
/openbmc/qemu/bsd-user/main.c
/openbmc/qemu/bsd-user/meson.build
/openbmc/qemu/bsd-user/mmap.c
/openbmc/qemu/bsd-user/qemu-bsd.h
/openbmc/qemu/bsd-user/qemu.h
/openbmc/qemu/bsd-user/signal-common.h
/openbmc/qemu/bsd-user/signal.c
/openbmc/qemu/bsd-user/syscall_defs.h
/openbmc/qemu/chardev/char-pty.c
/openbmc/qemu/cpu-common.c
/openbmc/qemu/cpu-target.c
/openbmc/qemu/crypto/cipher-gnutls.c.inc
/openbmc/qemu/crypto/meson.build
/openbmc/qemu/crypto/tls-cipher-suites.c
/openbmc/qemu/disas/m68k.c
/openbmc/qemu/docs/about/deprecated.rst
/openbmc/qemu/docs/about/removed-features.rst
/openbmc/qemu/docs/interop/nbd.txt
/openbmc/qemu/docs/interop/vhost-user.rst
/openbmc/qemu/gdbstub/gdbstub.c
/openbmc/qemu/gdbstub/meson.build
/openbmc/qemu/gdbstub/user-target.c
/openbmc/qemu/hw/acpi/acpi-x86-stub.c
/openbmc/qemu/hw/acpi/core.c
/openbmc/qemu/hw/acpi/cpu.c
/openbmc/qemu/hw/acpi/cpu_hotplug.c
/openbmc/qemu/hw/acpi/hmat.c
/openbmc/qemu/hw/acpi/hmat.h
/openbmc/qemu/hw/acpi/memory_hotplug.c
/openbmc/qemu/hw/acpi/piix4.c
/openbmc/qemu/hw/acpi/trace-events
/openbmc/qemu/hw/arm/allwinner-r40.c
/openbmc/qemu/hw/arm/armsse.c
/openbmc/qemu/hw/arm/armv7m.c
/openbmc/qemu/hw/arm/aspeed_ast2600.c
/openbmc/qemu/hw/arm/integratorcp.c
/openbmc/qemu/hw/arm/musicpal.c
/openbmc/qemu/hw/arm/nseries.c
/openbmc/qemu/hw/arm/omap2.c
/openbmc/qemu/hw/arm/palm.c
/openbmc/qemu/hw/arm/realview.c
/openbmc/qemu/hw/arm/smmuv3-internal.h
/openbmc/qemu/hw/arm/smmuv3.c
/openbmc/qemu/hw/arm/spitz.c
/openbmc/qemu/hw/arm/versatilepb.c
/openbmc/qemu/hw/arm/vexpress.c
/openbmc/qemu/hw/arm/virt.c
/openbmc/qemu/hw/arm/xlnx-zcu102.c
/openbmc/qemu/hw/arm/z2.c
/openbmc/qemu/hw/audio/ac97.c
/openbmc/qemu/hw/audio/adlib.c
/openbmc/qemu/hw/audio/cs4231a.c
/openbmc/qemu/hw/audio/es1370.c
/openbmc/qemu/hw/audio/gus.c
/openbmc/qemu/hw/audio/hda-codec.c
/openbmc/qemu/hw/audio/lm4549.c
/openbmc/qemu/hw/audio/pcspk.c
/openbmc/qemu/hw/audio/sb16.c
/openbmc/qemu/hw/audio/via-ac97.c
/openbmc/qemu/hw/audio/wm8750.c
/openbmc/qemu/hw/core/cpu-common.c
/openbmc/qemu/hw/core/machine.c
/openbmc/qemu/hw/core/qdev-properties-system.c
/openbmc/qemu/hw/cxl/cxl-component-utils.c
/openbmc/qemu/hw/cxl/cxl-host.c
/openbmc/qemu/hw/display/meson.build
/openbmc/qemu/hw/display/ramfb.c
/openbmc/qemu/hw/display/virtio-dmabuf.c
/openbmc/qemu/hw/display/xlnx_dp.c
/openbmc/qemu/hw/i2c/aspeed_i2c.c
/openbmc/qemu/hw/i386/acpi-build.c
/openbmc/qemu/hw/i386/acpi-common.c
/openbmc/qemu/hw/i386/acpi-common.h
/openbmc/qemu/hw/i386/acpi-microvm.c
/openbmc/qemu/hw/i386/amd_iommu.c
/openbmc/qemu/hw/i386/amd_iommu.h
/openbmc/qemu/hw/i386/intel_iommu.c
/openbmc/qemu/hw/i386/kvm/clock.c
/openbmc/qemu/hw/i386/meson.build
/openbmc/qemu/hw/i386/microvm.c
/openbmc/qemu/hw/i386/pc.c
/openbmc/qemu/hw/i386/pc_piix.c
/openbmc/qemu/hw/i386/pc_q35.c
/openbmc/qemu/hw/input/tsc210x.c
/openbmc/qemu/hw/intc/arm_gicv3_its.c
/openbmc/qemu/hw/intc/mips_gic.c
/openbmc/qemu/hw/intc/openpic.c
/openbmc/qemu/hw/intc/riscv_aclint.c
/openbmc/qemu/hw/intc/riscv_imsic.c
/openbmc/qemu/hw/isa/lpc_ich9.c
/openbmc/qemu/hw/m68k/bootinfo.h
/openbmc/qemu/hw/mem/cxl_type3.c
/openbmc/qemu/hw/microblaze/petalogix_ml605_mmu.c
/openbmc/qemu/hw/mips/fuloong2e.c
/openbmc/qemu/hw/misc/arm_sysctl.c
/openbmc/qemu/hw/misc/aspeed_i3c.c
/openbmc/qemu/hw/net/e1000.c
/openbmc/qemu/hw/net/virtio-net.c
/openbmc/qemu/hw/nios2/10m50_devboard.c
/openbmc/qemu/hw/nvme/ns.c
/openbmc/qemu/hw/nvram/meson.build
/openbmc/qemu/hw/pci-bridge/cxl_upstream.c
/openbmc/qemu/hw/pci-host/i440fx.c
/openbmc/qemu/hw/pci-host/q35.c
/openbmc/qemu/hw/pci/pci.c
/openbmc/qemu/hw/pci/pci_bridge.c
/openbmc/qemu/hw/pci/pcie_sriov.c
/openbmc/qemu/hw/ppc/e500.c
/openbmc/qemu/hw/ppc/pegasos2.c
/openbmc/qemu/hw/ppc/pnv_psi.c
/openbmc/qemu/hw/ppc/prep.c
/openbmc/qemu/hw/ppc/spapr.c
/openbmc/qemu/hw/ppc/spapr_drc.c
/openbmc/qemu/hw/ppc/spapr_pci.c
/openbmc/qemu/hw/riscv/opentitan.c
/openbmc/qemu/hw/scsi/esp.c
/openbmc/qemu/hw/scsi/scsi-disk.c
/openbmc/qemu/hw/scsi/vhost-user-scsi.c
/openbmc/qemu/hw/smbios/smbios.c
/openbmc/qemu/hw/timer/aspeed_timer.c
/openbmc/qemu/hw/tricore/tricore_testdevice.c
/openbmc/qemu/hw/usb/dev-audio.c
/openbmc/qemu/hw/virtio/meson.build
/openbmc/qemu/hw/virtio/trace-events
/openbmc/qemu/hw/virtio/vdpa-dev.c
/openbmc/qemu/hw/virtio/vhost-shadow-virtqueue.c
/openbmc/qemu/hw/virtio/vhost-shadow-virtqueue.h
/openbmc/qemu/hw/virtio/vhost-user-device-pci.c
/openbmc/qemu/hw/virtio/vhost-user-device.c
/openbmc/qemu/hw/virtio/vhost-user-gpio.c
/openbmc/qemu/hw/virtio/vhost-user.c
/openbmc/qemu/hw/virtio/vhost-vdpa.c
/openbmc/qemu/hw/virtio/virtio-qmp.c
/openbmc/qemu/hw/virtio/virtio-qmp.h
/openbmc/qemu/hw/virtio/virtio.c
/openbmc/qemu/include/exec/cpu-all.h
/openbmc/qemu/include/exec/cpu-common.h
/openbmc/qemu/include/exec/cpu-defs.h
/openbmc/qemu/include/exec/cpu_ldst.h
/openbmc/qemu/include/exec/exec-all.h
/openbmc/qemu/include/exec/memory.h
/openbmc/qemu/include/exec/translator.h
/openbmc/qemu/include/hw/acpi/acpi_dev_interface.h
/openbmc/qemu/include/hw/acpi/cpu.h
/openbmc/qemu/include/hw/acpi/generic_event_device.h
/openbmc/qemu/include/hw/boards.h
/openbmc/qemu/include/hw/core/accel-cpu.h
/openbmc/qemu/include/hw/core/cpu.h
/openbmc/qemu/include/hw/cxl/cxl_component.h
/openbmc/qemu/include/hw/i386/pc.h
/openbmc/qemu/include/hw/pci-host/q35.h
/openbmc/qemu/include/hw/pci/pci_bridge.h
/openbmc/qemu/include/hw/ppc/fdt.h
/openbmc/qemu/include/hw/virtio/vhost-backend.h
/openbmc/qemu/include/hw/virtio/vhost-user-device.h
/openbmc/qemu/include/hw/virtio/vhost-user.h
/openbmc/qemu/include/hw/virtio/vhost-vdpa.h
/openbmc/qemu/include/hw/virtio/virtio-dmabuf.h
/openbmc/qemu/include/hw/virtio/virtio-net.h
/openbmc/qemu/include/migration/vmstate.h
/openbmc/qemu/include/qapi/qmp/qobject.h
/openbmc/qemu/include/qemu/accel.h
/openbmc/qemu/include/qemu/atomic.h
/openbmc/qemu/include/qemu/compiler.h
/openbmc/qemu/include/qemu/osdep.h
/openbmc/qemu/include/qemu/uuid.h
/openbmc/qemu/include/sysemu/device_tree.h
/openbmc/qemu/include/tcg/startup.h
/openbmc/qemu/include/tcg/tcg.h
/openbmc/qemu/include/ui/console.h
/openbmc/qemu/include/ui/input.h
/openbmc/qemu/include/ui/qemu-pixman.h
/openbmc/qemu/linux-user/elfload.c
/openbmc/qemu/linux-user/exit.c
/openbmc/qemu/linux-user/hppa/signal.c
/openbmc/qemu/linux-user/i386/cpu_loop.c
/openbmc/qemu/linux-user/main.c
/openbmc/qemu/linux-user/signal.c
/openbmc/qemu/linux-user/strace.c
/openbmc/qemu/linux-user/syscall.c
/openbmc/qemu/meson.build
/openbmc/qemu/meson_options.txt
/openbmc/qemu/migration/block.c
/openbmc/qemu/migration/file.c
/openbmc/qemu/migration/file.h
/openbmc/qemu/migration/meson.build
/openbmc/qemu/migration/migration-stats.c
/openbmc/qemu/migration/migration-stats.h
/openbmc/qemu/migration/migration.c
/openbmc/qemu/migration/qemu-file.c
/openbmc/qemu/migration/qemu-file.h
/openbmc/qemu/migration/ram.c
/openbmc/qemu/migration/rdma.c
/openbmc/qemu/migration/savevm.c
/openbmc/qemu/migration/trace-events
/openbmc/qemu/migration/vmstate.c
/openbmc/qemu/monitor/hmp-cmds-target.c
/openbmc/qemu/nbd/nbd-internal.h
/openbmc/qemu/nbd/server.c
/openbmc/qemu/nbd/trace-events
/openbmc/qemu/net/eth.c
/openbmc/qemu/net/vhost-vdpa.c
/openbmc/qemu/page-vary-target.c
/openbmc/qemu/pc-bios/optionrom/Makefile
/openbmc/qemu/qemu-nbd.c
/openbmc/qemu/qemu-options.hx
/openbmc/qemu/qom/object.c
/openbmc/qemu/scripts/analyse-locks-simpletrace.py
/openbmc/qemu/scripts/analyze-migration.py
/openbmc/qemu/scripts/archive-source.sh
/openbmc/qemu/scripts/make-release
/openbmc/qemu/scripts/meson-buildoptions.sh
/openbmc/qemu/scripts/simpletrace.py
/openbmc/qemu/semihosting/arm-compat-semi.c
/openbmc/qemu/semihosting/syscalls.c
/openbmc/qemu/softmmu/device_tree.c
/openbmc/qemu/softmmu/memory.c
/openbmc/qemu/softmmu/meson.build
/openbmc/qemu/softmmu/physmem.c
/openbmc/qemu/softmmu/qemu-seccomp.c
/openbmc/qemu/softmmu/vl.c
/openbmc/qemu/softmmu/watchpoint.c
/openbmc/qemu/subprojects/libvhost-user/libvhost-user.c
/openbmc/qemu/subprojects/libvhost-user/libvhost-user.h
/openbmc/qemu/target/alpha/cpu.c
/openbmc/qemu/target/alpha/cpu.h
/openbmc/qemu/target/alpha/translate.c
/openbmc/qemu/target/arm/common-semi-target.h
/openbmc/qemu/target/arm/cpu-param.h
/openbmc/qemu/target/arm/cpu.c
/openbmc/qemu/target/arm/cpu.h
/openbmc/qemu/target/arm/cpu64.c
/openbmc/qemu/target/arm/helper.c
/openbmc/qemu/target/arm/hvf/hvf.c
/openbmc/qemu/target/arm/ptw.c
/openbmc/qemu/target/arm/tcg/mte_helper.c
/openbmc/qemu/target/arm/tcg/mve_helper.c
/openbmc/qemu/target/arm/tcg/sve_helper.c
/openbmc/qemu/target/arm/tcg/tlb_helper.c
/openbmc/qemu/target/arm/tcg/translate-a32.h
/openbmc/qemu/target/arm/tcg/translate-a64.c
/openbmc/qemu/target/arm/tcg/translate-a64.h
/openbmc/qemu/target/arm/tcg/translate-m-nocp.c
/openbmc/qemu/target/arm/tcg/translate-mve.c
/openbmc/qemu/target/arm/tcg/translate-neon.c
/openbmc/qemu/target/arm/tcg/translate-sme.c
/openbmc/qemu/target/arm/tcg/translate-sve.c
/openbmc/qemu/target/arm/tcg/translate-vfp.c
/openbmc/qemu/target/arm/tcg/translate.c
/openbmc/qemu/target/arm/tcg/translate.h
/openbmc/qemu/target/avr/cpu.c
/openbmc/qemu/target/avr/cpu.h
/openbmc/qemu/target/avr/translate.c
/openbmc/qemu/target/cris/cpu.c
/openbmc/qemu/target/cris/cpu.h
/openbmc/qemu/target/cris/translate.c
/openbmc/qemu/target/cris/translate_v10.c.inc
/openbmc/qemu/target/hexagon/README
/openbmc/qemu/target/hexagon/cpu.c
/openbmc/qemu/target/hexagon/cpu.h
/openbmc/qemu/target/hexagon/gen_tcg.h
/openbmc/qemu/target/hexagon/gen_tcg_funcs.py
/openbmc/qemu/target/hexagon/gen_tcg_hvx.h
/openbmc/qemu/target/hexagon/genptr.c
/openbmc/qemu/target/hexagon/idef-parser/parser-helpers.c
/openbmc/qemu/target/hexagon/macros.h
/openbmc/qemu/target/hexagon/translate.c
/openbmc/qemu/target/hppa/cpu.c
/openbmc/qemu/target/hppa/cpu.h
/openbmc/qemu/target/hppa/mem_helper.c
/openbmc/qemu/target/hppa/translate.c
/openbmc/qemu/target/i386/cpu.c
/openbmc/qemu/target/i386/cpu.h
/openbmc/qemu/target/i386/hvf/hvf-cpu.c
/openbmc/qemu/target/i386/kvm/kvm-cpu.c
/openbmc/qemu/target/i386/nvmm/nvmm-all.c
/openbmc/qemu/target/i386/tcg/decode-new.c.inc
/openbmc/qemu/target/i386/tcg/emit.c.inc
/openbmc/qemu/target/i386/tcg/sysemu/excp_helper.c
/openbmc/qemu/target/i386/tcg/tcg-cpu.c
/openbmc/qemu/target/i386/tcg/translate.c
/openbmc/qemu/target/i386/whpx/whpx-all.c
/openbmc/qemu/target/loongarch/cpu.c
/openbmc/qemu/target/loongarch/cpu.h
/openbmc/qemu/target/loongarch/insn_trans/trans_atomic.c.inc
/openbmc/qemu/target/loongarch/insn_trans/trans_branch.c.inc
/openbmc/qemu/target/loongarch/insn_trans/trans_extra.c.inc
/openbmc/qemu/target/loongarch/insn_trans/trans_farith.c.inc
/openbmc/qemu/target/loongarch/insn_trans/trans_fcmp.c.inc
/openbmc/qemu/target/loongarch/insn_trans/trans_fmemory.c.inc
/openbmc/qemu/target/loongarch/insn_trans/trans_fmov.c.inc
/openbmc/qemu/target/loongarch/insn_trans/trans_memory.c.inc
/openbmc/qemu/target/loongarch/insn_trans/trans_privileged.c.inc
/openbmc/qemu/target/loongarch/insn_trans/trans_vec.c.inc
/openbmc/qemu/target/loongarch/translate.c
/openbmc/qemu/target/m68k/cpu.c
/openbmc/qemu/target/m68k/cpu.h
/openbmc/qemu/target/m68k/translate.c
/openbmc/qemu/target/microblaze/cpu.c
/openbmc/qemu/target/microblaze/cpu.h
/openbmc/qemu/target/microblaze/translate.c
/openbmc/qemu/target/mips/cpu.c
/openbmc/qemu/target/mips/cpu.h
/openbmc/qemu/target/mips/tcg/lcsr_translate.c
/openbmc/qemu/target/mips/tcg/micromips_translate.c.inc
/openbmc/qemu/target/mips/tcg/msa_helper.c
/openbmc/qemu/target/mips/tcg/msa_translate.c
/openbmc/qemu/target/mips/tcg/mxu_translate.c
/openbmc/qemu/target/mips/tcg/nanomips_translate.c.inc
/openbmc/qemu/target/mips/tcg/sysemu/mips-semi.c
/openbmc/qemu/target/mips/tcg/translate.c
/openbmc/qemu/target/mips/tcg/translate.h
/openbmc/qemu/target/mips/tcg/vr54xx_translate.c
/openbmc/qemu/target/nios2/cpu.c
/openbmc/qemu/target/nios2/cpu.h
/openbmc/qemu/target/nios2/translate.c
/openbmc/qemu/target/openrisc/cpu.c
/openbmc/qemu/target/openrisc/cpu.h
/openbmc/qemu/target/openrisc/translate.c
/openbmc/qemu/target/ppc/cpu.h
/openbmc/qemu/target/ppc/cpu_init.c
/openbmc/qemu/target/ppc/excp_helper.c
/openbmc/qemu/target/ppc/power8-pmu-regs.c.inc
/openbmc/qemu/target/ppc/translate.c
/openbmc/qemu/target/ppc/translate/branch-impl.c.inc
/openbmc/qemu/target/ppc/translate/dfp-impl.c.inc
/openbmc/qemu/target/ppc/translate/fixedpoint-impl.c.inc
/openbmc/qemu/target/ppc/translate/fp-impl.c.inc
/openbmc/qemu/target/ppc/translate/processor-ctrl-impl.c.inc
/openbmc/qemu/target/ppc/translate/spe-impl.c.inc
/openbmc/qemu/target/ppc/translate/storage-ctrl-impl.c.inc
/openbmc/qemu/target/ppc/translate/vmx-impl.c.inc
/openbmc/qemu/target/ppc/translate/vsx-impl.c.inc
/openbmc/qemu/target/riscv/cpu.c
/openbmc/qemu/target/riscv/cpu.h
/openbmc/qemu/target/riscv/insn_trans/trans_privileged.c.inc
/openbmc/qemu/target/riscv/insn_trans/trans_rvbf16.c.inc
/openbmc/qemu/target/riscv/insn_trans/trans_rvd.c.inc
/openbmc/qemu/target/riscv/insn_trans/trans_rvf.c.inc
/openbmc/qemu/target/riscv/insn_trans/trans_rvh.c.inc
/openbmc/qemu/target/riscv/insn_trans/trans_rvi.c.inc
/openbmc/qemu/target/riscv/insn_trans/trans_rvm.c.inc
/openbmc/qemu/target/riscv/insn_trans/trans_rvv.c.inc
/openbmc/qemu/target/riscv/insn_trans/trans_rvvk.c.inc
/openbmc/qemu/target/riscv/insn_trans/trans_rvzce.c.inc
/openbmc/qemu/target/riscv/insn_trans/trans_rvzfa.c.inc
/openbmc/qemu/target/riscv/insn_trans/trans_rvzfh.c.inc
/openbmc/qemu/target/riscv/insn_trans/trans_rvzicbo.c.inc
/openbmc/qemu/target/riscv/insn_trans/trans_svinval.c.inc
/openbmc/qemu/target/riscv/insn_trans/trans_xthead.c.inc
/openbmc/qemu/target/riscv/translate.c
/openbmc/qemu/target/riscv/vector_helper.c
/openbmc/qemu/target/rx/cpu.c
/openbmc/qemu/target/rx/cpu.h
/openbmc/qemu/target/rx/translate.c
/openbmc/qemu/target/s390x/cpu.c
/openbmc/qemu/target/s390x/cpu.h
/openbmc/qemu/target/s390x/tcg/translate.c
/openbmc/qemu/target/s390x/tcg/translate_vx.c.inc
/openbmc/qemu/target/sh4/cpu.c
/openbmc/qemu/target/sh4/cpu.h
/openbmc/qemu/target/sh4/op_helper.c
/openbmc/qemu/target/sh4/translate.c
/openbmc/qemu/target/sparc/cpu.c
/openbmc/qemu/target/sparc/cpu.h
/openbmc/qemu/target/sparc/translate.c
/openbmc/qemu/target/tricore/cpu.c
/openbmc/qemu/target/tricore/cpu.h
/openbmc/qemu/target/tricore/fpu_helper.c
/openbmc/qemu/target/tricore/helper.c
/openbmc/qemu/target/tricore/helper.h
/openbmc/qemu/target/tricore/op_helper.c
/openbmc/qemu/target/tricore/translate.c
/openbmc/qemu/target/tricore/tricore-opcodes.h
/openbmc/qemu/target/xtensa/cpu.c
/openbmc/qemu/target/xtensa/cpu.h
/openbmc/qemu/target/xtensa/translate.c
/openbmc/qemu/tcg/aarch64/tcg-target.c.inc
/openbmc/qemu/tcg/arm/tcg-target.c.inc
/openbmc/qemu/tcg/loongarch64/tcg-target.c.inc
/openbmc/qemu/tcg/meson.build
/openbmc/qemu/tcg/tcg-op-gvec.c
/openbmc/qemu/tcg/tcg-op-ldst.c
/openbmc/qemu/tcg/tcg-op.c
/openbmc/qemu/tcg/tcg.c
/openbmc/qemu/tests/Makefile.include
/openbmc/qemu/tests/avocado/boot_linux_console.py
/openbmc/qemu/tests/avocado/machine_mips_malta.py
/openbmc/qemu/tests/avocado/replay_kernel.py
/openbmc/qemu/tests/avocado/tuxrun_baselines.py
/openbmc/qemu/tests/meson.build
/openbmc/qemu/tests/migration/i386/a-b-bootblock.S
/openbmc/qemu/tests/migration/i386/a-b-bootblock.h
/openbmc/qemu/tests/migration/s390x/a-b-bios.c
/openbmc/qemu/tests/migration/s390x/a-b-bios.h
/openbmc/qemu/tests/plugin/meson.build
/openbmc/qemu/tests/qemu-iotests/meson.build
/openbmc/qemu/tests/qtest/bios-tables-test.c
/openbmc/qemu/tests/qtest/migration-test.c
/openbmc/qemu/tests/qtest/numa-test.c
/openbmc/qemu/tests/tcg/tricore/Makefile.softmmu-target
/openbmc/qemu/tests/tcg/tricore/asm/macros.h
/openbmc/qemu/tests/tcg/tricore/asm/test_crcn.S
/openbmc/qemu/tests/tcg/tricore/asm/test_ftohp.S
/openbmc/qemu/tests/tcg/tricore/asm/test_ftou.S
/openbmc/qemu/tests/tcg/tricore/asm/test_hptof.S
/openbmc/qemu/tests/tcg/tricore/asm/test_insert.S
/openbmc/qemu/tests/unit/meson.build
/openbmc/qemu/tests/unit/test-throttle.c
/openbmc/qemu/tests/unit/test-uuid.c
/openbmc/qemu/tests/unit/test-virtio-dmabuf.c
/openbmc/qemu/ui/cocoa.m
/openbmc/qemu/ui/console.c
/openbmc/qemu/ui/dbus-console.c
/openbmc/qemu/ui/dbus.c
/openbmc/qemu/ui/gtk.c
/openbmc/qemu/ui/input.c
/openbmc/qemu/ui/qemu-pixman.c
/openbmc/qemu/ui/sdl2.c
/openbmc/qemu/ui/spice-input.c
/openbmc/qemu/ui/trace-events
/openbmc/qemu/ui/vnc.c
/openbmc/qemu/ui/vnc.h
/openbmc/qemu/util/coroutine-sigaltstack.c
/openbmc/qemu/util/coroutine-ucontext.c
/openbmc/qemu/util/oslib-win32.c
/openbmc/qemu/util/uuid.c
/openbmc/qemu/util/vhost-user-server.c

12345678910>>...248