"Maciej S. Szmigiero" <[email protected]> writes: > From: "Maciej S. Szmigiero" <[email protected]> > > Currently, ram_save_complete() sends a final SYNC multifd packet near this > function end, after sending all of the remaining RAM data. > > On the receive side, this SYNC packet will cause multifd channel threads > to block, waiting for the final sem_sync posting in > multifd_recv_terminate_threads(). > > However, multifd_recv_terminate_threads() won't be called until the > migration is complete, which causes a problem if multifd channels are > still required for transferring device state data after RAM transfer is > complete but before finishing the migration process. > > Defer sending the final SYNC packet to the end of sending of > post-switchover iterable data instead if device state transfer is possible. > > Signed-off-by: Maciej S. Szmigiero <[email protected]>
Reviewed-by: Fabiano Rosas <[email protected]> I wonder whether we could just defer the sync for the !device_state case as well.
