From 7659505c1680643d13ad7675f9e649d388303059 Mon Sep 17 00:00:00 2001 From: "Dr. David Alan Gilbert" Date: Wed, 27 Feb 2019 13:24:08 +0000 Subject: migration: Switch to using announce timer Switch the announcements to using the new announce timer. Move the code that does it to announce.c rather than savevm because it really has nothing to do with the actual migration. Migration starts the announce from bh's and so they're all in the main thread/bql, and so there's never any racing with the timers themselves. Signed-off-by: Dr. David Alan Gilbert Reviewed-by: Michael S. Tsirkin Signed-off-by: Jason Wang --- include/migration/misc.h | 10 ---------- include/net/announce.h | 2 ++ include/sysemu/sysemu.h | 2 -- 3 files changed, 2 insertions(+), 12 deletions(-) (limited to 'include') diff --git a/include/migration/misc.h b/include/migration/misc.h index e837ab3..0471e04 100644 --- a/include/migration/misc.h +++ b/include/migration/misc.h @@ -29,16 +29,6 @@ void blk_mig_init(void); static inline void blk_mig_init(void) {} #endif -#define SELF_ANNOUNCE_ROUNDS 5 - -static inline -int64_t self_announce_delay(int round) -{ - assert(round < SELF_ANNOUNCE_ROUNDS && round > 0); - /* delay 50ms, 150ms, 250ms, ... */ - return 50 + (SELF_ANNOUNCE_ROUNDS - round - 1) * 100; -} - AnnounceParameters *migrate_announce_params(void); /* migration/savevm.c */ diff --git a/include/net/announce.h b/include/net/announce.h index b89f1c2..892d302 100644 --- a/include/net/announce.h +++ b/include/net/announce.h @@ -36,4 +36,6 @@ void qemu_announce_timer_reset(AnnounceTimer *timer, QEMUTimerCB *cb, void *opaque); +void qemu_announce_self(AnnounceTimer *timer, AnnounceParameters *params); + #endif diff --git a/include/sysemu/sysemu.h b/include/sysemu/sysemu.h index 4b5a6b7..89604a8 100644 --- a/include/sysemu/sysemu.h +++ b/include/sysemu/sysemu.h @@ -81,8 +81,6 @@ extern bool machine_init_done; void qemu_add_machine_init_done_notifier(Notifier *notify); void qemu_remove_machine_init_done_notifier(Notifier *notify); -void qemu_announce_self(void); - extern int autostart; typedef enum { -- cgit v1.1