ia64/xen-unstable

changeset 1838:fd7b2f01d894

bitkeeper revision 1.1108.2.9 (40fcf6e9nDj-fZDSmZB0OoBsUd6N4w)

Merge freefall.cl.cam.ac.uk:/auto/groups/xeno/BK/xeno.bk
into freefall.cl.cam.ac.uk:/local/scratch/cl349/xeno.bk-prist
author cl349@freefall.cl.cam.ac.uk
date Tue Jul 20 10:41:45 2004 +0000 (2004-07-20)
parents ac1a83f52439 6fcb9ee1e130
children 567574707ca9
files linux-2.6.7-xen-sparse/arch/xen/i386/kernel/time.c linux-2.6.7-xen-sparse/arch/xen/kernel/process.c
line diff
     1.1 --- a/linux-2.6.7-xen-sparse/arch/xen/i386/kernel/time.c	Tue Jul 20 10:32:39 2004 +0000
     1.2 +++ b/linux-2.6.7-xen-sparse/arch/xen/i386/kernel/time.c	Tue Jul 20 10:41:45 2004 +0000
     1.3 @@ -479,6 +479,7 @@ int set_timeout_timer(void)
     1.4  {
     1.5      u64 alarm = 0;
     1.6      int ret = 0;
     1.7 +    int cpu = smp_processor_id();
     1.8  
     1.9      spin_lock(&timerlist_lock);
    1.10  
    1.11 @@ -490,12 +491,6 @@ int set_timeout_timer(void)
    1.12       */
    1.13      alarm = __jiffies_to_st(next_timer_interrupt());
    1.14  
    1.15 -#if 0
    1.16 -    /* Tasks on the timer task queue expect to be executed on the next tick. */
    1.17 -    if ( TQ_ACTIVE(tq_timer) )
    1.18 -        alarm = __jiffies_to_st(jiffies + 1);
    1.19 -#endif
    1.20 -
    1.21      /* Failure is pretty bad, but we'd best soldier on. */
    1.22      if ( HYPERVISOR_set_timer_op(alarm) != 0 )
    1.23          ret = -1;
     2.1 --- a/linux-2.6.7-xen-sparse/arch/xen/kernel/process.c	Tue Jul 20 10:32:39 2004 +0000
     2.2 +++ b/linux-2.6.7-xen-sparse/arch/xen/kernel/process.c	Tue Jul 20 10:41:45 2004 +0000
     2.3 @@ -11,11 +11,11 @@
     2.4  void xen_cpu_idle (void)
     2.5  {
     2.6  	local_irq_disable();
     2.7 -	if (need_resched()) {
     2.8 +	if (need_resched() || !list_empty(&RCU_curlist(cpu)))
     2.9  		local_irq_enable();
    2.10  		return;
    2.11  	}
    2.12 -	if (0 && set_timeout_timer() == 0) {
    2.13 +	if (set_timeout_timer() == 0) {
    2.14  		/* NB. Blocking reenable events in a race-free manner. */
    2.15  		HYPERVISOR_block();
    2.16  		return;