From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from eggs.gnu.org ([140.186.70.92]:48395) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1Rqn0z-00037p-G8 for qemu-devel@nongnu.org; Fri, 27 Jan 2012 09:43:03 -0500 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1Rqn0r-0007LT-Cb for qemu-devel@nongnu.org; Fri, 27 Jan 2012 09:42:55 -0500 Received: from mail-qw0-f45.google.com ([209.85.216.45]:61762) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1Rqn0r-0007LI-AK for qemu-devel@nongnu.org; Fri, 27 Jan 2012 09:42:49 -0500 Received: by qabg40 with SMTP id g40so689753qab.4 for ; Fri, 27 Jan 2012 06:42:48 -0800 (PST) Sender: Paolo Bonzini Message-ID: <4F22B7E2.9070902@redhat.com> Date: Fri, 27 Jan 2012 15:42:42 +0100 From: Paolo Bonzini MIME-Version: 1.0 References: <1327667215-5411-4-git-send-email-stefano.stabellini@eu.citrix.com> In-Reply-To: <1327667215-5411-4-git-send-email-stefano.stabellini@eu.citrix.com> Content-Type: text/plain; charset=ISO-8859-1; format=flowed Content-Transfer-Encoding: 7bit Subject: Re: [Qemu-devel] [PATCH v2 4/5] qemu_next_alarm_deadline: check the expire time of a clock only if it is enabled List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , To: Stefano Stabellini Cc: xen-devel@lists.xensource.com, qemu-devel@nongnu.org, avi@redhat.com On 01/27/2012 01:26 PM, Stefano Stabellini wrote: > 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 > --- > qemu-timer.c | 10 ++++------ > 1 files changed, 4 insertions(+), 6 deletions(-) > > diff --git a/qemu-timer.c b/qemu-timer.c > index cd026c6..648db1d 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; I'm worried of overflows elsewhere... > 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) { The patch is otherwise okay, but without looking more closely at the callers I'm not quite ready to give my Reviewed-by. Paolo