ia64/xen-unstable
changeset 1420:e46faf0b4305
bitkeeper revision 1.924 (40bbb502xR03c4VC3QbKW-RZeIrXzg)
Cset exclude: mwilli2@equilibrium.research.intel-research.net|ChangeSet|20040521100822|20051
Cset exclude: mwilli2@equilibrium.research.intel-research.net|ChangeSet|20040521100822|20051
author | iap10@labyrinth.cl.cam.ac.uk |
---|---|
date | Mon May 31 22:43:14 2004 +0000 (2004-05-31) |
parents | 11a958284da9 |
children | abde9435cdb4 |
files | xen/common/sched_bvt.c xen/common/schedule.c |
line diff
1.1 --- a/xen/common/sched_bvt.c Mon May 31 22:42:33 2004 +0000 1.2 +++ b/xen/common/sched_bvt.c Mon May 31 22:43:14 2004 +0000 1.3 @@ -170,7 +170,6 @@ void bvt_wake_up(struct task_struct *p) 1.4 static void bvt_do_block(struct task_struct *p) 1.5 { 1.6 BVT_INFO(p)->warpback = 0; 1.7 - __del_from_runqueue(p); 1.8 } 1.9 1.10 /* Control the scheduler. */ 1.11 @@ -277,8 +276,7 @@ static task_slice_t bvt_do_schedule(s_ti 1.12 1.13 __calc_evt(prev_inf); 1.14 1.15 - if( __task_on_runqueue(prev)) 1.16 - __del_from_runqueue(prev); 1.17 + __del_from_runqueue(prev); 1.18 1.19 if ( likely(prev->state == TASK_RUNNING) ) 1.20 __add_to_runqueue_tail(prev);
2.1 --- a/xen/common/schedule.c Mon May 31 22:42:33 2004 +0000 2.2 +++ b/xen/common/schedule.c Mon May 31 22:43:14 2004 +0000 2.3 @@ -224,7 +224,6 @@ long do_block(void) 2.4 ASSERT(current->domain != IDLE_DOMAIN_ID); 2.5 current->shared_info->vcpu_data[0].evtchn_upcall_mask = 0; 2.6 current->state = TASK_INTERRUPTIBLE; 2.7 - SCHED_OP(do_block, current); 2.8 TRACE_2D(TRC_SCHED_BLOCK, current->domain, current); 2.9 __enter_scheduler(); 2.10 return 0; 2.11 @@ -462,10 +461,9 @@ asmlinkage void __enter_scheduler(void) 2.12 { 2.13 /* this check is needed to avoid a race condition */ 2.14 if ( signal_pending(prev) ) 2.15 - { 2.16 prev->state = TASK_RUNNING; 2.17 - SCHED_OP(wake_up, prev); 2.18 - } 2.19 + else 2.20 + SCHED_OP(do_block, prev); 2.21 } 2.22 2.23 prev->cpu_time += now - prev->lastschd;