If no vfio device is present during migration, and the transferred (main) memory did not change between loop cycles, we get a warning:
Use of uninitialized value $last_vfio_transferred in string ne To silence that, check if the transferred vfio value is defined before, and always write a defined value to $last_vfio_transferred. This was noticed by a forum user: https://forum.proxmox.com/threads/166161/ Signed-off-by: Dominik Csapak <d.csa...@proxmox.com> --- PVE/QemuMigrate.pm | 11 +++++++---- 1 file changed, 7 insertions(+), 4 deletions(-) diff --git a/PVE/QemuMigrate.pm b/PVE/QemuMigrate.pm index b7bf2aa3..f72a9d33 100644 --- a/PVE/QemuMigrate.pm +++ b/PVE/QemuMigrate.pm @@ -1321,9 +1321,12 @@ sub phase2 { last; } - if ($memstat->{transferred} ne $last_mem_transferred || - $stat->{vfio}->{transferred} ne $last_vfio_transferred - ) { + if ( + $memstat->{transferred} ne $last_mem_transferred + || (defined($stat->{vfio}->{transferred}) + && $stat->{vfio}->{transferred} ne $last_vfio_transferred) + ) + { my $trans = $memstat->{transferred} || 0; my $vfio_transferred = $stat->{vfio}->{transferred} || 0; my $rem = $memstat->{remaining} || 0; @@ -1389,7 +1392,7 @@ sub phase2 { } $last_mem_transferred = $memstat->{transferred}; - $last_vfio_transferred = $stat->{vfio}->{transferred}; + $last_vfio_transferred = $stat->{vfio}->{transferred} // 0; } if ($self->{storage_migration}) { -- 2.39.5 _______________________________________________ pve-devel mailing list pve-devel@lists.proxmox.com https://lists.proxmox.com/cgi-bin/mailman/listinfo/pve-devel