![]() | |||||||||||||
Messages in this thread |
From: Thomas Gleixner <tglx@linutronix.de> Date: Tue, 29 May 2007 23:47:39 +0200 > get_next_timer_interrupt() returns a delta of (LONG_MAX > 1) in case > there is no timer pending. On 64 bit machines this results in a > multiplication overflow in tick_nohz_stop_sched_tick(). > > Reported by: Dave Miller <davem@davemloft.net> > > Make the return value a constant and limit the return value to a 32 bit > value. > > When the max timeout value is returned, we can safely stop the tick > timer device. The max jiffies delta results in a 12 days timeout for > HZ=1000. > > In the long term the get_next_timer_interrupt() code needs to be > reworked to return ktime instead of jiffies, but we have to wait until > the last users of the original NO_IDLE_HZ code are converted. > > Signed-off-by: Thomas Gleixner <tglx@linutronix.de> Acked-off-by: David S. Miller <davem@davemloft.net> - To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/ | ||||||||||||
| Last update: 2007-05-29 23:05 [from the cache] ©2003-2008 | |||||||||||||