Subject: Re: [PATCH V7 mlx5-next 15/15] vfio: Extend the device migration protocol with PRE_COPY

From: Jason Gunthorpe <[email-masked]>
Date: Tue, 22 Feb 2022 11:50:46 -0400

On Tue, Feb 22, 2022 at 01:43:13AM +0000, Tian, Kevin wrote:

> > > > + * Drivers should attempt to return estimates so that initial_bytes +
> > > > + * dirty_bytes matches the amount of data an immediate transition to
> > > > STOP_COPY
> > > > + * will require to be streamed.
> > >
> > > I didn't understand this requirement. In an immediate transition to
> > > STOP_COPY I expect the amount of data covers the entire device
> > > state, i.e. initial_bytes. dirty_bytes are dynamic and iteratively returned
> > > then why we need set some expectation on the sum of
> > > initial+round1_dity+round2_dirty+...
> > 
> > "will require to be streamed" means additional data from this point
> > forward, not including anything already sent.
> > 
> > It turns into the estimate of how long STOP_COPY will take.
> 
> I still didn't get the 'match' part. Why should the amount of data which
> has already been sent match the additional data to be sent in STOP_COPY?

None of it is 'already been sent' the return values are always 'still
to be sent'

Jason