|
@@ -688,6 +688,7 @@ detach_expired_timer(struct timer_list *timer, struct tvec_base *base)
|
|
|
if (!tbase_get_deferrable(timer->base))
|
|
if (!tbase_get_deferrable(timer->base))
|
|
|
base->active_timers--;
|
|
base->active_timers--;
|
|
|
base->all_timers--;
|
|
base->all_timers--;
|
|
|
|
|
+ (void)catchup_timer_jiffies(base);
|
|
|
}
|
|
}
|
|
|
|
|
|
|
|
static int detach_if_pending(struct timer_list *timer, struct tvec_base *base,
|
|
static int detach_if_pending(struct timer_list *timer, struct tvec_base *base,
|
|
@@ -703,6 +704,7 @@ static int detach_if_pending(struct timer_list *timer, struct tvec_base *base,
|
|
|
base->next_timer = base->timer_jiffies;
|
|
base->next_timer = base->timer_jiffies;
|
|
|
}
|
|
}
|
|
|
base->all_timers--;
|
|
base->all_timers--;
|
|
|
|
|
+ (void)catchup_timer_jiffies(base);
|
|
|
return 1;
|
|
return 1;
|
|
|
}
|
|
}
|
|
|
|
|
|