Lines Matching refs:timer

20 int64_t qemu_announce_timer_step(AnnounceTimer *timer)  in qemu_announce_timer_step()  argument
24 step = timer->params.initial + in qemu_announce_timer_step()
25 (timer->params.rounds - timer->round - 1) * in qemu_announce_timer_step()
26 timer->params.step; in qemu_announce_timer_step()
28 if (step < 0 || step > timer->params.max) { in qemu_announce_timer_step()
29 step = timer->params.max; in qemu_announce_timer_step()
31 timer_mod(timer->tm, qemu_clock_get_ms(timer->type) + step); in qemu_announce_timer_step()
40 void qemu_announce_timer_del(AnnounceTimer *timer, bool free_named) in qemu_announce_timer_del() argument
43 if (timer->tm) { in qemu_announce_timer_del()
44 timer_del(timer->tm); in qemu_announce_timer_del()
45 timer_free(timer->tm); in qemu_announce_timer_del()
46 timer->tm = NULL; in qemu_announce_timer_del()
48 qapi_free_strList(timer->params.interfaces); in qemu_announce_timer_del()
49 timer->params.interfaces = NULL; in qemu_announce_timer_del()
50 if (free_named && timer->params.has_id) { in qemu_announce_timer_del()
56 list_timer = g_datalist_get_data(&named_timers, timer->params.id); in qemu_announce_timer_del()
57 assert(timer == list_timer); in qemu_announce_timer_del()
59 g_datalist_remove_data(&named_timers, timer->params.id); in qemu_announce_timer_del()
61 trace_qemu_announce_timer_del(free_named, free_timer, timer->params.id); in qemu_announce_timer_del()
62 g_free(timer->params.id); in qemu_announce_timer_del()
63 timer->params.id = NULL; in qemu_announce_timer_del()
66 g_free(timer); in qemu_announce_timer_del()
74 void qemu_announce_timer_reset(AnnounceTimer *timer, in qemu_announce_timer_reset() argument
84 qemu_announce_timer_del(timer, false); in qemu_announce_timer_reset()
86 QAPI_CLONE_MEMBERS(AnnounceParameters, &timer->params, params); in qemu_announce_timer_reset()
87 timer->round = params->rounds; in qemu_announce_timer_reset()
88 timer->type = type; in qemu_announce_timer_reset()
89 timer->tm = timer_new_ms(type, cb, opaque); in qemu_announce_timer_reset()
126 AnnounceTimer *timer = opaque; in qemu_announce_self_iter() local
131 if (timer->params.has_interfaces) { in qemu_announce_self_iter()
132 strList *entry = timer->params.interfaces; in qemu_announce_self_iter()
148 trace_qemu_announce_self_iter(timer->params.has_id ? timer->params.id : "_", in qemu_announce_self_iter()
165 AnnounceTimer *timer = (AnnounceTimer *)opaque; in qemu_announce_self_once() local
167 qemu_foreach_nic(qemu_announce_self_iter, timer); in qemu_announce_self_once()
169 if (--timer->round) { in qemu_announce_self_once()
170 qemu_announce_timer_step(timer); in qemu_announce_self_once()
172 qemu_announce_timer_del(timer, true); in qemu_announce_self_once()
176 void qemu_announce_self(AnnounceTimer *timer, AnnounceParameters *params) in qemu_announce_self() argument
178 qemu_announce_timer_reset(timer, params, QEMU_CLOCK_REALTIME, in qemu_announce_self()
179 qemu_announce_self_once, timer); in qemu_announce_self()
181 qemu_announce_self_once(timer); in qemu_announce_self()
183 qemu_announce_timer_del(timer, true); in qemu_announce_self()