Messages in this thread Patch in this message | | | Date | Thu, 9 Jul 2009 11:24:26 +0200 | From | Heiko Carstens <> | Subject | [PATCH] timer stats: fix quick check optimization |
| |
From: Heiko Carstens <heiko.carstens@de.ibm.com>
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 <heiko.carstens@de.ibm.com> --- include/linux/hrtimer.h | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-)
Index: linux-2.6/include/linux/hrtimer.h =================================================================== --- linux-2.6.orig/include/linux/hrtimer.h +++ linux-2.6/include/linux/hrtimer.h @@ -448,7 +448,7 @@ extern void timer_stats_update_stats(voi 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);
| |