Peter Xu <pet...@redhat.com> writes: > Teach multifd_send_sync_main() to sync with threads only. > > We already have such requests, which is when mapped-ram is enabled with > multifd. In that case, no SYNC messages will be pushed to the stream when > multifd syncs the sender threads because there's no destination threads > waiting for that. The whole point of the sync is to make sure all threads > finished their jobs. > > So fundamentally we have a request to do the sync in different ways: > > - Either to sync the threads only, > - Or to sync the threads but also with the destination side. > > Mapped-ram did it already because of the use_packet check in the sync > handler of the sender thread. It works. > > However it may stop working when e.g. VFIO may start to reuse multifd > channels to push device states. In that case VFIO has similar request on > "thread-only sync" however we can't check a flag because such sync request > can still come from RAM which needs the on-wire notifications. > > Paving way for that by allowing the multifd_send_sync_main() to specify > what kind of sync the caller needs. We can use it for mapped-ram already. > > No functional change intended. > > Signed-off-by: Peter Xu <pet...@redhat.com>
Reviewed-by: Fabiano Rosas <faro...@suse.de>