Re: [PATCH] Dynamic tick for x86 version 050602-2

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



* Pavel Machek <[email protected]> [050603 15:38]:
> Hi!
> 
> > Should be fixed now, the header was defining it as a function un UP
> > system with no local apic. Can you try the following version?
> 
> Some comments below...
> 
> > @@ -102,6 +103,12 @@ fastcall unsigned int do_IRQ(struct pt_r
> >  		);
> >  	} else
> >  #endif
> > +
> > +#ifdef CONFIG_NO_IDLE_HZ
> > +	if (dyn_tick->state & (DYN_TICK_ENABLED | DYN_TICK_SKIPPING) && irq != 0)
> > +		dyn_tick->interrupt(irq, NULL, regs);
> > +#endif
> > +
> >  		__do_IRQ(irq, regs);
> >  
> >  	irq_exit();
> 
> Is not indentation little wrong here?

Good catch, this is fixed now.

> > Index: linux-dev/arch/i386/kernel/process.c
> > ===================================================================
> > --- linux-dev.orig/arch/i386/kernel/process.c	2005-06-01 17:51:36.000000000 -0700
> > +++ linux-dev/arch/i386/kernel/process.c	2005-06-01 17:54:32.000000000 -0700
> > @@ -160,6 +161,10 @@ void cpu_idle (void)
> >  			if (!idle)
> >  				idle = default_idle;
> >  
> > +#ifdef CONFIG_NO_IDLE_HZ
> > +			dyn_tick_reprogram_timer();
> > +#endif
> > +
> >  			__get_cpu_var(irq_stat).idle_timestamp = jiffies;
> >  			idle();
> >  		}
> 
> Your headers are good enough; this should not be neccessary.

Great, one ifdef less :)

> > +#define NS_TICK_LEN		((1 * 1000000000)/HZ)
> > +#define DYN_TICK_MIN_SKIP	2
> > +
> > +#ifdef CONFIG_NO_IDLE_HZ
> > +
> > +extern unsigned long dyn_tick_reprogram_timer(void);
> > +
> > +#else
> > +
> > +#define arch_has_safe_halt()		0
> > +#define dyn_tick_reprogram_timer()	{}
> 
> do {} while (0)
> 
> , else you are preparing trap for someone.

Can you please explain what the difference between these two are?
Some compiler version specific thing?

> > Index: linux-dev/kernel/dyn-tick.c
> > ===================================================================
> > --- /dev/null	1970-01-01 00:00:00.000000000 +0000
> > +++ linux-dev/kernel/dyn-tick.c	2005-06-02 10:37:12.000000000 -0700
> > @@ -0,0 +1,235 @@
> > +/*
> > + * linux/arch/i386/kernel/dyn-tick.c
> > + *
> > + * Beginnings of generic dynamic tick timer support
> > + *
> > + * Copyright (C) 2004 Nokia Corporation
> > + * Written by Tony Lindgen <[email protected]> and
> > + * Tuukka Tikkanen <[email protected]>
> > + *
> 
> Heh, you work for Nokia? Can I get one of those nokia 770 toys? I
> should have 100 euros somewhere here :-).

Yes, we did dyntick originally for ARM OMAP and 770. I don't think
I have any power who Nokia will be giving the discount developer
770's for though :) I think you have to apply on some webpage...
Naturally you can try to use me as a reference, but I don't know
if it helps :)

Cheers,

Tony
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to [email protected]
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/

[Index of Archives]     [Kernel Newbies]     [Netfilter]     [Bugtraq]     [Photo]     [Stuff]     [Gimp]     [Yosemite News]     [MIPS Linux]     [ARM Linux]     [Linux Security]     [Linux RAID]     [Video 4 Linux]     [Linux for the blind]     [Linux Resources]
  Powered by Linux