Peter Lieven <p...@kamp.de> wrote: > only read_done blocks are in the queued to be flushed to the migration > stream. submitted blocks are still in flight. > > Signed-off-by: Peter Lieven <p...@kamp.de>
Reviewed-by: Juan Quintela <quint...@redhat.com> > --- > migration/block.c | 3 +-- > 1 file changed, 1 insertion(+), 2 deletions(-) > > diff --git a/migration/block.c b/migration/block.c > index ce939e2..4e950c2 100644 > --- a/migration/block.c > +++ b/migration/block.c > @@ -773,8 +773,7 @@ static int block_save_iterate(QEMUFile *f, void *opaque) > > /* control the rate of transfer */ > blk_mig_lock(); > - while ((block_mig_state.submitted + > - block_mig_state.read_done) * BLOCK_SIZE < > + while (block_mig_state.read_done * BLOCK_SIZE < > qemu_file_get_rate_limit(f) && > block_mig_state.submitted < MAX_PARALLEL_IO && > (block_mig_state.submitted + block_mig_state.read_done) <