On Tue Sep 2, 2025 at 2:45 PM CEST, Maximiliano Sandoval wrote:
> Adds a new setting that controls whether guest-fsfreeze-{freeze,thaw}
> commands should be issued. The previous setting was only taken into
> account for backups.
>
> In this commit we only use this setting for backups. The following two
> commits will ensure the setting is used on replications, snapshots and
> clones.
>
> Signed-off-by: Maximiliano Sandoval <m.sando...@proxmox.com>
> ---
>  src/PVE/QemuServer.pm        | 11 +++++++++++
>  src/PVE/VZDump/QemuServer.pm |  6 +++++-
>  2 files changed, 16 insertions(+), 1 deletion(-)
>
> diff --git a/src/PVE/QemuServer.pm b/src/PVE/QemuServer.pm
> index f263fedb..cdd44eb0 100644
> --- a/src/PVE/QemuServer.pm
> +++ b/src/PVE/QemuServer.pm
> @@ -167,6 +167,17 @@ my $agent_fmt = {
>          optional => 1,
>          default => 1,
>      },
> +    'guest-fsfreeze' => {
> +        description =>
> +            "Whether to issue the guest-fsfreeze-freeze and 
> guest-fsfreeze-thaw QEMU guest agent commands.\n\n"
> +            . "Backups in snapshot mode, clones, snapshots without RAM, and 
> replications normally issue a "
> +            . "fsfreeze-fsfreeze-freeze and a respective thaw command when 
> the QEMU Guest agent option is "
> +            . "enabled on the guest's configuration and the agent is running 
> inside of the guest.\n\n"
> +            . "Takes preference over 'freeze-fs-on-backup' when set.",

'Takes preference over' should be 'Takes precedence over'.

nit: But I think it'd be easier for users to understand something like

    When this property/option is set, it will override the setting of
    'freeze-fs-on-backup'.

> +        type => 'boolean',
> +        optional => 1,
> +        default => 1,
> +    },
>      type => {
>          description => "Select the agent type",
>          type => 'string',
> diff --git a/src/PVE/VZDump/QemuServer.pm b/src/PVE/VZDump/QemuServer.pm
> index 5b94c369..2879639a 100644
> --- a/src/PVE/VZDump/QemuServer.pm
> +++ b/src/PVE/VZDump/QemuServer.pm
> @@ -1096,7 +1096,11 @@ sub qga_fs_freeze {
>          return;
>      }
>  
> -    my $freeze = PVE::QemuServer::get_qga_key($self->{vmlist}->{$vmid}, 
> 'freeze-fs-on-backup') // 1;
> +    my $freze_fs_on_backup =

s/freze/freeze/

> +        PVE::QemuServer::get_qga_key($self->{vmlist}->{$vmid}, 
> 'freeze-fs-on-backup');
> +    my $guest_fsfreeze = 
> PVE::QemuServer::get_qga_key($self->{vmlist}->{$vmid}, 'guest-fsfreeze');
> +
> +    my $freeze = $guest_fsfreeze // $freze_fs_on_backup // 1;

could also just be

    my $freeze = PVE::QemuServer::get_qga_key($self->{vmlist}->{$vmid}, 
'guest-fsfreeze');
    $freeze //= PVE::QemuServer::get_qga_key($self->{vmlist}->{$vmid}, 
'freeze-fs-on-backup');
    $freeze //= 1;

or something like that to not have unnecessary temporary variables.

>      if (!$freeze) {
>          $self->loginfo("skipping guest-agent 'fs-freeze', disabled in VM 
> options");
>          return;



_______________________________________________
pve-devel mailing list
pve-devel@lists.proxmox.com
https://lists.proxmox.com/cgi-bin/mailman/listinfo/pve-devel

Reply via email to