From: Heiko Carstens Date: Thu, 9 Jul 2009 09:24:26 +0000 (+0200) Subject: timer stats: fix quick check optimization X-Git-Url: https://git.stricted.de/?a=commitdiff_plain;h=f9f868dbcca961ed62f1df1d114abd0c38c47dce;p=GitHub%2FLineageOS%2Fandroid_kernel_samsung_universal7580.git timer stats: fix quick check optimization git commit 507e1231 "timer stats: Optimize by adding quick check to avoid function calls" added one wrong check so that one unnecessary function call isn't elimated. time_stats_account_hrtimer() checks if timer->start_pid isn't initialized in order to find out if timer_stats_update_stats() should be called. However start_pid is initialized with -1 instead of 0, so that the function call always happens. Check timer->start_site like in timer_stats_account_timer() to fix this. Signed-off-by: Heiko Carstens Signed-off-by: Thomas Gleixner --- diff --git a/include/linux/hrtimer.h b/include/linux/hrtimer.h index 54648e625ef..4759917adc7 100644 --- a/include/linux/hrtimer.h +++ b/include/linux/hrtimer.h @@ -448,7 +448,7 @@ extern void timer_stats_update_stats(void *timer, pid_t pid, void *startf, static inline void timer_stats_account_hrtimer(struct hrtimer *timer) { - if (likely(!timer->start_pid)) + if (likely(!timer->start_site)) return; timer_stats_update_stats(timer, timer->start_pid, timer->start_site, timer->function, timer->start_comm, 0);