From: Stefano Stabellini Date: Tue, 15 May 2012 17:24:23 +0000 (+0000) Subject: qemu_next_alarm_deadline: check the expire time of a clock only if it is enabled X-Git-Tag: qemu-xen-4.2.0~14 X-Git-Url: http://xenbits.xensource.com/gitweb?a=commitdiff_plain;h=cdaf9858173e8e3b875da58162823e8eda8a6693;p=qemu-upstream-4.2-testing.git qemu_next_alarm_deadline: check the expire time of a clock only if it is enabled Also delta in qemu_next_alarm_deadline is a 64 bit value so set the default to INT64_MAX instead of INT32_MAX. Signed-off-by: Stefano Stabellini Signed-off-by: Anthony Liguori --- diff --git a/qemu-timer.c b/qemu-timer.c index a9ba0eb88..8c8bbc36f 100644 --- a/qemu-timer.c +++ b/qemu-timer.c @@ -106,23 +106,21 @@ static inline int alarm_has_dynticks(struct qemu_alarm_timer *t) static int64_t qemu_next_alarm_deadline(void) { - int64_t delta; + int64_t delta = INT64_MAX; int64_t rtdelta; - if (!use_icount && vm_clock->active_timers) { + if (!use_icount && vm_clock->enabled && vm_clock->active_timers) { delta = vm_clock->active_timers->expire_time - qemu_get_clock_ns(vm_clock); - } else { - delta = INT32_MAX; } - if (host_clock->active_timers) { + if (host_clock->enabled && host_clock->active_timers) { int64_t hdelta = host_clock->active_timers->expire_time - qemu_get_clock_ns(host_clock); if (hdelta < delta) { delta = hdelta; } } - if (rt_clock->active_timers) { + if (rt_clock->enabled && rt_clock->active_timers) { rtdelta = (rt_clock->active_timers->expire_time - qemu_get_clock_ns(rt_clock)); if (rtdelta < delta) {