diff --git a/xen/arch/x86/hvm/vpt.c b/xen/arch/x86/hvm/vpt.c index a949d918ba..c4e47e25cb 100644 --- a/xen/arch/x86/hvm/vpt.c +++ b/xen/arch/x86/hvm/vpt.c @@ -230,9 +230,9 @@ void pt_update_irq(struct vcpu *v) list_for_each_entry ( pt, head, list ) { if ( !pt_irq_masked(pt) && pt->pending_intr_nr && - ((pt->last_plt_gtime + pt->period_cycles) < max_lag) ) + ((pt->last_plt_gtime + pt->period) < max_lag) ) { - max_lag = pt->last_plt_gtime + pt->period_cycles; + max_lag = pt->last_plt_gtime + pt->period; earliest_pt = pt; } } @@ -309,7 +309,7 @@ void pt_intr_post(struct vcpu *v, struct hvm_intack intack) } else { - pt->last_plt_gtime += pt->period_cycles; + pt->last_plt_gtime += pt->period; pt->pending_intr_nr--; } } @@ -385,7 +385,6 @@ void create_periodic_time( pt->vcpu = v; pt->last_plt_gtime = hvm_get_guest_time(pt->vcpu); pt->irq = irq; - pt->period_cycles = (u64)period; pt->one_shot = !period; pt->scheduled = NOW() + delta; diff --git a/xen/include/asm-x86/hvm/vpt.h b/xen/include/asm-x86/hvm/vpt.h index 2d572d5376..47397e23c8 100644 --- a/xen/include/asm-x86/hvm/vpt.h +++ b/xen/include/asm-x86/hvm/vpt.h @@ -51,7 +51,6 @@ struct periodic_time { struct vcpu *vcpu; /* vcpu timer interrupt delivers to */ u32 pending_intr_nr; /* pending timer interrupts */ u64 period; /* frequency in ns */ - u64 period_cycles; /* frequency in cpu cycles */ s_time_t scheduled; /* scheduled timer interrupt */ u64 last_plt_gtime; /* platform time when last IRQ is injected */ struct timer timer; /* ac_timer */