[pve-devel] [PATCH-SERIES storage/qemu-server 0/9] storage configuration-dependent format info

Fiona Ebner f.ebner at proxmox.com
Mon Jul 21 14:10:45 CEST 2025


The LVM plugin can only use qcow2 format when the
'snapshot-as-volume-chain' configuration option is set. The format
information is currently only recorded statically in the plugin data.
This causes issues, for example, restoring a guest volume that uses
qcow2 as a format hint on an LVM storage without the option set will
fail, because the plugin data indicates that qcow2 is supported.
Introduce a dedicated method, so that plugins can indicate what
actually is supported according to the storage configuration.

In case the 'snapshot-as-volume-chain' option is set for the LVM
storage, qcow2 is even preferred and thus declared the default format.

As a second step, a dedicated resolve_format_hint() helper is
introduced.

That second part requires a dependency and a breaks between
qemu-server and pve-storage.

storage:

Fiona Ebner (6):
  api change log: improve style consistency a bit
  plugin: add get_formats() method and use it instead of
    default_format()
  lvm plugin: implement get_formats() method
  api: status: rely on get_formats() method for determining
    format-related info
  introduce resolve_format_hint() helper
  default format helper: only return default format

 ApiChangeLog                   | 22 +++++++++----
 src/PVE/API2/Storage/Status.pm |  6 ----
 src/PVE/Storage.pm             | 32 ++++++++++++------
 src/PVE/Storage/LVMPlugin.pm   | 10 ++++++
 src/PVE/Storage/Plugin.pm      | 59 +++++++++++++++++++++++-----------
 5 files changed, 88 insertions(+), 41 deletions(-)


qemu-server:

Fiona Ebner (3):
  make tidy
  resolve destination disk format helper: drop unused variable
  use storage layer's resolve_format_hint() helper where appropriate

 src/PVE/API2/Qemu/HMPPerms.pm |  2 +-
 src/PVE/QemuServer.pm         | 29 ++++++++---------------------
 src/PVE/VZDump/QemuServer.pm  |  5 ++---
 3 files changed, 11 insertions(+), 25 deletions(-)


Summary over all repositories:
  8 files changed, 99 insertions(+), 66 deletions(-)

-- 
Generated by git-murpp 0.5.0




More information about the pve-devel mailing list