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.eb...@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 _______________________________________________ pve-devel mailing list pve-devel@lists.proxmox.com https://lists.proxmox.com/cgi-bin/mailman/listinfo/pve-devel