WARNING - OLD ARCHIVES

This is an archived copy of the Xen.org mailing list, which we have preserved to ensure that existing links to archives are not broken. The live archive, which contains the latest emails, can be found at http://lists.xen.org/
   
 
 
Xen 
 
Home Products Support Community News
 
   
 

xen-changelog

[Xen-changelog] [xen-unstable] x86 hvm: fix missing ticks bug of c/s 202

To: xen-changelog@xxxxxxxxxxxxxxxxxxx
Subject: [Xen-changelog] [xen-unstable] x86 hvm: fix missing ticks bug of c/s 20218
From: Xen patchbot-unstable <patchbot-unstable@xxxxxxxxxxxxxxxxxxx>
Date: Tue, 22 Sep 2009 01:25:13 -0700
Delivery-date: Tue, 22 Sep 2009 01:25:14 -0700
Envelope-to: www-data@xxxxxxxxxxxxxxxxxxx
List-help: <mailto:xen-changelog-request@lists.xensource.com?subject=help>
List-id: BK change log <xen-changelog.lists.xensource.com>
List-post: <mailto:xen-changelog@lists.xensource.com>
List-subscribe: <http://lists.xensource.com/mailman/listinfo/xen-changelog>, <mailto:xen-changelog-request@lists.xensource.com?subject=subscribe>
List-unsubscribe: <http://lists.xensource.com/mailman/listinfo/xen-changelog>, <mailto:xen-changelog-request@lists.xensource.com?subject=unsubscribe>
Reply-to: xen-devel@xxxxxxxxxxxxxxxxxxx
Sender: xen-changelog-bounces@xxxxxxxxxxxxxxxxxxx
# HG changeset patch
# User Keir Fraser <keir.fraser@xxxxxxxxxx>
# Date 1253602836 -3600
# Node ID 6c178ba4d86a0380ee1a07f8c8632421b5539514
# Parent  3a71e070e3c5681d4394c943b6b0a17e8dab1720
x86 hvm: fix missing ticks bug of c/s 20218

With c/s 20218, timer ticks might be missed when IRQs of a timer are
queued. "Next scheduled time" is accumulated wrongly.

Thanks to Christoph for the report.

Signed-off-by: Kouya Shimura <kouya@xxxxxxxxxxxxxx>
Reported-by: Christoph Egger <Christoph.Egger@xxxxxxx>
---
 xen/arch/x86/hvm/vpt.c |    5 ++++-
 1 files changed, 4 insertions(+), 1 deletion(-)

diff -r 3a71e070e3c5 -r 6c178ba4d86a xen/arch/x86/hvm/vpt.c
--- a/xen/arch/x86/hvm/vpt.c    Fri Sep 18 14:45:40 2009 +0100
+++ b/xen/arch/x86/hvm/vpt.c    Tue Sep 22 08:00:36 2009 +0100
@@ -309,7 +309,6 @@ void pt_intr_post(struct vcpu *v, struct
     else
     {
         pt->scheduled += pt->period;
-        pt_process_missed_ticks(pt);
 
         if ( mode_is(v->domain, one_missed_tick_pending) ||
              mode_is(v->domain, no_missed_ticks_pending) )
@@ -324,7 +323,11 @@ void pt_intr_post(struct vcpu *v, struct
         }
 
         if ( pt->pending_intr_nr == 0 )
+        {
+            pt_process_missed_ticks(pt);
+            pt->do_not_freeze = 0;
             set_timer(&pt->timer, pt->scheduled);
+        }
     }
 
     if ( mode_is(v->domain, delay_for_missed_ticks) &&

_______________________________________________
Xen-changelog mailing list
Xen-changelog@xxxxxxxxxxxxxxxxxxx
http://lists.xensource.com/xen-changelog

<Prev in Thread] Current Thread [Next in Thread>
  • [Xen-changelog] [xen-unstable] x86 hvm: fix missing ticks bug of c/s 20218, Xen patchbot-unstable <=