[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] [Xen-changelog] [xen-unstable] [HVM] Only update guest time on timer interrupt delivery if the guest time is in the past.
# HG changeset patch # User Christian Limpach <Christian.Limpach@xxxxxxxxxxxxx> # Date 1169207932 0 # Node ID 2ef07c6107296c4a0366b1088c5a64b310c29d50 # Parent 683bc79cf579d83be451daded565454d81dffdea [HVM] Only update guest time on timer interrupt delivery if the guest time is in the past. Signed-off-by: Christian Limpach <Christian.Limpach@xxxxxxxxxxxxx> --- xen/arch/x86/hvm/vpt.c | 6 +++++- 1 files changed, 5 insertions(+), 1 deletion(-) diff -r 683bc79cf579 -r 2ef07c610729 xen/arch/x86/hvm/vpt.c --- a/xen/arch/x86/hvm/vpt.c Fri Jan 19 10:12:39 2007 +0000 +++ b/xen/arch/x86/hvm/vpt.c Fri Jan 19 11:58:52 2007 +0000 @@ -163,13 +163,17 @@ void pt_intr_post(struct vcpu *v, int ve void pt_intr_post(struct vcpu *v, int vector, int type) { struct periodic_time *pt = is_pt_irq(v, vector, type); + unsigned long long gtime; if ( pt == NULL ) return; pt->pending_intr_nr--; pt->last_plt_gtime += pt->period_cycles; - hvm_set_guest_time(pt->vcpu, pt->last_plt_gtime); + + gtime = hvm_get_guest_time(pt->vcpu); + if (gtime < pt->last_plt_gtime) + hvm_set_guest_time(pt->vcpu, pt->last_plt_gtime); if ( pt->cb != NULL ) pt->cb(pt->vcpu, pt->priv); _______________________________________________ Xen-changelog mailing list Xen-changelog@xxxxxxxxxxxxxxxxxxx http://lists.xensource.com/xen-changelog
|
Lists.xenproject.org is hosted with RackSpace, monitoring our |