|   | 
      | 
  
  
      | 
      | 
  
 
     | 
    | 
  
  
     | 
    | 
  
  
    |   | 
      | 
  
  
    | 
         
xen-changelog
[Xen-changelog] [xen-unstable] xen: use s_time_t for periodic timer	dead
 
# HG changeset patch
# User Keir Fraser <keir.fraser@xxxxxxxxxx>
# Date 1278579154 -3600
# Node ID db35740574a5302e535e1268d0e62ffcac95b213
# Parent  8fe12d6816dbf50257c0c62f288aa784f13a6e29
xen: use s_time_t for periodic timer deadlines.
Otherwise vcpu_periodic_timer_work() can think the next timer is in
the future (and re-issue it unchanged) while timer_softirq_action()
thinks it's in the past (and fires it immediately), leading to
livelock.
Signed-off-by: Tim Deegan <Tim.Deegan@xxxxxxxxxx>
---
 xen/common/schedule.c   |    2 +-
 xen/include/xen/sched.h |    4 ++--
 2 files changed, 3 insertions(+), 3 deletions(-)
diff -r 8fe12d6816db -r db35740574a5 xen/common/schedule.c
--- a/xen/common/schedule.c     Thu Jul 08 09:52:01 2010 +0100
+++ b/xen/common/schedule.c     Thu Jul 08 09:52:34 2010 +0100
@@ -992,7 +992,7 @@ static void vcpu_periodic_timer_work(str
 static void vcpu_periodic_timer_work(struct vcpu *v)
 {
     s_time_t now = NOW();
-    uint64_t periodic_next_event;
+    s_time_t periodic_next_event;
 
     if ( v->periodic_period == 0 )
         return;
diff -r 8fe12d6816db -r db35740574a5 xen/include/xen/sched.h
--- a/xen/include/xen/sched.h   Thu Jul 08 09:52:01 2010 +0100
+++ b/xen/include/xen/sched.h   Thu Jul 08 09:52:34 2010 +0100
@@ -89,8 +89,8 @@ struct vcpu
 
     struct vcpu     *next_in_list;
 
-    uint64_t         periodic_period;
-    uint64_t         periodic_last_event;
+    s_time_t         periodic_period;
+    s_time_t         periodic_last_event;
     struct timer     periodic_timer;
     struct timer     singleshot_timer;
 
_______________________________________________
Xen-changelog mailing list
Xen-changelog@xxxxxxxxxxxxxxxxxxx
http://lists.xensource.com/xen-changelog
 |   
 
| <Prev in Thread] | 
Current Thread | 
[Next in Thread> |  
- [Xen-changelog] [xen-unstable] xen: use s_time_t for periodic timer	deadlines.,
Xen patchbot-unstable <=
  
 |  
  
 | 
    | 
  
  
    |   | 
    |