[pve-devel] [PATCH-SERIES qemu-server 00/15] preparation for blockdev, part two

Fiona Ebner f.ebner at proxmox.com
Mon Jun 23 17:44:10 CEST 2025


Set default timeouts for blockdev QMP commands (picked up the series
from [0] and rebased).

Factor out more code into dedicated modules, most notably for qemu-img
and OVMF.

Add helper to generate blockdev commandline for EFI disks based on
Alexandre's patch, carrying along the necessary workarounds.

New version of final patch to switch to -blockdev, should not be
applied yet, support for all operations is still missing, that will
follow in a separate series.

[0]: https://lore.proxmox.com/pve-devel/20241212100247.20926-1-f.ebner@proxmox.com/

Fiona Ebner (15):
  fix #5985: qmp client: increase timeout for
    {device,netdev,object}_{add,del} commands
  qmp client: add default timeouts for more blockdev commands
  helpers: add missing includes
  helpers: fix perlcritic warning about variables named $a and $b
  move helper for iscsi initiator name to helpers module and improve
    name
  introduce QemuImage module
  introduce OVMF module
  blockdev: re-use cache setting from child node
  blockdev: add workaround for issue #3229
  blockdev: add support for 'size' option
  ovmf: add support for using blockdev
  cfg2cmd: ovmf: support print_ovmf_commandline() returning machine
    flags
  print drive device: don't reference any drive for 'none' starting with
    machine version 10.0
  blockdev: add support for NBD paths
  command line: switch to blockdev starting with machine version 10.0

 src/PVE/API2/Qemu.pm                          |  13 +-
 src/PVE/QMPClient.pm                          |  12 +
 src/PVE/QemuMigrate.pm                        |   3 +-
 src/PVE/QemuServer.pm                         | 491 ++++++------------
 src/PVE/QemuServer/Blockdev.pm                |  48 +-
 src/PVE/QemuServer/Helpers.pm                 |  27 +-
 src/PVE/QemuServer/ImportDisk.pm              |   6 +-
 src/PVE/QemuServer/Makefile                   |   2 +
 src/PVE/QemuServer/OVMF.pm                    | 251 +++++++++
 src/PVE/QemuServer/QemuImage.pm               | 123 +++++
 src/test/MigrationTest/Shared.pm              |   4 +
 src/test/cfg2cmd/aio.conf.cmd                 |  42 +-
 src/test/cfg2cmd/bootorder-empty.conf.cmd     |  13 +-
 src/test/cfg2cmd/bootorder-legacy.conf.cmd    |  13 +-
 src/test/cfg2cmd/bootorder.conf.cmd           |  13 +-
 ...putype-icelake-client-deprecation.conf.cmd |   7 +-
 src/test/cfg2cmd/efi-raw-template.conf.cmd    |   7 +-
 src/test/cfg2cmd/efi-raw.conf.cmd             |   7 +-
 .../cfg2cmd/efi-secboot-and-tpm-q35.conf.cmd  |   7 +-
 src/test/cfg2cmd/efi-secboot-and-tpm.conf.cmd |   7 +-
 src/test/cfg2cmd/efidisk-on-rbd.conf.cmd      |   7 +-
 src/test/cfg2cmd/ide.conf.cmd                 |  15 +-
 src/test/cfg2cmd/q35-ide.conf.cmd             |  15 +-
 .../q35-linux-hostpci-mapping.conf.cmd        |   7 +-
 .../q35-linux-hostpci-multifunction.conf.cmd  |   7 +-
 .../q35-linux-hostpci-template.conf.cmd       |  10 +-
 ...q35-linux-hostpci-x-pci-overrides.conf.cmd |   7 +-
 src/test/cfg2cmd/q35-linux-hostpci.conf.cmd   |   7 +-
 src/test/cfg2cmd/q35-simple.conf.cmd          |   7 +-
 src/test/cfg2cmd/seabios_serial.conf.cmd      |   7 +-
 src/test/cfg2cmd/sev-es.conf.cmd              |   7 +-
 src/test/cfg2cmd/sev-std.conf.cmd             |   7 +-
 src/test/cfg2cmd/simple-btrfs.conf.cmd        |  16 +-
 src/test/cfg2cmd/simple-cifs.conf.cmd         |  16 +-
 .../cfg2cmd/simple-disk-passthrough.conf.cmd  |   9 +-
 src/test/cfg2cmd/simple-lvm.conf.cmd          |  12 +-
 src/test/cfg2cmd/simple-lvmthin.conf.cmd      |  12 +-
 src/test/cfg2cmd/simple-rbd.conf.cmd          |  28 +-
 src/test/cfg2cmd/simple-virtio-blk.conf.cmd   |   7 +-
 .../cfg2cmd/simple-zfs-over-iscsi.conf.cmd    |  16 +-
 src/test/cfg2cmd/simple1-template.conf.cmd    |  10 +-
 src/test/cfg2cmd/simple1.conf.cmd             |   7 +-
 src/test/run_config2command_tests.pl          |  24 +-
 src/test/run_qemu_img_convert_tests.pl        |  19 +-
 44 files changed, 878 insertions(+), 497 deletions(-)
 create mode 100644 src/PVE/QemuServer/OVMF.pm
 create mode 100644 src/PVE/QemuServer/QemuImage.pm

-- 
2.47.2





More information about the pve-devel mailing list