timer_sleep() need interrupts on.
authorBen Pfaff <blp@cs.stanford.edu>
Wed, 6 Oct 2004 18:27:00 +0000 (18:27 +0000)
committerBen Pfaff <blp@cs.stanford.edu>
Wed, 6 Oct 2004 18:27:00 +0000 (18:27 +0000)
src/devices/timer.c

index ec9778321e3339aa2f32bb5496ece5e71a5ea969..ecf6c5aacdfee97c6577c8b60912475ef99e4e77 100644 (file)
@@ -66,9 +66,9 @@ timer_sleep (int64_t ticks)
 {
   int64_t start = timer_ticks ();
 
+  ASSERT (intr_get_level () == INTR_ON);
   while (timer_elapsed (start) < ticks) 
-    if (intr_get_level () == INTR_ON)
-      thread_yield ();
+    thread_yield ();
 }
 
 /* Returns MS milliseconds in timer ticks, rounding up. */