ia64/xen-unstable

changeset 10247:976517433993

[IA64] Fix another bug which causes "Oops: time tick before it's due"

Signed-off-by: Anthony Xu < anthony.xu@intel.com >
author awilliam@xenbuild.aw
date Sat Jun 03 15:21:07 2006 -0600 (2006-06-03)
parents 2c7c715ad185
children 8771f539663a
files xen/arch/ia64/vmx/vlsapic.c
line diff
     1.1 --- a/xen/arch/ia64/vmx/vlsapic.c	Sat Jun 03 14:48:42 2006 -0600
     1.2 +++ b/xen/arch/ia64/vmx/vlsapic.c	Sat Jun 03 15:21:07 2006 -0600
     1.3 @@ -39,6 +39,7 @@
     1.4  #include <asm/kregs.h>
     1.5  #include <asm/vmx_platform.h>
     1.6  #include <asm/hvm/vioapic.h>
     1.7 +#include <asm/linux/jiffies.h>
     1.8  
     1.9  //u64  fire_itc;
    1.10  //u64  fire_itc2;
    1.11 @@ -171,6 +172,8 @@ void vtm_set_itm(VCPU *vcpu, uint64_t va
    1.12      clear_bit(ITV_VECTOR(vitv), &VCPU(vcpu, irr[0]));
    1.13      VCPU(vcpu,itm)=val;
    1.14      cur_itc =now_itc(vtm);
    1.15 +    if(time_before(val, cur_itc))
    1.16 +        val = cur_itc;
    1.17      if(val >  vtm->last_itc){
    1.18          expires = NOW() + cycle_to_ns(val-cur_itc) + TIMER_SLOP;
    1.19          set_timer(&vtm->vtm_timer, expires);