[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[Xen-ia64-devel] [PATCH] Fixed "Oops: time tick before it's due" issue


  • To: <xen-ia64-devel@xxxxxxxxxxxxxxxxxxx>
  • From: "Xu, Anthony" <anthony.xu@xxxxxxxxx>
  • Date: Tue, 25 Apr 2006 22:36:36 +0800
  • Delivery-date: Tue, 25 Apr 2006 07:37:33 -0700
  • List-id: Discussion of the ia64 port of Xen <xen-ia64-devel.lists.xensource.com>
  • Thread-index: AcZodaeo8fsfdW9cRhy9pNln0buRBg==
  • Thread-topic: [Xen-ia64-devel] [PATCH] Fixed "Oops: time tick before it's due" issue

This patch is intended to fix "Oops: time tick before it's due" issue in 
VTI-domain.

itc_at_irq and stime_irq should be protected by read/write lock 'xtime_lock'.

Signed-off-by: Anthony Xu <anthony.xu@xxxxxxxxx>


diff -r de0c04ed4ab7 xen/arch/ia64/vmx/vlsapic.c
--- a/xen/arch/ia64/vmx/vlsapic.c       Fri Apr 21 16:40:17 2006
+++ b/xen/arch/ia64/vmx/vlsapic.c       Tue Apr 25 22:05:27 2006
@@ -121,7 +121,7 @@
     itc_freq = local_cpu_data->itc_freq;
     vtm->cfg_max_jump=itc_freq*MAX_JUMP_STEP/1000;
     vtm->cfg_min_grun=itc_freq*MIN_GUEST_RUNNING_TIME/1000;
-    init_timer(&vtm->vtm_timer, vtm_timer_fn, vcpu, 0);
+    init_timer(&vtm->vtm_timer, vtm_timer_fn, vcpu, vcpu->processor);
     vtm_reset(vcpu);
 }
 
diff -r de0c04ed4ab7 xen/arch/ia64/xen/xentime.c
--- a/xen/arch/ia64/xen/xentime.c       Fri Apr 21 16:40:17 2006
+++ b/xen/arch/ia64/xen/xentime.c       Tue Apr 25 22:05:27 2006
@@ -146,9 +146,9 @@
                         * another CPU. We need to avoid to SMP race by 
acquiring the
                         * xtime_lock.
                         */
-#ifdef TURN_ME_OFF_FOR_NOW_IA64_XEN
+//#ifdef TURN_ME_OFF_FOR_NOW_IA64_XEN
                        write_seqlock(&xtime_lock);
-#endif
+//#endif
 #ifdef TURN_ME_OFF_FOR_NOW_IA64_XEN
                        do_timer(regs);
 #endif
@@ -159,9 +159,9 @@
                        itc_at_irq = ia64_get_itc();
                        stime_irq += cycle_to_ns(itc_at_irq - old_itc);
 
-#ifdef TURN_ME_OFF_FOR_NOW_IA64_XEN
+//#ifdef TURN_ME_OFF_FOR_NOW_IA64_XEN
                        write_sequnlock(&xtime_lock);
-#endif
+//#endif
                } else
                        local_cpu_data->itm_next = new_itm;

Thanks,
-Anthony 

Attachment: timer_Oop.patch
Description: timer_Oop.patch

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

 


Rackspace

Lists.xenproject.org is hosted with RackSpace, monitoring our
servers 24x7x365 and backed by RackSpace's Fanatical Support®.