qemu-patch-raspberry4/migration
Peter Xu e89f5ff2c3 migration: let incoming side use thread context
The old incoming migration is running in main thread and default
gcontext.  With the new qio_channel_add_watch_full() we can now let it
run in the thread's own gcontext (if there is one).

Currently this patch does nothing alone.  But when any of the incoming
migration is run in another iothread (e.g., the upcoming migrate-recover
command), this patch will bind the incoming logic to the iothread
instead of the main thread (which may already get page faulted and
hanged).

RDMA is not considered for now since it's not even using the QIO watch
framework at all.

Reviewed-by: Dr. David Alan Gilbert <dgilbert@redhat.com>
Reviewed-by: Juan Quintela <quintela@redhat.com>
Signed-off-by: Peter Xu <peterx@redhat.com>
Message-Id: <20180502104740.12123-2-peterx@redhat.com>
Signed-off-by: Juan Quintela <quintela@redhat.com>
2018-05-15 20:24:27 +02:00
..
block-dirty-bitmap.c migration/block-dirty-bitmap: fix memory leak in dirty_bitmap_load_bits 2018-05-04 08:23:26 -05:00
block.c migration/block: compare only read blocks against the rate limiter 2018-03-23 16:45:18 +00:00
block.h migration: disable auto-converge during bulk block migration 2017-09-27 11:27:14 +01:00
channel.c migration: Route errors down through migration_channel_connect 2018-02-06 10:55:12 +00:00
channel.h migration: Route errors down through migration_channel_connect 2018-02-06 10:55:12 +00:00
colo-comm.c migration: pre_save return int 2017-09-27 11:35:59 +01:00
colo-failover.c Include less of the generated modular QAPI headers 2018-03-02 13:45:50 -06:00
colo.c Include less of the generated modular QAPI headers 2018-03-02 13:45:50 -06:00
exec.c migration: let incoming side use thread context 2018-05-15 20:24:27 +02:00
exec.h migration: Export exec.c functions in its own file 2017-06-01 18:49:22 +02:00
fd.c migration: let incoming side use thread context 2018-05-15 20:24:27 +02:00
fd.h migration: Export fd.c functions in its own file 2017-06-01 18:49:22 +02:00
global_state.c migration: pre_save return int 2017-09-27 11:35:59 +01:00
Makefile.objs migration: add postcopy migration of dirty bitmaps 2018-03-13 17:06:09 -04:00
migration.c migration: Delay start of migration main routines 2018-05-15 20:24:27 +02:00
migration.h migration: Delay start of migration main routines 2018-05-15 20:24:27 +02:00
page_cache.c migration: Make sure that we pass the right cache size 2017-10-29 14:06:15 +01:00
page_cache.h migration: Make cache_init() take an error parameter 2017-10-23 18:03:25 +02:00
postcopy-ram.c migration: add postcopy total blocktime into query-migrate 2018-04-25 18:02:17 +01:00
postcopy-ram.h vhost+postcopy: Wire up POSTCOPY_END notify 2018-03-20 16:40:37 +02:00
qemu-file-channel.c migration: Split qemu-file.h 2017-06-01 18:49:22 +02:00
qemu-file-channel.h migration: Export qemu-file-channel.c functions in its own file 2017-05-18 19:20:50 +02:00
qemu-file.c migration: detect compression and decompression errors 2018-04-25 18:04:08 +01:00
qemu-file.h migration: stop compression to allocate and free memory frequently 2018-04-25 18:04:06 +01:00
qjson.c qobject: Replace qobject_incref/QINCREF qobject_decref/QDECREF 2018-05-04 08:27:53 +02:00
qjson.h migration: Move qjson.h to migration/ 2017-05-18 19:20:59 +02:00
ram.c migration: Define MultifdRecvParams sooner 2018-05-15 20:24:27 +02:00
ram.h migration: Be sure all recv channels are created 2018-05-15 20:24:27 +02:00
rdma.c migration: Allow migrate_fd_connect to take an Error * 2018-02-06 10:55:12 +00:00
rdma.h migration: Export rdma.c functions in its own file 2017-06-01 18:49:23 +02:00
savevm.c virtio,vhost,pci,pc: features, cleanups 2018-03-20 15:48:34 +00:00
savevm.h migration: introduce postcopy-only pending 2018-03-13 17:05:41 -04:00
socket.c migration: let incoming side use thread context 2018-05-15 20:24:27 +02:00
socket.h migration: Export functions to create send channels 2018-05-15 20:24:27 +02:00
tls.c qio: non-default context for TLS handshake 2018-03-06 10:19:07 +00:00
tls.h migration: Export tls.c functions in its own file 2017-06-01 18:49:23 +02:00
trace-events migration: add postcopy total blocktime into query-migrate 2018-04-25 18:02:17 +01:00
vmstate-types.c migration: Route more error paths 2017-09-27 11:44:18 +01:00
vmstate.c migration: wire vmstate_save_state errors up to vmstate_subsection_save 2017-09-27 11:38:21 +01:00
xbzrle.c migration: Create migration/xbzrle.h 2017-05-18 18:04:54 +02:00
xbzrle.h migration: Create migration/xbzrle.h 2017-05-18 18:04:54 +02:00