qemu-e2k/migration
Markus Armbruster 735527e179 migration/colo: Fix qmp_xen_colo_do_checkpoint() error handling
The Error ** argument must be NULL, &error_abort, &error_fatal, or a
pointer to a variable containing NULL.  Passing an argument of the
latter kind twice without clearing it in between is wrong: if the
first call sets an error, it no longer points to NULL for the second
call.

qmp_xen_colo_do_checkpoint() passes @errp first to
replication_do_checkpoint_all(), and then to
colo_notify_filters_event().  If both fail, this will trip the
assertion in error_setv().

Similar code in secondary_vm_do_failover() calls
colo_notify_filters_event() only after replication_do_checkpoint_all()
succeeded.  Do the same here.

Fixes: 0e8818f023
Cc: Zhang Chen <chen.zhang@intel.com>
Cc: zhanghailiang <zhang.zhanghailiang@huawei.com>
Signed-off-by: Markus Armbruster <armbru@redhat.com>
Reviewed-by: zhanghailiang <zhang.zhanghailiang@huawei.com>
Reviewed-by: Philippe Mathieu-Daudé <philmd@redhat.com>
Reviewed-by: Zhang Chen <chen.zhang@intel.com>
Message-Id: <20200422130719.28225-12-armbru@redhat.com>
2020-04-29 08:01:52 +02:00
..
block-dirty-bitmap.c block/dirty-bitmap: refactor bdrv_dirty_bitmap_next 2019-10-17 17:02:32 -04:00
block.c migration/block: rename BLOCK_SIZE macro 2020-02-28 09:25:49 +01:00
block.h migration: disable auto-converge during bulk block migration 2017-09-27 11:27:14 +01:00
channel.c migration: fix the multifd code when receiving less channels 2019-01-23 15:02:07 +00:00
channel.h migration: Route errors down through migration_channel_connect 2018-02-06 10:55:12 +00:00
colo-failover.c migration/colo.c: Remove redundant input parameter 2019-05-14 17:33:35 +01:00
colo.c migration/colo: Fix qmp_xen_colo_do_checkpoint() error handling 2020-04-29 08:01:52 +02:00
exec.c migration: unify incoming processing 2018-07-10 12:48:53 +01:00
exec.h migration: Export exec.c functions in its own file 2017-06-01 18:49:22 +02:00
fd.c migration: Fix fd protocol for incoming defer 2019-06-05 12:43:55 +02:00
fd.h migration: Fix fd protocol for incoming defer 2019-06-05 12:43:55 +02:00
global_state.c sysemu: Split sysemu/runstate.h off sysemu/sysemu.h 2019-08-16 13:37:36 +02:00
Makefile.objs multifd: Add zstd compression multifd support 2020-02-28 09:25:49 +01:00
migration.c migration: fix cleanup_bh leak on resume 2020-04-02 14:55:45 -04:00
migration.h multifd: Add multifd-zstd-level parameter 2020-02-28 09:25:28 +01:00
multifd-zlib.c multifd: Add zlib compression multifd support 2020-02-28 09:24:43 +01:00
multifd-zstd.c multifd: Add zstd compression multifd support 2020-02-28 09:25:49 +01:00
multifd.c multifd: Add zlib compression multifd support 2020-02-28 09:24:43 +01:00
multifd.h multifd: Add zstd compression multifd support 2020-02-28 09:25:49 +01:00
page_cache.c Include qemu-common.h exactly where needed 2019-06-12 13:20:20 +02:00
page_cache.h migration: Make cache_init() take an error parameter 2017-10-23 18:03:25 +02:00
postcopy-ram.c core: replace getpagesize() with qemu_real_host_page_size 2019-10-26 15:38:06 +02:00
postcopy-ram.h migration/postcopy: rename postcopy_ram_enable_notify to postcopy_ram_incoming_setup 2019-10-11 14:59:58 +01:00
qemu-file-channel.c Header cleanup patches for 2019-08-13 2019-08-16 14:53:43 +01: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/compress: compress QEMUFile is not writable 2020-01-29 11:28:59 +01:00
qemu-file.h Header cleanup patches for 2019-08-13 2019-08-16 14:53:43 +01:00
qjson.c qobject: Replace qobject_incref/QINCREF qobject_decref/QDECREF 2018-05-04 08:27:53 +02:00
qjson.h migration: fix vmdesc leak on vmstate_save() error 2019-09-25 15:51:19 +01:00
ram.c migration/ram: fix use after free of local_err 2020-03-25 12:31:38 +00:00
ram.h COLO: Optimize memory back-up process 2020-03-13 09:36:30 +00:00
rdma.c migration/rdma: rdma_accept_incoming_migration fix error handling 2020-02-13 10:55:55 +01:00
rdma.h migration: Export rdma.c functions in its own file 2017-06-01 18:49:23 +02:00
savevm.c migration/savevm: release gslist after dump_vmstate_json 2020-02-28 09:25:49 +01:00
savevm.h migration: Optimization about wait-unplug migration state 2020-02-13 10:53:10 +01:00
socket.c multifd: Use number of channels as listen backlog 2019-09-03 23:24:42 +02:00
socket.h migration: Export functions to create send channels 2018-05-15 20:24:27 +02:00
tls.c migration: add support for a "tls-authz" migration parameter 2019-03-25 18:13:47 +01:00
tls.h migration: Export tls.c functions in its own file 2017-06-01 18:49:23 +02:00
trace-events migration: Support QLIST migration 2020-01-20 09:10:23 +01:00
vmstate-types.c migration: Simplify get_qlist 2020-01-29 11:28:59 +01:00
vmstate.c migration/vmstate: Remove redundant statement in vmstate_save_state_v() 2020-02-28 09:25:49 +01:00
xbzrle.c
xbzrle.h