Show the transferred VFIO state (when there is one), but since there is
no total here, so we can't show that, just what was transferred up until
now.

Reviewed-by: Christoph Heiss <c.he...@proxmox.com>
Reviewed-by: Fiona Ebner <f.eb...@proxmox.com>
Signed-off-by: Dominik Csapak <d.csa...@proxmox.com>
---
changes from v6:
* removed unrelated hunk (added in the previous patch)
 PVE/QemuMigrate.pm | 12 +++++++++++-
 1 file changed, 11 insertions(+), 1 deletion(-)

diff --git a/PVE/QemuMigrate.pm b/PVE/QemuMigrate.pm
index 6909fc82..d6f9132b 100644
--- a/PVE/QemuMigrate.pm
+++ b/PVE/QemuMigrate.pm
@@ -1241,6 +1241,7 @@ sub phase2 {
     $self->log('info', "migrate uri => $migrate_uri failed: $merr") if $merr;
 
     my $last_mem_transferred = 0;
+    my $last_vfio_transferred = 0;
     my $usleep = 1000000;
     my $i = 0;
     my $err_count = 0;
@@ -1300,8 +1301,11 @@ sub phase2 {
            last;
        }
 
-       if ($memstat->{transferred} ne $last_mem_transferred) {
+       if ($memstat->{transferred} ne $last_mem_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;
            my $total = $memstat->{total} || 0;
            my $speed = ($memstat->{'pages-per-second'} // 0) * 
($memstat->{'page-size'} // 0);
@@ -1319,6 +1323,11 @@ sub phase2 {
 
            my $progress = "transferred $transferred_h of $total_h VM-state, 
${speed_h}/s";
 
+           if ($vfio_transferred > 0) {
+               my $vfio_h = render_bytes($vfio_transferred, 1);
+               $progress .= " (+ $vfio_h VFIO-state)";
+           }
+
            if ($dirty_rate > $speed) {
                my $dirty_rate_h = render_bytes($dirty_rate, 1);
                $progress .= ", VM dirties lots of memory: $dirty_rate_h/s";
@@ -1360,6 +1369,7 @@ sub phase2 {
        }
 
        $last_mem_transferred = $memstat->{transferred};
+       $last_vfio_transferred = $stat->{vfio}->{transferred};
     }
 
     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

Reply via email to