On Tue, Sep 05, 2023 at 15:57:20 +0100, João Vilaça wrote: > Hello, > > I'm using https://gitlab.com/libvirt/libvirt-go-module and executing > 'GetJobStats' to get information about the progress of a VM with a disk > migration in KubeVirt. Everything works correctly and the migration is > successful, with the disk correctly copied. > > Across multiple executions of 'GetJobStats' while copying the disk, I get > the information about data: > > *DataTotal:151592960 DataProcessedSet:true DataProcessed:163080901 > DataRemainingSet:true DataRemaining:266240* > > about disk total values: > > *DiskTotal:21037056 DiskProcessedSet:true DiskProcessed:13631488 > DiskRemainingSet:true DiskRemaining:7405568* > > but '*DiskBpsSet:false *' and '*DiskBps:0 *' are always false and 0. > > Even when I run 'virsh domjobinfo', I get Data and File absolute > values, but not the throughput. > Is QEMU not reporting this data? Can this be a bug? This data was available with the old-style disk migration where disk data was migrated over the migration stream. As that was deprecated by qemu, libvirt switched to a new approach where we migrate the disks by using NBD protocol and copying them via 'blockdev-mirror'. Now the qemu blockjobs themselves do not report the actual bandwidth used, just the progress. Since libvirt doesn't want to pointlessly poll this data just to calculate bandwidth, the data is no longer available.