migration: Postcopy preemption preparation on channel creation
Create a new socket for postcopy to be prepared to send postcopy requested pages via this specific channel, so as to not get blocked by precopy pages. A new thread is also created on dest qemu to receive data from this new channel based on the ram_load_postcopy() routine. The ram_load_postcopy(POSTCOPY) branch and the thread has not started to function, and that'll be done in follow up patches. Cleanup the new sockets on both src/dst QEMUs, meanwhile look after the new thread too to make sure it'll be recycled properly. Reviewed-by:Daniel P. Berrangé <berrange@redhat.com> Reviewed-by:
Juan Quintela <quintela@redhat.com> Signed-off-by:
Peter Xu <peterx@redhat.com> Message-Id: <20220707185502.27149-1-peterx@redhat.com> Signed-off-by:
Dr. David Alan Gilbert <dgilbert@redhat.com> dgilbert: With Peter's fix to quieten compiler warning on start_migration
Showing
- migration/migration.c 55 additions, 8 deletionsmigration/migration.c
- migration/migration.h 8 additions, 0 deletionsmigration/migration.h
- migration/postcopy-ram.c 89 additions, 3 deletionsmigration/postcopy-ram.c
- migration/postcopy-ram.h 10 additions, 0 deletionsmigration/postcopy-ram.h
- migration/ram.c 18 additions, 7 deletionsmigration/ram.c
- migration/ram.h 3 additions, 1 deletionmigration/ram.h
- migration/savevm.c 10 additions, 10 deletionsmigration/savevm.c
- migration/socket.c 21 additions, 1 deletionmigration/socket.c
- migration/socket.h 1 addition, 0 deletionsmigration/socket.h
- migration/trace-events 4 additions, 1 deletionmigration/trace-events
Loading
Please register or sign in to comment