diff options
author | Keir Fraser <keir.fraser@citrix.com> | 2008-07-04 17:47:11 +0100 |
---|---|---|
committer | Keir Fraser <keir.fraser@citrix.com> | 2008-07-04 17:47:11 +0100 |
commit | ce5c899f22106926ca50c153a600b537d08970bc (patch) | |
tree | e23cbd3e5901a3178957ee36b22f1277832858b2 /extras/mini-os/sched.c | |
parent | 355b0469a8d017b80d9ce1078c90fe628c8b3bbe (diff) | |
download | xen-ce5c899f22106926ca50c153a600b537d08970bc.tar.gz xen-ce5c899f22106926ca50c153a600b537d08970bc.tar.bz2 xen-ce5c899f22106926ca50c153a600b537d08970bc.zip |
stubdom: use host's gcc
This makes stubdom use the host's gcc instead of downloading/compiling
binutils+gcc. That requires a bunch of changes and even uncovered a
few bugs, but saves a lot of time.
Signed-off-by: Samuel Thibault <samuel.thibault@eu.citrix.com>
Diffstat (limited to 'extras/mini-os/sched.c')
-rw-r--r-- | extras/mini-os/sched.c | 6 |
1 files changed, 3 insertions, 3 deletions
diff --git a/extras/mini-os/sched.c b/extras/mini-os/sched.c index 18dd855742..9b20dee4e4 100644 --- a/extras/mini-os/sched.c +++ b/extras/mini-os/sched.c @@ -75,7 +75,7 @@ void inline print_runqueue(void) void schedule(void) { struct thread *prev, *next, *thread; - struct list_head *iterator; + struct list_head *iterator, *next_iterator; unsigned long flags; prev = current; @@ -97,7 +97,7 @@ void schedule(void) s_time_t now = NOW(); s_time_t min_wakeup_time = now + SECONDS(10); next = NULL; - list_for_each(iterator, &idle_thread->thread_list) + list_for_each_safe(iterator, next_iterator, &idle_thread->thread_list) { thread = list_entry(iterator, struct thread, thread_list); if (!is_runnable(thread) && thread->wakeup_time != 0LL) @@ -128,7 +128,7 @@ void schedule(void) inturrupted at the return instruction. And therefore at safe point. */ if(prev != next) switch_threads(prev, next); - list_for_each(iterator, &exited_threads) + list_for_each_safe(iterator, next_iterator, &exited_threads) { thread = list_entry(iterator, struct thread, thread_list); if(thread != prev) |