History log of /openbmc/qemu/block/ (Results 176 – 200 of 6194)
Revision Date Author Comments
(<<< Hide modified files)
(Show modified files >>>)
6a0f7ff721-Sep-2023 Markus Armbruster <armbru@redhat.com>

block/dirty-bitmap: Clean up local variable shadowing

Local variables shadowing other local variables or parameters make the
code needlessly hard to understand. Tracked down with -Wshadow=local.
Cl

block/dirty-bitmap: Clean up local variable shadowing

Local variables shadowing other local variables or parameters make the
code needlessly hard to understand. Tracked down with -Wshadow=local.
Clean up: rename both the pair of parameters and the pair of local
variables. While there, move the local variables to function scope.

Suggested-by: Kevin Wolf <kwolf@redhat.com>
Signed-off-by: Markus Armbruster <armbru@redhat.com>
Reviewed-by: Kevin Wolf <kwolf@redhat.com>
Message-ID: <20230921121312.1301864-5-armbru@redhat.com>

show more ...

5dfd80e327-Sep-2023 Stefan Hajnoczi <stefanha@redhat.com>

Merge tag 'for-upstream' of https://gitlab.com/bonzini/qemu into staging

* new round of audio cleanups
* various shadowed local variable fixes in vl, mptsas, pm_smbus, target/i386
* remove deprecate

Merge tag 'for-upstream' of https://gitlab.com/bonzini/qemu into staging

* new round of audio cleanups
* various shadowed local variable fixes in vl, mptsas, pm_smbus, target/i386
* remove deprecated pc-i440fx-1.4 up to pc-i440fx-1.7
* remove PCI drivers from 128K bios.bin
* remove unused variable in user-exec-stub.c
* small fixes for ui/vnc
* scsi-disk: Disallow block sizes smaller than 512 [CVE-2023-42467]

# -----BEGIN PGP SIGNATURE-----
#
# iQFIBAABCAAyFiEE8TM4V0tmI4mGbHaCv/vSX3jHroMFAmUTDaoUHHBib256aW5p
# QHJlZGhhdC5jb20ACgkQv/vSX3jHroMvEgf+NrSaP4pmHrYcVtm43fnKXoLHFrCx
# KYfoK9Lke/DDkTff6rrcfW/Wyqid6Pp9Ch4Rrpr/X71X5gi+c6xb5klC8cpSfLg4
# gtuGctj7WL7KR/067EsLqHvzBob/iebFhZwhtsBrI+z65X+J9pOK78efBTdhezq4
# EEHTWohMAg1I/MWBK5VnOk2fI4+9z9K9zP5AtWmJzwwJkQUoEyl+YDkVmIhMYoGn
# CapRO7i2wIvtoF4wuQUCGsOLmrcWTvRIOcV13k3b6PYCPC40/N9AOpiiyg3XqNah
# UKKM9CcgVnCzCc4Jar2QD+MzkTDxhmQSyLFJgtzrW7CQSE5YB3sUHj3CXg==
# =8nvs
# -----END PGP SIGNATURE-----
# gpg: Signature made Tue 26 Sep 2023 12:58:18 EDT
# gpg: using RSA key F13338574B662389866C7682BFFBD25F78C7AE83
# gpg: issuer "pbonzini@redhat.com"
# gpg: Good signature from "Paolo Bonzini <bonzini@gnu.org>" [full]
# gpg: aka "Paolo Bonzini <pbonzini@redhat.com>" [full]
# Primary key fingerprint: 46F5 9FBD 57D6 12E7 BFD4 E2F7 7E15 100C CD36 69B1
# Subkey fingerprint: F133 3857 4B66 2389 866C 7682 BFFB D25F 78C7 AE83

* tag 'for-upstream' of https://gitlab.com/bonzini/qemu:
audio: remove shadowed locals
compiler: introduce QEMU_ANNOTATE
block: mark mixed functions that can suspend
target/i386/svm_helper: eliminate duplicate local variable
target/i386/seg_helper: remove shadowed variable
target/i386/seg_helper: introduce tss_set_busy
target/i386/translate: avoid shadowed local variables
target/i386/cpu: avoid shadowed local variables
target/i386/kvm: eliminate shadowed local variables
m48t59-test: avoid possible overflow on ABS
pm_smbus: rename variable to avoid shadowing
mptsas: avoid shadowed local variables
ui/vnc: fix handling of VNC_FEATURE_XVP
ui/vnc: fix debug output for invalid audio message
vl: remove shadowed local variables
hw/scsi/scsi-disk: Disallow block sizes smaller than 512 [CVE-2023-42467]
user-exec-stub: remove unused variable
seabios: remove PCI drivers from bios.bin
pc_piix: remove pc-i440fx-1.4 up to pc-i440fx-1.7

Signed-off-by: Stefan Hajnoczi <stefanha@redhat.com>

show more ...


/openbmc/qemu/accel/tcg/user-exec-stub.c
/openbmc/qemu/audio/audio.c
/openbmc/qemu/audio/jackaudio.c
io.c
qcow2.c
qed.c
throttle-groups.c
/openbmc/qemu/contrib/elf2dmp/addrspace.c
/openbmc/qemu/contrib/elf2dmp/addrspace.h
/openbmc/qemu/contrib/elf2dmp/main.c
/openbmc/qemu/contrib/elf2dmp/pdb.c
/openbmc/qemu/contrib/elf2dmp/pdb.h
/openbmc/qemu/contrib/elf2dmp/qemu_elf.c
/openbmc/qemu/contrib/elf2dmp/qemu_elf.h
/openbmc/qemu/docs/about/deprecated.rst
/openbmc/qemu/docs/about/removed-features.rst
/openbmc/qemu/docs/config/q35-emulated.cfg
/openbmc/qemu/docs/config/q35-virtio-graphical.cfg
/openbmc/qemu/docs/devel/loads-stores.rst
/openbmc/qemu/docs/system/arm/emulation.rst
/openbmc/qemu/hw/arm/boot.c
/openbmc/qemu/hw/arm/sbsa-ref.c
/openbmc/qemu/hw/audio/hda-codec.c
/openbmc/qemu/hw/audio/intel-hda.c
/openbmc/qemu/hw/audio/intel-hda.h
/openbmc/qemu/hw/audio/lm4549.c
/openbmc/qemu/hw/audio/lm4549.h
/openbmc/qemu/hw/audio/pl041.c
/openbmc/qemu/hw/display/xlnx_dp.c
/openbmc/qemu/hw/i2c/pm_smbus.c
/openbmc/qemu/hw/i386/pc.c
/openbmc/qemu/hw/i386/pc_piix.c
/openbmc/qemu/hw/input/tsc210x.c
/openbmc/qemu/hw/mips/jazz.c
/openbmc/qemu/hw/scsi/mptsas.c
/openbmc/qemu/hw/scsi/scsi-disk.c
/openbmc/qemu/include/qemu/compiler.h
/openbmc/qemu/include/qemu/osdep.h
/openbmc/qemu/include/qemu/timer.h
/openbmc/qemu/linux-user/elfload.c
/openbmc/qemu/meson.build
/openbmc/qemu/meson_options.txt
/openbmc/qemu/nbd/server.c
/openbmc/qemu/pc-bios/bios.bin
/openbmc/qemu/roms/config.seabios-128k
/openbmc/qemu/scripts/kvm/vmxcap
/openbmc/qemu/scripts/meson-buildoptions.sh
/openbmc/qemu/softmmu/vl.c
/openbmc/qemu/target/arm/cpu.h
/openbmc/qemu/target/arm/helper.c
/openbmc/qemu/target/arm/internals.h
/openbmc/qemu/target/arm/syndrome.h
/openbmc/qemu/target/arm/tcg/a64.decode
/openbmc/qemu/target/arm/tcg/cpu64.c
/openbmc/qemu/target/arm/tcg/helper-a64.c
/openbmc/qemu/target/arm/tcg/helper-a64.h
/openbmc/qemu/target/arm/tcg/hflags.c
/openbmc/qemu/target/arm/tcg/mte_helper.c
/openbmc/qemu/target/arm/tcg/translate-a64.c
/openbmc/qemu/target/arm/tcg/translate.h
/openbmc/qemu/target/i386/cpu.c
/openbmc/qemu/target/i386/cpu.h
/openbmc/qemu/target/i386/kvm/kvm.c
/openbmc/qemu/target/i386/tcg/seg_helper.c
/openbmc/qemu/target/i386/tcg/sysemu/svm_helper.c
/openbmc/qemu/target/i386/tcg/translate.c
/openbmc/qemu/target/m68k/m68k-semi.c
/openbmc/qemu/tests/avocado/replay_linux.py
/openbmc/qemu/tests/qtest/es1370-test.c
/openbmc/qemu/tests/qtest/fuzz/generic_fuzz_configs.h
/openbmc/qemu/tests/qtest/intel-hda-test.c
/openbmc/qemu/tests/qtest/m48t59-test.c
/openbmc/qemu/tests/qtest/netdev-socket.c
/openbmc/qemu/tests/qtest/test-x86-cpuid-compat.c
/openbmc/qemu/tests/tcg/aarch64/sysregs.c
/openbmc/qemu/ui/vnc.c
e2dbca0312-Apr-2023 Paolo Bonzini <pbonzini@redhat.com>

block: mark mixed functions that can suspend

The marking should be extended transitively to all functions that call
these ones, so that static analysis can be done much more efficiently.
However, th

block: mark mixed functions that can suspend

The marking should be extended transitively to all functions that call
these ones, so that static analysis can be done much more efficiently.
However, this is a start and makes it possible to use vrc's path-based
searches to find potential bugs where coroutine_fns call blocking functions.

Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>

show more ...


/openbmc/qemu/accel/tcg/user-exec-stub.c
/openbmc/qemu/audio/jackaudio.c
io.c
qcow2.c
qed.c
throttle-groups.c
/openbmc/qemu/bsd-user/errno_defs.h
/openbmc/qemu/bsd-user/freebsd/target_os_siginfo.h
/openbmc/qemu/bsd-user/freebsd/target_os_stack.h
/openbmc/qemu/bsd-user/freebsd/target_os_user.h
/openbmc/qemu/bsd-user/qemu.h
/openbmc/qemu/bsd-user/signal-common.h
/openbmc/qemu/bsd-user/signal.c
/openbmc/qemu/contrib/elf2dmp/addrspace.c
/openbmc/qemu/contrib/elf2dmp/addrspace.h
/openbmc/qemu/contrib/elf2dmp/main.c
/openbmc/qemu/contrib/elf2dmp/pdb.c
/openbmc/qemu/contrib/elf2dmp/pdb.h
/openbmc/qemu/contrib/elf2dmp/qemu_elf.c
/openbmc/qemu/contrib/elf2dmp/qemu_elf.h
/openbmc/qemu/docs/about/deprecated.rst
/openbmc/qemu/docs/about/removed-features.rst
/openbmc/qemu/docs/config/q35-emulated.cfg
/openbmc/qemu/docs/config/q35-virtio-graphical.cfg
/openbmc/qemu/docs/devel/loads-stores.rst
/openbmc/qemu/docs/devel/reset.rst
/openbmc/qemu/docs/system/arm/emulation.rst
/openbmc/qemu/docs/system/devices/cxl.rst
/openbmc/qemu/host/include/i386/host/cpuinfo.h
/openbmc/qemu/host/include/ppc/host/cpuinfo.h
/openbmc/qemu/hw/acpi/aml-build.c
/openbmc/qemu/hw/acpi/hmat.c
/openbmc/qemu/hw/acpi/nvdimm.c
/openbmc/qemu/hw/arm/boot.c
/openbmc/qemu/hw/arm/sbsa-ref.c
/openbmc/qemu/hw/audio/hda-codec.c
/openbmc/qemu/hw/audio/intel-hda.c
/openbmc/qemu/hw/audio/intel-hda.h
/openbmc/qemu/hw/audio/lm4549.c
/openbmc/qemu/hw/audio/lm4549.h
/openbmc/qemu/hw/audio/pl041.c
/openbmc/qemu/hw/block/hd-geometry.c
/openbmc/qemu/hw/block/pflash_cfi01.c
/openbmc/qemu/hw/char/cadence_uart.c
/openbmc/qemu/hw/char/imx_serial.c
/openbmc/qemu/hw/char/serial.c
/openbmc/qemu/hw/core/generic-loader.c
/openbmc/qemu/hw/core/machine.c
/openbmc/qemu/hw/core/qdev-properties-system.c
/openbmc/qemu/hw/cpu/a15mpcore.c
/openbmc/qemu/hw/cxl/cxl-events.c
/openbmc/qemu/hw/cxl/cxl-host.c
/openbmc/qemu/hw/cxl/cxl-mailbox-utils.c
/openbmc/qemu/hw/display/xlnx_dp.c
/openbmc/qemu/hw/dma/omap_dma.c
/openbmc/qemu/hw/i2c/pm_smbus.c
/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/kvm/xen_xenstore.c
/openbmc/qemu/hw/i386/kvm/xenstore_impl.c
/openbmc/qemu/hw/i386/pc.c
/openbmc/qemu/hw/i386/pc_piix.c
/openbmc/qemu/hw/input/hid.c
/openbmc/qemu/hw/input/tsc2005.c
/openbmc/qemu/hw/input/tsc210x.c
/openbmc/qemu/hw/intc/loongarch_extioi.c
/openbmc/qemu/hw/intc/loongson_liointc.c
/openbmc/qemu/hw/intc/omap_intc.c
/openbmc/qemu/hw/intc/pnv_xive.c
/openbmc/qemu/hw/intc/spapr_xive.c
/openbmc/qemu/hw/intc/spapr_xive_kvm.c
/openbmc/qemu/hw/intc/xive.c
/openbmc/qemu/hw/intc/xive2.c
/openbmc/qemu/hw/ipmi/ipmi_bmc_extern.c
/openbmc/qemu/hw/mem/cxl_type3.c
/openbmc/qemu/hw/mem/cxl_type3_stubs.c
/openbmc/qemu/hw/mips/jazz.c
/openbmc/qemu/hw/misc/imx7_ccm.c
/openbmc/qemu/hw/misc/mac_via.c
/openbmc/qemu/hw/misc/stm32f2xx_syscfg.c
/openbmc/qemu/hw/misc/trace-events
/openbmc/qemu/hw/misc/zynq_slcr.c
/openbmc/qemu/hw/net/cadence_gem.c
/openbmc/qemu/hw/net/dp8393x.c
/openbmc/qemu/hw/net/e1000_regs.h
/openbmc/qemu/hw/net/e1000x_regs.h
/openbmc/qemu/hw/net/fsl_etsec/rings.c
/openbmc/qemu/hw/net/igb_regs.h
/openbmc/qemu/hw/net/mcf_fec.c
/openbmc/qemu/hw/net/rocker/rocker_fp.c
/openbmc/qemu/hw/net/rtl8139.c
/openbmc/qemu/hw/net/smc91c111.c
/openbmc/qemu/hw/net/sungem.c
/openbmc/qemu/hw/net/sunhme.c
/openbmc/qemu/hw/net/virtio-net.c
/openbmc/qemu/hw/net/vmxnet3.c
/openbmc/qemu/hw/net/vmxnet3.h
/openbmc/qemu/hw/nvme/ctrl.c
/openbmc/qemu/hw/nvram/eeprom_at24c.c
/openbmc/qemu/hw/nvram/fw_cfg.c
/openbmc/qemu/hw/pci-bridge/cxl_downstream.c
/openbmc/qemu/hw/pci-bridge/cxl_upstream.c
/openbmc/qemu/hw/pci-bridge/pci_expander_bridge.c
/openbmc/qemu/hw/pci-host/bonito.c
/openbmc/qemu/hw/pci-host/designware.c
/openbmc/qemu/hw/pci-host/dino.c
/openbmc/qemu/hw/pci-host/gpex-acpi.c
/openbmc/qemu/hw/pci-host/gt64120.c
/openbmc/qemu/hw/pci-host/pnv_phb.c
/openbmc/qemu/hw/pci-host/pnv_phb3.c
/openbmc/qemu/hw/pci-host/pnv_phb3_msi.c
/openbmc/qemu/hw/pci-host/pnv_phb4.c
/openbmc/qemu/hw/pci/pcie_aer.c
/openbmc/qemu/hw/pci/shpc.c
/openbmc/qemu/hw/ppc/ppc.c
/openbmc/qemu/hw/ppc/prep_systemio.c
/openbmc/qemu/hw/ppc/spapr.c
/openbmc/qemu/hw/ppc/spapr_hcall.c
/openbmc/qemu/hw/ppc/spapr_nvdimm.c
/openbmc/qemu/hw/ppc/spapr_pci_vfio.c
/openbmc/qemu/hw/rtc/exynos4210_rtc.c
/openbmc/qemu/hw/rx/rx62n.c
/openbmc/qemu/hw/scsi/lsi53c895a.c
/openbmc/qemu/hw/scsi/mfi.h
/openbmc/qemu/hw/scsi/mptsas.c
/openbmc/qemu/hw/scsi/scsi-disk.c
/openbmc/qemu/hw/sh4/sh7750_regs.h
/openbmc/qemu/hw/smbios/smbios.c
/openbmc/qemu/hw/ssi/xilinx_spips.c
/openbmc/qemu/hw/ssi/xlnx-versal-ospi.c
/openbmc/qemu/hw/timer/etraxfs_timer.c
/openbmc/qemu/hw/timer/renesas_tmr.c
/openbmc/qemu/hw/tpm/tpm_tis.h
/openbmc/qemu/hw/tpm/tpm_tis_common.c
/openbmc/qemu/hw/tpm/tpm_tis_i2c.c
/openbmc/qemu/hw/tpm/tpm_tis_isa.c
/openbmc/qemu/hw/tpm/tpm_tis_sysbus.c
/openbmc/qemu/hw/virtio/virtio-crypto.c
/openbmc/qemu/hw/virtio/virtio-mem.c
/openbmc/qemu/hw/virtio/virtio.c
/openbmc/qemu/include/hw/cxl/cxl.h
/openbmc/qemu/include/hw/cxl/cxl_device.h
/openbmc/qemu/include/hw/i386/topology.h
/openbmc/qemu/include/hw/ppc/openpic.h
/openbmc/qemu/include/hw/ppc/spapr.h
/openbmc/qemu/include/qemu/timer.h
/openbmc/qemu/linux-user/elfload.c
/openbmc/qemu/meson.build
/openbmc/qemu/meson_options.txt
/openbmc/qemu/pc-bios/bios.bin
/openbmc/qemu/roms/config.seabios-128k
/openbmc/qemu/scripts/kvm/vmxcap
/openbmc/qemu/scripts/meson-buildoptions.sh
/openbmc/qemu/softmmu/vl.c
/openbmc/qemu/subprojects/berkeley-softfloat-3.wrap
/openbmc/qemu/subprojects/berkeley-testfloat-3.wrap
/openbmc/qemu/subprojects/slirp.wrap
/openbmc/qemu/target/arm/cpu.h
/openbmc/qemu/target/arm/helper.c
/openbmc/qemu/target/arm/internals.h
/openbmc/qemu/target/arm/syndrome.h
/openbmc/qemu/target/arm/tcg/a64.decode
/openbmc/qemu/target/arm/tcg/cpu64.c
/openbmc/qemu/target/arm/tcg/helper-a64.c
/openbmc/qemu/target/arm/tcg/helper-a64.h
/openbmc/qemu/target/arm/tcg/hflags.c
/openbmc/qemu/target/arm/tcg/mte_helper.c
/openbmc/qemu/target/arm/tcg/translate-a64.c
/openbmc/qemu/target/arm/tcg/translate.h
/openbmc/qemu/target/i386/cpu.c
/openbmc/qemu/target/i386/cpu.h
/openbmc/qemu/target/i386/kvm/kvm.c
/openbmc/qemu/target/i386/kvm/xen-emu.c
/openbmc/qemu/target/i386/machine.c
/openbmc/qemu/target/i386/tcg/seg_helper.c
/openbmc/qemu/target/i386/tcg/sysemu/svm_helper.c
/openbmc/qemu/target/i386/tcg/translate.c
/openbmc/qemu/target/m68k/m68k-semi.c
/openbmc/qemu/target/ppc/cpu-models.h
/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/vmx-impl.c.inc
/openbmc/qemu/tests/avocado/replay_linux.py
/openbmc/qemu/tests/qtest/es1370-test.c
/openbmc/qemu/tests/qtest/fuzz/generic_fuzz_configs.h
/openbmc/qemu/tests/qtest/intel-hda-test.c
/openbmc/qemu/tests/qtest/m48t59-test.c
/openbmc/qemu/tests/qtest/netdev-socket.c
/openbmc/qemu/tests/qtest/test-x86-cpuid-compat.c
/openbmc/qemu/tests/tcg/aarch64/sysregs.c
/openbmc/qemu/tests/tcg/i386/system/boot.S
/openbmc/qemu/tests/tcg/i386/x86.csv
/openbmc/qemu/ui/vnc.c
b257845929-Aug-2023 Eric Blake <eblake@redhat.com>

nbd: Prepare for 64-bit request effect lengths

Widen the length field of NBDRequest to 64-bits, although we can
assert that all current uses are still under 32 bits: either because
of NBD_MAX_BUFFER

nbd: Prepare for 64-bit request effect lengths

Widen the length field of NBDRequest to 64-bits, although we can
assert that all current uses are still under 32 bits: either because
of NBD_MAX_BUFFER_SIZE which is even smaller (and where size_t can
still be appropriate, even on 32-bit platforms), or because nothing
ever puts us into NBD_MODE_EXTENDED yet (and while future patches will
allow larger transactions, the lengths in play here are still capped
at 32-bit). There are no semantic changes, other than a typo fix in a
couple of error messages.

Signed-off-by: Eric Blake <eblake@redhat.com>
Message-ID: <20230829175826.377251-23-eblake@redhat.com>
[eblake: fix assertion bug in nbd_co_send_simple_reply]
Reviewed-by: Vladimir Sementsov-Ogievskiy <vsementsov@yandex-team.ru>

show more ...

d95ffb6f29-Aug-2023 Eric Blake <eblake@redhat.com>

nbd: Add types for extended headers

Add the constants and structs necessary for later patches to start
implementing the NBD_OPT_EXTENDED_HEADERS extension in both the client
and server, matching rec

nbd: Add types for extended headers

Add the constants and structs necessary for later patches to start
implementing the NBD_OPT_EXTENDED_HEADERS extension in both the client
and server, matching recent upstream nbd.git (through commit
e6f3b94a934). This patch does not change any existing behavior, but
merely sets the stage for upcoming patches.

This patch does not change the status quo that neither the client nor
server use a packed-struct representation for the request header.
While most of the patch adds new types, there is also some churn for
renaming the existing NBDExtent to NBDExtent32 to contrast it with
NBDExtent64, which I thought was a nicer name than NBDExtentExt.

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

show more ...

297365b429-Aug-2023 Eric Blake <eblake@redhat.com>

nbd/client: Pass mode through to nbd_send_request

Once the 64-bit headers extension is enabled, the data layout we send
over the wire for a client request depends on the mode negotiated with
the ser

nbd/client: Pass mode through to nbd_send_request

Once the 64-bit headers extension is enabled, the data layout we send
over the wire for a client request depends on the mode negotiated with
the server. Rather than adding a parameter to nbd_send_request, we
can add a member to struct NBDRequest, since it already does not
reflect on-wire format. Some callers initialize it directly; many
others rely on a common initialization point during
nbd_co_send_request(). At this point, there is no semantic change.

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

show more ...

ac132d0529-Aug-2023 Eric Blake <eblake@redhat.com>

nbd: Replace bool structured_reply with mode enum

The upcoming patches for 64-bit extensions requires various points in
the protocol to make decisions based on what was negotiated. While we
could e

nbd: Replace bool structured_reply with mode enum

The upcoming patches for 64-bit extensions requires various points in
the protocol to make decisions based on what was negotiated. While we
could easily add a 'bool extended_headers' alongside the existing
'bool structured_reply', this does not scale well if more modes are
added in the future. Better is to expose the mode enum added in the
recent commit bfe04d0a7d out to a wider use in the code base.

Where the code previously checked for structured_reply being set or
clear, it now prefers checking for an inequality; this works because
the nodes are in a continuum of increasing abilities, and allows us to
touch fewer places if we ever insert other modes in the middle of the
enum. There should be no semantic change in this patch.

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

show more ...


nbd.c
/openbmc/qemu/bsd-user/errno_defs.h
/openbmc/qemu/bsd-user/freebsd/target_os_siginfo.h
/openbmc/qemu/bsd-user/freebsd/target_os_stack.h
/openbmc/qemu/bsd-user/freebsd/target_os_user.h
/openbmc/qemu/bsd-user/qemu.h
/openbmc/qemu/bsd-user/signal-common.h
/openbmc/qemu/bsd-user/signal.c
/openbmc/qemu/docs/devel/reset.rst
/openbmc/qemu/docs/system/devices/cxl.rst
/openbmc/qemu/host/include/i386/host/cpuinfo.h
/openbmc/qemu/host/include/ppc/host/cpuinfo.h
/openbmc/qemu/hw/acpi/aml-build.c
/openbmc/qemu/hw/acpi/hmat.c
/openbmc/qemu/hw/acpi/nvdimm.c
/openbmc/qemu/hw/block/hd-geometry.c
/openbmc/qemu/hw/block/pflash_cfi01.c
/openbmc/qemu/hw/char/cadence_uart.c
/openbmc/qemu/hw/char/imx_serial.c
/openbmc/qemu/hw/char/serial.c
/openbmc/qemu/hw/core/generic-loader.c
/openbmc/qemu/hw/core/machine.c
/openbmc/qemu/hw/core/qdev-properties-system.c
/openbmc/qemu/hw/cpu/a15mpcore.c
/openbmc/qemu/hw/cxl/cxl-events.c
/openbmc/qemu/hw/cxl/cxl-host.c
/openbmc/qemu/hw/cxl/cxl-mailbox-utils.c
/openbmc/qemu/hw/dma/omap_dma.c
/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/kvm/xen_xenstore.c
/openbmc/qemu/hw/i386/kvm/xenstore_impl.c
/openbmc/qemu/hw/i386/pc.c
/openbmc/qemu/hw/input/hid.c
/openbmc/qemu/hw/input/tsc2005.c
/openbmc/qemu/hw/intc/loongarch_extioi.c
/openbmc/qemu/hw/intc/loongson_liointc.c
/openbmc/qemu/hw/intc/omap_intc.c
/openbmc/qemu/hw/intc/pnv_xive.c
/openbmc/qemu/hw/intc/spapr_xive.c
/openbmc/qemu/hw/intc/spapr_xive_kvm.c
/openbmc/qemu/hw/intc/xive.c
/openbmc/qemu/hw/intc/xive2.c
/openbmc/qemu/hw/ipmi/ipmi_bmc_extern.c
/openbmc/qemu/hw/mem/cxl_type3.c
/openbmc/qemu/hw/mem/cxl_type3_stubs.c
/openbmc/qemu/hw/misc/imx7_ccm.c
/openbmc/qemu/hw/misc/mac_via.c
/openbmc/qemu/hw/misc/stm32f2xx_syscfg.c
/openbmc/qemu/hw/misc/trace-events
/openbmc/qemu/hw/misc/zynq_slcr.c
/openbmc/qemu/hw/net/cadence_gem.c
/openbmc/qemu/hw/net/dp8393x.c
/openbmc/qemu/hw/net/e1000_regs.h
/openbmc/qemu/hw/net/e1000x_regs.h
/openbmc/qemu/hw/net/fsl_etsec/rings.c
/openbmc/qemu/hw/net/igb_regs.h
/openbmc/qemu/hw/net/mcf_fec.c
/openbmc/qemu/hw/net/rocker/rocker_fp.c
/openbmc/qemu/hw/net/rtl8139.c
/openbmc/qemu/hw/net/smc91c111.c
/openbmc/qemu/hw/net/sungem.c
/openbmc/qemu/hw/net/sunhme.c
/openbmc/qemu/hw/net/virtio-net.c
/openbmc/qemu/hw/net/vmxnet3.c
/openbmc/qemu/hw/net/vmxnet3.h
/openbmc/qemu/hw/nvme/ctrl.c
/openbmc/qemu/hw/nvram/eeprom_at24c.c
/openbmc/qemu/hw/nvram/fw_cfg.c
/openbmc/qemu/hw/pci-bridge/cxl_downstream.c
/openbmc/qemu/hw/pci-bridge/cxl_upstream.c
/openbmc/qemu/hw/pci-bridge/pci_expander_bridge.c
/openbmc/qemu/hw/pci-host/bonito.c
/openbmc/qemu/hw/pci-host/designware.c
/openbmc/qemu/hw/pci-host/dino.c
/openbmc/qemu/hw/pci-host/gpex-acpi.c
/openbmc/qemu/hw/pci-host/gt64120.c
/openbmc/qemu/hw/pci-host/pnv_phb.c
/openbmc/qemu/hw/pci-host/pnv_phb3.c
/openbmc/qemu/hw/pci-host/pnv_phb3_msi.c
/openbmc/qemu/hw/pci-host/pnv_phb4.c
/openbmc/qemu/hw/pci/pcie_aer.c
/openbmc/qemu/hw/pci/shpc.c
/openbmc/qemu/hw/ppc/ppc.c
/openbmc/qemu/hw/ppc/prep_systemio.c
/openbmc/qemu/hw/ppc/spapr.c
/openbmc/qemu/hw/ppc/spapr_hcall.c
/openbmc/qemu/hw/ppc/spapr_nvdimm.c
/openbmc/qemu/hw/ppc/spapr_pci_vfio.c
/openbmc/qemu/hw/rtc/exynos4210_rtc.c
/openbmc/qemu/hw/rx/rx62n.c
/openbmc/qemu/hw/scsi/lsi53c895a.c
/openbmc/qemu/hw/scsi/mfi.h
/openbmc/qemu/hw/sh4/sh7750_regs.h
/openbmc/qemu/hw/smbios/smbios.c
/openbmc/qemu/hw/ssi/xilinx_spips.c
/openbmc/qemu/hw/ssi/xlnx-versal-ospi.c
/openbmc/qemu/hw/timer/etraxfs_timer.c
/openbmc/qemu/hw/timer/renesas_tmr.c
/openbmc/qemu/hw/tpm/tpm_tis.h
/openbmc/qemu/hw/tpm/tpm_tis_common.c
/openbmc/qemu/hw/tpm/tpm_tis_i2c.c
/openbmc/qemu/hw/tpm/tpm_tis_isa.c
/openbmc/qemu/hw/tpm/tpm_tis_sysbus.c
/openbmc/qemu/hw/virtio/virtio-crypto.c
/openbmc/qemu/hw/virtio/virtio-mem.c
/openbmc/qemu/hw/virtio/virtio.c
/openbmc/qemu/include/block/nbd.h
/openbmc/qemu/include/hw/cxl/cxl.h
/openbmc/qemu/include/hw/cxl/cxl_device.h
/openbmc/qemu/include/hw/i386/topology.h
/openbmc/qemu/include/hw/ppc/openpic.h
/openbmc/qemu/include/hw/ppc/spapr.h
/openbmc/qemu/nbd/client-connection.c
/openbmc/qemu/nbd/client.c
/openbmc/qemu/nbd/server.c
/openbmc/qemu/qemu-nbd.c
/openbmc/qemu/subprojects/berkeley-softfloat-3.wrap
/openbmc/qemu/subprojects/berkeley-testfloat-3.wrap
/openbmc/qemu/subprojects/slirp.wrap
/openbmc/qemu/target/i386/cpu.c
/openbmc/qemu/target/i386/cpu.h
/openbmc/qemu/target/i386/kvm/kvm.c
/openbmc/qemu/target/i386/kvm/xen-emu.c
/openbmc/qemu/target/i386/machine.c
/openbmc/qemu/target/i386/tcg/translate.c
/openbmc/qemu/target/ppc/cpu-models.h
/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/vmx-impl.c.inc
/openbmc/qemu/tests/qemu-iotests/common.rc
/openbmc/qemu/tests/qemu-iotests/tests/nbd-multiconn
/openbmc/qemu/tests/tcg/i386/system/boot.S
/openbmc/qemu/tests/tcg/i386/x86.csv
c4c124f321-Sep-2023 Stefan Hajnoczi <stefanha@redhat.com>

Merge tag 'pull-parallels-2023-09-20-v2' of https://src.openvz.org/scm/~den/qemu into staging

Parallels format driver:
* regular calculation of cluster used bitmap of the image file
* cluster alloca

Merge tag 'pull-parallels-2023-09-20-v2' of https://src.openvz.org/scm/~den/qemu into staging

Parallels format driver:
* regular calculation of cluster used bitmap of the image file
* cluster allocation on the base of that bitmap (effectively allocation of
new clusters could be done inside the image if that offset space is unused)
* support of DISCARD and WRITE_ZEROES operations
* image check bugfixes
* unit tests fixes
* unit tests covering new functionality

# -----BEGIN PGP SIGNATURE-----
#
# iQHDBAABCgAtFiEE9vE2f3B8+RUZInytPzClrpN3nJ8FAmUL7u4PHGRlbkBvcGVu
# dnoub3JnAAoJED8wpa6Td5yfdaUL/RW+nOYlFNXlrjOVeasgGLkAKrKBja8O3/As
# aRo0DLZKITK8qbLEBAeTDyCpN9LLwy7WdUR1uT4V54FzE5zZP6HAdBEoj9AsaW/9
# wsTF+oyKeqmXw2y348t+lclp8eREHySecwiVhaxTpG9J2TQfDP/D2yhzRU88P7nH
# rbVZjOF2yOthzW6Y8h8e/LMd8rfODO053tYaMEBngjirBZnhESH3mAm1WB5mYs+q
# 2++4XQZcFFKWFp952MaEDphpwYdh80E65g4vth80JrDTyyMH0KZE9cQqbFb5UgZv
# aV1/DCaH0WTSDbjCaI/SrmqKXrO0Mkd/y/ShoQpTu7qJO/FbaClA58f+KfGE7VBd
# Fa5pM+JN12UVNxnNIF/Oe+wAiVUJYKtLaDMKibj+MUjM5sE/ZRLqzFLktDbQT0kS
# Qvs1u8HTvirJpvxOkJv4cEuNw07JERCzpl/qPF6XkS9rcKeIormhftaaRmjILxS/
# KEmDVNj63g1D0XDY3WTF7LHLNjtXpw==
# =FUWj
# -----END PGP SIGNATURE-----
# gpg: Signature made Thu 21 Sep 2023 03:21:18 EDT
# gpg: using RSA key F6F1367F707CF91519227CAD3F30A5AE93779C9F
# gpg: issuer "den@openvz.org"
# gpg: Good signature from "Denis V. Lunev <den@openvz.org>" [unknown]
# gpg: WARNING: The key's User ID is not certified with a trusted signature!
# gpg: There is no indication that the signature belongs to the owner.
# Primary key fingerprint: F6F1 367F 707C F915 1922 7CAD 3F30 A5AE 9377 9C9F

* tag 'pull-parallels-2023-09-20-v2' of https://src.openvz.org/scm/~den/qemu: (22 commits)
tests: extend test 131 to cover availability of the write-zeroes
parallels: naive implementation of parallels_co_pwrite_zeroes
tests: extend test 131 to cover availability of the discard operation
parallels: naive implementation of parallels_co_pdiscard
parallels: improve readability of allocate_clusters
parallels: naive implementation of allocate_clusters with used bitmap
parallels: update used bitmap in allocate_cluster
parallels: accept multiple clusters in mark_used()
tests: test self-cure of parallels image with duplicated clusters
tests: fix broken deduplication check in parallels format test
parallels: collect bitmap of used clusters at open
parallels: add test which will validate data_off fixes through repair
parallels: fix broken parallels_check_data_off()
tests: ensure that image validation will not cure the corruption
parallels: create mark_used() helper which sets bit in used bitmap
parallels: refactor path when we need to re-check image in parallels_open
parallels: return earlier from parallels_open() function on error
parallels: return earler in fail_format branch in parallels_open()
parallels: invent parallels_opts_prealloc() helper to parse prealloc opts
parallels: fix memory leak in parallels_open()
...

Signed-off-by: Stefan Hajnoczi <stefanha@redhat.com>

show more ...

3da71a2121-Sep-2023 Stefan Hajnoczi <stefanha@redhat.com>

Merge tag 'for-upstream' of https://repo.or.cz/qemu/kevin into staging

Block layer patches

- Graph locking part 4 (node management)
- qemu-img map: report compressed data blocks
- block-backend: pr

Merge tag 'for-upstream' of https://repo.or.cz/qemu/kevin into staging

Block layer patches

- Graph locking part 4 (node management)
- qemu-img map: report compressed data blocks
- block-backend: process I/O in the current AioContext

# -----BEGIN PGP SIGNATURE-----
#
# iQJFBAABCAAvFiEE3D3rFZqa+V09dFb+fwmycsiPL9YFAmULHnURHGt3b2xmQHJl
# ZGhhdC5jb20ACgkQfwmycsiPL9aB5hAAqH8To7WIUtg1rj1PY809ck78ghm18PKg
# TNdN7IbrXQghX5foh2VgPwVVl+JaW2CSrJYWQcAO6AbvFduNIi9iKzI6RT0xKXpb
# b8oQXS7zntFzwBv8ohOU5NSVJOgVmNP4h5qJIMmXgB9ZcLFG40zggVH2qQT7guUf
# 9MAc81kI/d5vvSHY0ZjdHjNOgwG4q1j8yytL7OFqWUfB8sXloUCA9lT7w4jIYD8L
# v2StUOLWB01Zts2o8SCNaFxuajs6wUee8b/DM1cyPyLy4KtOdXvLKhq2NlXpLo2i
# aZFr4PtizTVwrQZIJttA9jqM+QCsDOsiSat3BLNNsKUaCWHZB0rOGLCzMCtisyOo
# 4PzuL4UI21ik2zieO1qVM+Thqvw16kHtp6dD9pGk4X4ogGreGYEIxzBl79luR+AV
# NCRizoeFWTHKymS1tSoKrWT9ZNHcLmwemO6Tt1rMYk9jV3T4uY5e1NwxaUavEfsX
# f8dLfQjhNiySOoDknT1OSerBOVdTXURS2ri5H3GZxrxvJ4jOeFkn52C8r3YlZ3Wp
# Cr9LCUJZeXgwY+Q1JQ3D4VLY8aZ83txpw6XKEy0eTEv5wxkBj5LWhXx7hNb5F3lg
# bqaRYijVJn+P82wVxlftIzMfNeVBFHzFE90taPV5grJjr8lgrGBFmD7Puc97kfDX
# oTDBwRxJeew=
# =qTNA
# -----END PGP SIGNATURE-----
# gpg: Signature made Wed 20 Sep 2023 12:31:49 EDT
# gpg: using RSA key DC3DEB159A9AF95D3D7456FE7F09B272C88F2FD6
# gpg: issuer "kwolf@redhat.com"
# gpg: Good signature from "Kevin Wolf <kwolf@redhat.com>" [full]
# Primary key fingerprint: DC3D EB15 9A9A F95D 3D74 56FE 7F09 B272 C88F 2FD6

* tag 'for-upstream' of https://repo.or.cz/qemu/kevin: (28 commits)
block: mark aio_poll as non-coroutine
block-backend: process zoned requests in the current AioContext
block-backend: process I/O in the current AioContext
test-bdrv-drain: avoid race with BH in IOThread drain test
block: remove AIOCBInfo->get_aio_context()
qemu-img: map: report compressed data blocks
block: add BDRV_BLOCK_COMPRESSED flag for bdrv_block_status()
block: Mark bdrv_add/del_child() and caller GRAPH_WRLOCK
block: Mark bdrv_unref_child() GRAPH_WRLOCK
block: Mark bdrv_root_unref_child() GRAPH_WRLOCK
block: Take graph rdlock in bdrv_change_aio_context()
block: Take graph rdlock in bdrv_drop_intermediate()
block: Mark bdrv_parent_cb_change_media() GRAPH_RDLOCK
block: Mark bdrv_child_perm() GRAPH_RDLOCK
block: Mark bdrv_get_cumulative_perm() and callers GRAPH_RDLOCK
block: Mark bdrv_parent_perms_conflict() and callers GRAPH_RDLOCK
block: Mark bdrv_attach_child() GRAPH_WRLOCK
block: Call transaction callbacks with lock held
block: Mark bdrv_attach_child_common() GRAPH_WRLOCK
block: Mark bdrv_replace_child_tran() GRAPH_WRLOCK
...

Signed-off-by: Stefan Hajnoczi <stefanha@redhat.com>

show more ...


/openbmc/qemu/.gitlab-ci.d/base.yml
/openbmc/qemu/.gitlab-ci.d/cirrus.yml
/openbmc/qemu/.gitlab-ci.d/cirrus/build.yml
/openbmc/qemu/block.c
blklogwrites.c
blkverify.c
block-backend.c
copy-before-write.c
crypto.c
graph-lock.c
io.c
mirror.c
preallocate.c
qcow.c
qcow2.c
quorum.c
replication.c
snapshot.c
stream.c
vmdk.c
/openbmc/qemu/blockdev.c
/openbmc/qemu/blockjob.c
/openbmc/qemu/hw/nvme/ctrl.c
/openbmc/qemu/include/block/aio.h
/openbmc/qemu/include/block/block-common.h
/openbmc/qemu/include/block/block-global-state.h
/openbmc/qemu/include/block/block-io.h
/openbmc/qemu/include/block/block_int-common.h
/openbmc/qemu/include/block/block_int-global-state.h
/openbmc/qemu/include/sysemu/block-backend-global-state.h
/openbmc/qemu/python/qemu/machine/machine.py
/openbmc/qemu/qapi/block-core.json
/openbmc/qemu/qemu-img.c
/openbmc/qemu/scripts/block-coroutine-wrapper.py
/openbmc/qemu/softmmu/dma-helpers.c
/openbmc/qemu/tests/avocado/avocado_qemu/__init__.py
/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/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-loongarch-cross.docker
/openbmc/qemu/tests/docker/dockerfiles/debian-ppc64el-cross.docker
/openbmc/qemu/tests/docker/dockerfiles/debian-s390x-cross.docker
/openbmc/qemu/tests/lcitool/libvirt-ci
/openbmc/qemu/tests/lcitool/refresh
/openbmc/qemu/tests/qemu-iotests/051.pc.out
/openbmc/qemu/tests/qemu-iotests/122.out
/openbmc/qemu/tests/qemu-iotests/146.out
/openbmc/qemu/tests/qemu-iotests/154.out
/openbmc/qemu/tests/qemu-iotests/179.out
/openbmc/qemu/tests/qemu-iotests/209.out
/openbmc/qemu/tests/qemu-iotests/221.out
/openbmc/qemu/tests/qemu-iotests/223.out
/openbmc/qemu/tests/qemu-iotests/241.out
/openbmc/qemu/tests/qemu-iotests/244.out
/openbmc/qemu/tests/qemu-iotests/252.out
/openbmc/qemu/tests/qemu-iotests/253.out
/openbmc/qemu/tests/qemu-iotests/274.out
/openbmc/qemu/tests/qemu-iotests/tests/nbd-qemu-allocation.out
/openbmc/qemu/tests/qemu-iotests/tests/qemu-img-bitmaps.out
/openbmc/qemu/tests/qtest/libqtest.c
/openbmc/qemu/tests/qtest/microbit-test.c
/openbmc/qemu/tests/unit/test-bdrv-drain.c
/openbmc/qemu/tests/unit/test-bdrv-graph-mod.c
/openbmc/qemu/tests/unit/test-block-iothread.c
/openbmc/qemu/util/thread-pool.c
416af85621-Sep-2023 Stefan Hajnoczi <stefanha@redhat.com>

Merge tag 'pull-block-2023-09-01' of https://gitlab.com/hreitz/qemu into staging

Block patches

- Fix for file-posix's zoning code crashing on I/O errors
- Throttling refactoring

# -----BEGIN PGP S

Merge tag 'pull-block-2023-09-01' of https://gitlab.com/hreitz/qemu into staging

Block patches

- Fix for file-posix's zoning code crashing on I/O errors
- Throttling refactoring

# -----BEGIN PGP SIGNATURE-----
#
# iQJGBAABCAAwFiEEy2LXoO44KeRfAE00ofpA0JgBnN8FAmTxnMISHGhyZWl0ekBy
# ZWRoYXQuY29tAAoJEKH6QNCYAZzfYkUP+gMG9hhzvgjj/tw9rEBQjciihzcQmqQJ
# 2Mm37RH2jj5bnnTdaTbMkcRRwVhncYSCwK9q5EYVbZmU9C/v4YJmsSEQlcl7wVou
# hbPUv6NHaBrJZX9nxNSa2RHui6pZMLKa/D0rJVB7NjYBrrRtiPo7kiLVQYjYXa2g
# kcCCfY4t3Z2RxOP31mMXRjYlhJE9bIuZdTEndrKme8KS2JGPZEJ9xjkoW1tj96EX
# oc/Cg2vk7AEtsFYA0bcD8fTFkBDJEwyYl3usu7Tk24pvH16jk7wFSqRVSsDMfnER
# tG8X3mHLIY0hbSkpzdHJdXINvZ6FWpQb0CGzIKr+pMiuWVdWr1HglBr0m4pVF+Y4
# A6AI6VX2JJgtacypoDyCZC9mzs1jIdeiwq9v5dyuikJ6ivTwEEoeoSLnLTN3AjXn
# 0mtQYzgCg5Gd6+rTo7XjSO9SSlbaVrDl/B2eXle6tmIFT5k+86fh0hc+zTmP8Rkw
# Knbc+5Le95wlMrOUNx2GhXrTGwX510hLxKboho/LITxtAzqvXnEJKrYbnkm3WPnw
# wfHnR5VQH1NKEpiH/p33og6OV/vu9e7vgp0ZNZV136SnzC90C1zMUwg2simJW701
# 34EtN0XBX8XBKrxfe7KscV9kRE8wrWWJVbhp+WOcQEomGI8uraxzWqDIk/v7NZXv
# m4XBscaB+Iri
# =oKgk
# -----END PGP SIGNATURE-----
# gpg: Signature made Fri 01 Sep 2023 04:11:46 EDT
# gpg: using RSA key CB62D7A0EE3829E45F004D34A1FA40D098019CDF
# gpg: issuer "hreitz@redhat.com"
# gpg: Good signature from "Hanna Reitz <hreitz@redhat.com>" [unknown]
# gpg: WARNING: The key's User ID is not certified with a trusted signature!
# gpg: There is no indication that the signature belongs to the owner.
# Primary key fingerprint: CB62 D7A0 EE38 29E4 5F00 4D34 A1FA 40D0 9801 9CDF

* tag 'pull-block-2023-09-01' of https://gitlab.com/hreitz/qemu:
tests/file-io-error: New test
file-posix: Simplify raw_co_prw's 'out' zone code
file-posix: Fix zone update in I/O error path
file-posix: Check bs->bl.zoned for zone info
file-posix: Clear bs->bl.zoned on error
block/throttle-groups: Use ThrottleDirection instread of bool is_write
fsdev: Use ThrottleDirection instread of bool is_write
throttle: use THROTTLE_MAX/ARRAY_SIZE for hard code
throttle: use enum ThrottleDirection instead of bool is_write
cryptodev: use NULL throttle timer cb for read direction
test-throttle: test read only and write only
throttle: support read-only and write-only
test-throttle: use enum ThrottleDirection
throttle: introduce enum ThrottleDirection

Signed-off-by: Stefan Hajnoczi <stefanha@redhat.com>

show more ...


/openbmc/qemu/MAINTAINERS
/openbmc/qemu/accel/tcg/cputlb.c
/openbmc/qemu/accel/tcg/tcg-accel-ops-mttcg.c
/openbmc/qemu/accel/tcg/tcg-runtime-gvec.c
/openbmc/qemu/accel/tcg/tcg-runtime.h
/openbmc/qemu/backends/cryptodev.c
/openbmc/qemu/backends/hostmem-file.c
/openbmc/qemu/backends/tpm/tpm_util.c
block-backend.c
file-posix.c
throttle-groups.c
throttle.c
/openbmc/qemu/contrib/vhost-user-gpu/vhost-user-gpu.c
/openbmc/qemu/contrib/vhost-user-gpu/virgl.c
/openbmc/qemu/contrib/vhost-user-gpu/vugpu.h
/openbmc/qemu/crypto/aes.c
/openbmc/qemu/crypto/clmul.c
/openbmc/qemu/crypto/meson.build
/openbmc/qemu/crypto/sm4.c
/openbmc/qemu/docs/devel/multi-process.rst
/openbmc/qemu/docs/devel/vfio-migration.rst
/openbmc/qemu/docs/interop/vhost-user-gpu.rst
/openbmc/qemu/docs/system/index.rst
/openbmc/qemu/docs/system/vm-templating.rst
/openbmc/qemu/fpu/softfloat-parts.c.inc
/openbmc/qemu/fpu/softfloat.c
/openbmc/qemu/fsdev/qemu-fsdev-throttle.c
/openbmc/qemu/fsdev/qemu-fsdev-throttle.h
/openbmc/qemu/hmp-commands.hx
/openbmc/qemu/host/include/aarch64/host/cpuinfo.h
/openbmc/qemu/host/include/aarch64/host/crypto/clmul.h
/openbmc/qemu/host/include/generic/host/crypto/clmul.h
/openbmc/qemu/host/include/i386/host/cpuinfo.h
/openbmc/qemu/host/include/i386/host/crypto/clmul.h
/openbmc/qemu/host/include/x86_64/host/crypto/clmul.h
/openbmc/qemu/hw/9pfs/cofile.c
/openbmc/qemu/hw/acpi/nvdimm.c
/openbmc/qemu/hw/char/riscv_htif.c
/openbmc/qemu/hw/core/machine.c
/openbmc/qemu/hw/core/vm-change-state-handler.c
/openbmc/qemu/hw/display/vhost-user-gpu.c
/openbmc/qemu/hw/display/virtio-gpu.c
/openbmc/qemu/hw/hppa/machine.c
/openbmc/qemu/hw/i386/trace-events
/openbmc/qemu/hw/i386/vmmouse.c
/openbmc/qemu/hw/intc/pnv_xive.c
/openbmc/qemu/hw/intc/riscv_aclint.c
/openbmc/qemu/hw/intc/riscv_aplic.c
/openbmc/qemu/hw/intc/riscv_imsic.c
/openbmc/qemu/hw/mem/nvdimm.c
/openbmc/qemu/hw/net/e1000e_core.c
/openbmc/qemu/hw/net/fsl_etsec/rings.c
/openbmc/qemu/hw/net/igb_core.c
/openbmc/qemu/hw/net/igb_regs.h
/openbmc/qemu/hw/net/rocker/rocker_of_dpa.c
/openbmc/qemu/hw/net/trace-events
/openbmc/qemu/hw/net/vhost_net.c
/openbmc/qemu/hw/net/virtio-net.c
/openbmc/qemu/hw/net/vmxnet3.c
/openbmc/qemu/hw/nvme/Kconfig
/openbmc/qemu/hw/nvme/ctrl.c
/openbmc/qemu/hw/ppc/meson.build
/openbmc/qemu/hw/ppc/spapr.c
/openbmc/qemu/hw/ppc/spapr_numa.c
/openbmc/qemu/hw/ppc/spapr_nvdimm.c
/openbmc/qemu/hw/ppc/spapr_pci.c
/openbmc/qemu/hw/riscv/virt.c
/openbmc/qemu/hw/s390x/s390-virtio-ccw.c
/openbmc/qemu/hw/vfio/common.c
/openbmc/qemu/hw/vfio/migration.c
/openbmc/qemu/hw/vfio/pci-quirks.c
/openbmc/qemu/hw/vfio/pci.c
/openbmc/qemu/hw/vfio/pci.h
/openbmc/qemu/hw/vfio/trace-events
/openbmc/qemu/include/block/throttle-groups.h
/openbmc/qemu/include/crypto/aes.h
/openbmc/qemu/include/crypto/clmul.h
/openbmc/qemu/include/crypto/sm4.h
/openbmc/qemu/include/exec/cpu-defs.h
/openbmc/qemu/include/exec/memory.h
/openbmc/qemu/include/exec/ram_addr.h
/openbmc/qemu/include/exec/user/thunk.h
/openbmc/qemu/include/fpu/softfloat.h
/openbmc/qemu/include/hw/core/cpu.h
/openbmc/qemu/include/hw/mem/nvdimm.h
/openbmc/qemu/include/hw/pci-host/spapr.h
/openbmc/qemu/include/hw/ppc/spapr.h
/openbmc/qemu/include/hw/vfio/vfio-common.h
/openbmc/qemu/include/migration/register.h
/openbmc/qemu/include/net/net.h
/openbmc/qemu/include/qemu/cpuid.h
/openbmc/qemu/include/qemu/plugin-memory.h
/openbmc/qemu/include/qemu/throttle.h
/openbmc/qemu/include/qemu/typedefs.h
/openbmc/qemu/include/standard-headers/linux/fuse.h
/openbmc/qemu/include/standard-headers/linux/vhost_types.h
/openbmc/qemu/include/standard-headers/linux/virtio_net.h
/openbmc/qemu/include/sysemu/runstate.h
/openbmc/qemu/include/tcg/tcg-op-gvec-common.h
/openbmc/qemu/include/ui/console.h
/openbmc/qemu/include/ui/surface.h
/openbmc/qemu/linux-headers/asm-arm64/bitsperlong.h
/openbmc/qemu/linux-headers/asm-generic/unistd.h
/openbmc/qemu/linux-headers/asm-mips/unistd_n32.h
/openbmc/qemu/linux-headers/asm-mips/unistd_n64.h
/openbmc/qemu/linux-headers/asm-mips/unistd_o32.h
/openbmc/qemu/linux-headers/asm-powerpc/unistd_32.h
/openbmc/qemu/linux-headers/asm-powerpc/unistd_64.h
/openbmc/qemu/linux-headers/asm-riscv/bitsperlong.h
/openbmc/qemu/linux-headers/asm-riscv/kvm.h
/openbmc/qemu/linux-headers/asm-s390/kvm.h
/openbmc/qemu/linux-headers/asm-s390/unistd_32.h
/openbmc/qemu/linux-headers/asm-s390/unistd_64.h
/openbmc/qemu/linux-headers/asm-x86/mman.h
/openbmc/qemu/linux-headers/asm-x86/unistd_32.h
/openbmc/qemu/linux-headers/asm-x86/unistd_64.h
/openbmc/qemu/linux-headers/asm-x86/unistd_x32.h
/openbmc/qemu/linux-headers/linux/kvm.h
/openbmc/qemu/linux-headers/linux/stddef.h
/openbmc/qemu/linux-headers/linux/userfaultfd.h
/openbmc/qemu/linux-headers/linux/vfio.h
/openbmc/qemu/linux-user/hppa/signal.c
/openbmc/qemu/linux-user/loongarch64/signal.c
/openbmc/qemu/linux-user/riscv/signal.c
/openbmc/qemu/linux-user/syscall.c
/openbmc/qemu/meson.build
/openbmc/qemu/meson_options.txt
/openbmc/qemu/migration/migration.c
/openbmc/qemu/migration/migration.h
/openbmc/qemu/migration/savevm.c
/openbmc/qemu/migration/savevm.h
/openbmc/qemu/migration/target.c
/openbmc/qemu/net/af-xdp.c
/openbmc/qemu/net/clients.h
/openbmc/qemu/net/dump.c
/openbmc/qemu/net/meson.build
/openbmc/qemu/net/net.c
/openbmc/qemu/net/netmap.c
/openbmc/qemu/net/tap-bsd.c
/openbmc/qemu/net/tap-linux.c
/openbmc/qemu/net/tap-linux.h
/openbmc/qemu/net/tap-solaris.c
/openbmc/qemu/net/tap-stub.c
/openbmc/qemu/net/tap-win32.c
/openbmc/qemu/net/tap.c
/openbmc/qemu/net/tap_int.h
/openbmc/qemu/net/vhost-vdpa.c
/openbmc/qemu/pc-bios/edk2-aarch64-code.fd.bz2
/openbmc/qemu/pc-bios/edk2-arm-code.fd.bz2
/openbmc/qemu/pc-bios/edk2-i386-code.fd.bz2
/openbmc/qemu/pc-bios/edk2-i386-secure-code.fd.bz2
/openbmc/qemu/pc-bios/edk2-riscv-code.fd.bz2
/openbmc/qemu/pc-bios/edk2-riscv-vars.fd.bz2
/openbmc/qemu/pc-bios/edk2-x86_64-code.fd.bz2
/openbmc/qemu/pc-bios/edk2-x86_64-microvm.fd.bz2
/openbmc/qemu/pc-bios/edk2-x86_64-secure-code.fd.bz2
/openbmc/qemu/pc-bios/hppa-firmware.img
/openbmc/qemu/plugins/api.c
/openbmc/qemu/qapi/net.json
/openbmc/qemu/qapi/qom.json
/openbmc/qemu/qemu-options.hx
/openbmc/qemu/roms/edk2
/openbmc/qemu/roms/edk2-build.config
/openbmc/qemu/roms/edk2-build.py
/openbmc/qemu/roms/seabios-hppa
/openbmc/qemu/scripts/ci/org.centos/stream/8/x86_64/configure
/openbmc/qemu/scripts/meson-buildoptions.sh
/openbmc/qemu/softmmu/async-teardown.c
/openbmc/qemu/softmmu/memory.c
/openbmc/qemu/softmmu/physmem.c
/openbmc/qemu/softmmu/runstate.c
/openbmc/qemu/target/arm/tcg/crypto_helper.c
/openbmc/qemu/target/arm/tcg/mve_helper.c
/openbmc/qemu/target/arm/tcg/translate.c
/openbmc/qemu/target/arm/tcg/vec_helper.c
/openbmc/qemu/target/arm/tcg/vec_internal.h
/openbmc/qemu/target/hppa/cpu.h
/openbmc/qemu/target/hppa/helper.h
/openbmc/qemu/target/hppa/insns.decode
/openbmc/qemu/target/hppa/int_helper.c
/openbmc/qemu/target/hppa/mem_helper.c
/openbmc/qemu/target/hppa/op_helper.c
/openbmc/qemu/target/hppa/translate.c
/openbmc/qemu/target/i386/cpu.c
/openbmc/qemu/target/i386/ops_sse.h
/openbmc/qemu/target/loongarch/cpu.c
/openbmc/qemu/target/loongarch/cpu.h
/openbmc/qemu/target/loongarch/disas.c
/openbmc/qemu/target/loongarch/gdbstub.c
/openbmc/qemu/target/loongarch/helper.h
/openbmc/qemu/target/loongarch/insn_trans/trans_vec.c.inc
/openbmc/qemu/target/loongarch/insns.decode
/openbmc/qemu/target/loongarch/internals.h
/openbmc/qemu/target/loongarch/machine.c
/openbmc/qemu/target/loongarch/meson.build
/openbmc/qemu/target/loongarch/translate.c
/openbmc/qemu/target/loongarch/translate.h
/openbmc/qemu/target/loongarch/vec.h
/openbmc/qemu/target/loongarch/vec_helper.c
/openbmc/qemu/target/ppc/int_helper.c
/openbmc/qemu/target/riscv/cpu.c
/openbmc/qemu/target/riscv/cpu_bits.h
/openbmc/qemu/target/riscv/cpu_cfg.h
/openbmc/qemu/target/riscv/cpu_helper.c
/openbmc/qemu/target/riscv/crypto_helper.c
/openbmc/qemu/target/riscv/csr.c
/openbmc/qemu/target/riscv/debug.c
/openbmc/qemu/target/riscv/debug.h
/openbmc/qemu/target/riscv/helper.h
/openbmc/qemu/target/riscv/insn32.decode
/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_rvzfa.c.inc
/openbmc/qemu/target/riscv/kvm.c
/openbmc/qemu/target/riscv/kvm_riscv.h
/openbmc/qemu/target/riscv/meson.build
/openbmc/qemu/target/riscv/pmp.c
/openbmc/qemu/target/riscv/translate.c
/openbmc/qemu/target/riscv/vcrypto_helper.c
/openbmc/qemu/target/riscv/vector_helper.c
/openbmc/qemu/target/riscv/vector_internals.c
/openbmc/qemu/target/riscv/vector_internals.h
/openbmc/qemu/target/s390x/cpu_features.h
/openbmc/qemu/target/s390x/cpu_features_def.h.inc
/openbmc/qemu/target/s390x/cpu_models.c
/openbmc/qemu/target/s390x/gen-features.c
/openbmc/qemu/target/s390x/kvm/kvm.c
/openbmc/qemu/target/s390x/tcg/vec_int_helper.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-insn-defs.c.inc
/openbmc/qemu/tcg/loongarch64/tcg-target-con-set.h
/openbmc/qemu/tcg/loongarch64/tcg-target-con-str.h
/openbmc/qemu/tcg/loongarch64/tcg-target.c.inc
/openbmc/qemu/tcg/loongarch64/tcg-target.h
/openbmc/qemu/tcg/loongarch64/tcg-target.opc.h
/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-op-gvec.c
/openbmc/qemu/tcg/tcg.c
/openbmc/qemu/tcg/tci/tcg-target.c.inc
/openbmc/qemu/tests/data/acpi/virt/SSDT.memhp
/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-armel-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.docker
/openbmc/qemu/tests/docker/dockerfiles/opensuse-leap.docker
/openbmc/qemu/tests/docker/dockerfiles/ubuntu2004.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/tests/file-io-error
/openbmc/qemu/tests/qemu-iotests/tests/file-io-error.out
/openbmc/qemu/tests/qtest/libqos/igb.c
/openbmc/qemu/tests/qtest/pflash-cfi02-test.c
/openbmc/qemu/tests/tcg/m68k/Makefile.target
/openbmc/qemu/tests/tcg/m68k/denormal.c
/openbmc/qemu/tests/unit/test-throttle.c
/openbmc/qemu/ui/cocoa.m
/openbmc/qemu/ui/console-gl.c
/openbmc/qemu/ui/console-priv.h
/openbmc/qemu/ui/console-vc.c
/openbmc/qemu/ui/console.c
/openbmc/qemu/ui/curses.c
/openbmc/qemu/ui/gtk.c
/openbmc/qemu/ui/meson.build
/openbmc/qemu/ui/sdl2-input.c
/openbmc/qemu/ui/sdl2.c
/openbmc/qemu/ui/spice-display.c
/openbmc/qemu/ui/vnc.c
/openbmc/qemu/util/cpuinfo-aarch64.c
/openbmc/qemu/util/cpuinfo-i386.c
/openbmc/qemu/util/oslib-posix.c
/openbmc/qemu/util/throttle.c
a98b260a18-Sep-2023 Denis V. Lunev <den@openvz.org>

parallels: naive implementation of parallels_co_pwrite_zeroes

The zero flag is missed in the Parallels format specification. We can
resort to discard if we have no backing file.

Signed-off-by: Deni

parallels: naive implementation of parallels_co_pwrite_zeroes

The zero flag is missed in the Parallels format specification. We can
resort to discard if we have no backing file.

Signed-off-by: Denis V. Lunev <den@openvz.org>
Reviewed-by: Alexander Ivanov <alexander.ivanov@virtuozzo.com>

show more ...

c54fb43518-Sep-2023 Denis V. Lunev <den@openvz.org>

parallels: naive implementation of parallels_co_pdiscard

* Discarding with backing stores is not supported by the format.
* There is no buffering/queueing of the discard operation.
* Only operations

parallels: naive implementation of parallels_co_pdiscard

* Discarding with backing stores is not supported by the format.
* There is no buffering/queueing of the discard operation.
* Only operations aligned to the cluster are supported.

Signed-off-by: Denis V. Lunev <den@openvz.org>
Reviewed-by: Alexander Ivanov <alexander.ivanov@virtuozzo.com>

show more ...

66d201dd18-Sep-2023 Denis V. Lunev <den@openvz.org>

parallels: improve readability of allocate_clusters

Replace 'space' representing the amount of data to preallocate with
'bytes'.

Rationale:
* 'space' at each place is converted to bytes
* the unit

parallels: improve readability of allocate_clusters

Replace 'space' representing the amount of data to preallocate with
'bytes'.

Rationale:
* 'space' at each place is converted to bytes
* the unit is more close to the variable name

Signed-off-by: Denis V. Lunev <den@openvz.org>
Reviewed-by: Alexander Ivanov <alexander.ivanov@virtuozzo.com>

show more ...

3ac10d1918-Sep-2023 Denis V. Lunev <den@openvz.org>

parallels: naive implementation of allocate_clusters with used bitmap

The access to the bitmap is not optimized completely.

Signed-off-by: Denis V. Lunev <den@openvz.org>
Reviewed-by: Alexander Iva

parallels: naive implementation of allocate_clusters with used bitmap

The access to the bitmap is not optimized completely.

Signed-off-by: Denis V. Lunev <den@openvz.org>
Reviewed-by: Alexander Ivanov <alexander.ivanov@virtuozzo.com>

show more ...

eeb1e6dc18-Sep-2023 Denis V. Lunev <den@openvz.org>

parallels: update used bitmap in allocate_cluster

We should extend the bitmap if the file is extended and set the bit in
the image used bitmap once the cluster is allocated. Sanity check at
that mom

parallels: update used bitmap in allocate_cluster

We should extend the bitmap if the file is extended and set the bit in
the image used bitmap once the cluster is allocated. Sanity check at
that moment also looks like a good idea.

Signed-off-by: Denis V. Lunev <den@openvz.org>
Reviewed-by: Alexander Ivanov <alexander.ivanov@virtuozzo.com>

show more ...

73194d3f18-Sep-2023 Denis V. Lunev <den@openvz.org>

parallels: accept multiple clusters in mark_used()

This would be useful in the next patch in allocate_clusters(). This
change would not imply serious performance drawbacks as usually image
is full o

parallels: accept multiple clusters in mark_used()

This would be useful in the next patch in allocate_clusters(). This
change would not imply serious performance drawbacks as usually image
is full of data or are at the end of the bitmap.

Signed-off-by: Denis V. Lunev <den@openvz.org>
Reviewed-by: Alexander Ivanov <alexander.ivanov@virtuozzo.com>

show more ...

e185100f18-Sep-2023 Denis V. Lunev <den@openvz.org>

parallels: collect bitmap of used clusters at open

If the operation is failed, we need to check image consistency if the
problem is not about memory allocation.

Bitmap adjustments in allocate_clust

parallels: collect bitmap of used clusters at open

If the operation is failed, we need to check image consistency if the
problem is not about memory allocation.

Bitmap adjustments in allocate_cluster are not performed yet.
They worth to be separate. This was proven useful during debug of this
series. Kept as is for future bissecting.

It should be specifically noted that used bitmap must be recalculated
if data_off has been fixed during image consistency check.

Signed-off-by: Denis V. Lunev <den@openvz.org>
Reviewed-by: Alexander Ivanov <alexander.ivanov@virtuozzo.com>

show more ...

6f2206b018-Sep-2023 Denis V. Lunev <den@openvz.org>

parallels: fix broken parallels_check_data_off()

Once we have repaired data_off field in the header we should update
s->data_start which is calculated on the base of it.

Signed-off-by: Denis V. Lun

parallels: fix broken parallels_check_data_off()

Once we have repaired data_off field in the header we should update
s->data_start which is calculated on the base of it.

Signed-off-by: Denis V. Lunev <den@openvz.org>
Reviewed-by: Alexander Ivanov <alexander.ivanov@virtuozzo.com>

show more ...

a398275e18-Sep-2023 Denis V. Lunev <den@openvz.org>

parallels: create mark_used() helper which sets bit in used bitmap

This functionality is used twice already and next patch will add more
code with it.

Signed-off-by: Denis V. Lunev <den@openvz.org>

parallels: create mark_used() helper which sets bit in used bitmap

This functionality is used twice already and next patch will add more
code with it.

Signed-off-by: Denis V. Lunev <den@openvz.org>
Reviewed-by: Alexander Ivanov <alexander.ivanov@virtuozzo.com>

show more ...

8f5f532618-Sep-2023 Denis V. Lunev <den@openvz.org>

parallels: refactor path when we need to re-check image in parallels_open

More conditions follows thus the check should be more scalable.

Signed-off-by: Denis V. Lunev <den@openvz.org>
Reviewed-by:

parallels: refactor path when we need to re-check image in parallels_open

More conditions follows thus the check should be more scalable.

Signed-off-by: Denis V. Lunev <den@openvz.org>
Reviewed-by: Alexander Ivanov <alexander.ivanov@virtuozzo.com>

show more ...

e17b9d0818-Sep-2023 Denis V. Lunev <den@openvz.org>

parallels: return earlier from parallels_open() function on error

At the beginning of the function we can return immediately until we
really allocate s->header.

Signed-off-by: Denis V. Lunev <den@o

parallels: return earlier from parallels_open() function on error

At the beginning of the function we can return immediately until we
really allocate s->header.

Signed-off-by: Denis V. Lunev <den@openvz.org>
Reviewed-by: Alexander Ivanov <alexander.ivanov@virtuozzo.com>

show more ...

9c39878118-Sep-2023 Denis V. Lunev <den@openvz.org>

parallels: return earler in fail_format branch in parallels_open()

We do not need to perform any deallocation/cleanup if wrong format is
detected.

Signed-off-by: Denis V. Lunev <den@openvz.org>
Rev

parallels: return earler in fail_format branch in parallels_open()

We do not need to perform any deallocation/cleanup if wrong format is
detected.

Signed-off-by: Denis V. Lunev <den@openvz.org>
Reviewed-by: Alexander Ivanov <alexander.ivanov@virtuozzo.com>

show more ...

93361b7e18-Sep-2023 Denis V. Lunev <den@openvz.org>

parallels: invent parallels_opts_prealloc() helper to parse prealloc opts

This patch creates above mentioned helper and moves its usage to the
beginning of parallels_open(). This simplifies parallel

parallels: invent parallels_opts_prealloc() helper to parse prealloc opts

This patch creates above mentioned helper and moves its usage to the
beginning of parallels_open(). This simplifies parallels_open() a bit.

The patch also ensures that we store prealloc_size on block driver state
always in sectors. This makes code cleaner and avoids wrong opinion at
the assignment that the value is in bytes.

Signed-off-by: Denis V. Lunev <den@openvz.org>
Reviewed-by: Alexander Ivanov <alexander.ivanov@virtuozzo.com>

show more ...

c74cd7bd18-Sep-2023 Denis V. Lunev <den@openvz.org>

parallels: fix memory leak in parallels_open()

We should free opts allocated through qemu_opts_create() at the end.

Signed-off-by: Denis V. Lunev <den@openvz.org>
Reviewed-by: Alexander Ivanov <ale

parallels: fix memory leak in parallels_open()

We should free opts allocated through qemu_opts_create() at the end.

Signed-off-by: Denis V. Lunev <den@openvz.org>
Reviewed-by: Alexander Ivanov <alexander.ivanov@virtuozzo.com>

show more ...

73f3e13618-Sep-2023 Denis V. Lunev <den@openvz.org>

parallels: mark driver as supporting CBT

Parallels driver indeed support Parallels Dirty Bitmap Feature in
read-only mode. The patch adds bdrv_supports_persistent_dirty_bitmap()
callback which alway

parallels: mark driver as supporting CBT

Parallels driver indeed support Parallels Dirty Bitmap Feature in
read-only mode. The patch adds bdrv_supports_persistent_dirty_bitmap()
callback which always return 1 to indicate that.

This will allow to copy CBT from Parallels image with qemu-img.

Note: read-write support is signalled through
bdrv_co_can_store_new_dirty_bitmap() and is different.

Signed-off-by: Denis V. Lunev <den@openvz.org>
Reviewed-by: Alexander Ivanov <alexander.ivanov@virtuozzo.com>

show more ...

12345678910>>...248