__get_base() was added to reduce the changes in previous patches. This patch removes it.
Signed-off-by: Oleg Nesterov <[EMAIL PROTECTED]> --- 2.6.12-rc1/kernel/timer.c~5_CLEAN 2005-03-19 22:28:34.000000000 +0300 +++ 2.6.12-rc1/kernel/timer.c 2005-03-19 23:34:23.000000000 +0300 @@ -86,16 +86,6 @@ static inline void set_running_timer(tve #endif } -static inline tvec_base_t *__get_base(struct timer_list *timer) -{ - tvec_base_t *base = timer->_base; - - if (__timer_pending(base)) - return (void*)base - __TIMER_PENDING; - else - return NULL; -} - static inline void __set_base(struct timer_list *timer, tvec_base_t *base, int pending) { @@ -323,16 +313,18 @@ EXPORT_SYMBOL(mod_timer); int del_timer(struct timer_list *timer) { unsigned long flags; - tvec_base_t *base; + tvec_base_t *_base, *base; check_timer(timer); repeat: - base = __get_base(timer); - if (!base) + _base = timer->_base; + if (!__timer_pending(_base)) return 0; + + base = (void*)_base - __TIMER_PENDING; spin_lock_irqsave(&base->lock, flags); - if (base != __get_base(timer)) { + if (_base != timer->_base) { spin_unlock_irqrestore(&base->lock, flags); goto repeat; } @@ -445,7 +437,7 @@ static int cascade(tvec_base_t *base, tv struct timer_list *tmp; tmp = list_entry(curr, struct timer_list, entry); - BUG_ON(__get_base(tmp) != base); + BUG_ON(tmp->_base != ((void*)base + __TIMER_PENDING)); curr = curr->next; internal_add_timer(base, tmp); } - 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/