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-devel

[Xen-devel] [PATCH] Port HPET device model to vpt timer subsystem

To: "Xen-Devel (E-mail)" <xen-devel@xxxxxxxxxxxxxxxxxxx>
Subject: [Xen-devel] [PATCH] Port HPET device model to vpt timer subsystem
From: Keir Fraser <keir.fraser@xxxxxxxxxxxxx>
Date: Tue, 21 Oct 2008 09:56:56 +0100
Cc: Peter Johnston <Peter.Johnston@xxxxxxxxxx>
Delivery-date: Tue, 21 Oct 2008 01:57:32 -0700
Envelope-to: www-data@xxxxxxxxxxxxxxxxxxx
List-help: <mailto:xen-devel-request@lists.xensource.com?subject=help>
List-id: Xen developer discussion <xen-devel.lists.xensource.com>
List-post: <mailto:xen-devel@lists.xensource.com>
List-subscribe: <http://lists.xensource.com/mailman/listinfo/xen-devel>, <mailto:xen-devel-request@lists.xensource.com?subject=subscribe>
List-unsubscribe: <http://lists.xensource.com/mailman/listinfo/xen-devel>, <mailto:xen-devel-request@lists.xensource.com?subject=unsubscribe>
Sender: xen-devel-bounces@xxxxxxxxxxxxxxxxxxx
Thread-index: AckzWvgkNr7lbJ9OEd2v1AAX8io7RQ==
Thread-topic: [PATCH] Port HPET device model to vpt timer subsystem
User-agent: Microsoft-Entourage/11.4.0.080122
The current hpet implementation runs a one-shot xen timer for each hpet
timer whenever the main counter is enabled regardless of whether or not the
individual hpet timers are enabled.  When the timer fires, if it is enabled
the interrupt is routed to the guest.  If the hpet timer is periodic, a new
one-shot timer is set, for NOW()+period.  There are a number of problems
with this the most significant is guest time drift.  Windows does not read
the hardware clock to verify time, it depends on timer interrupts firing at
the expected interval.  The existing implementation queues a new one-shot
timer each time it fires and does not allow for a difference between NOW()
and the time the timer was expected to fire, causing drift.  Also there is
no allowance for lost ticks. This modification changes HPET to use the
Virtual Platform Timer (VPT) and, for periodic timers, to use periodic
timers.  The VPT ensures an interrupt is delivered to the guest for each
period that elapses, plus, its use of xen periodic timers ensures no drift.
 
Signed-off-by: Peter Johnston <peter.johnston@xxxxxxxxxx>

Attachment: hvm-hpet-vpt
Description: Binary data

_______________________________________________
Xen-devel mailing list
Xen-devel@xxxxxxxxxxxxxxxxxxx
http://lists.xensource.com/xen-devel
<Prev in Thread] Current Thread [Next in Thread>
  • [Xen-devel] [PATCH] Port HPET device model to vpt timer subsystem, Keir Fraser <=