Subject: mod_timer improvement

From: Steve Modica <[email-masked]>
Date: Thu, 02 Oct 2003 13:20:23 -0500

Sorry about the screwed up formatting!  I'm kinda new at this :)

*** linux/linux/kernel/timer.c       2003/08/11 20:16:19     1.23
--- linux/linux/kernel/timer.c       2003/10/01 21:09:20     1.24
*************** int mod_timer(struct timer_list *timer,
*** 207,212 ****
--- 207,220 ----
         int ret;
         unsigned long flags;

+         /*
+        * This is a common optimization triggered by the
+        * networking code - if the timer is re-modified
+        * to be the same thing then just return:
+        */
+         if (timer->expires == expires && timer_pending(timer))
+                return 1;
+
         spin_lock_irqsave(&timerlist_lock, flags);
         timer->expires = expires;
         ret = detach_timer(timer);

-- 
Steve Modica
work: 651-683-3224
mobile: 651-261-3201
MTS-Technical Lead
"Give a man a fish, and he will eat for a day, hit him with a fish and
he leaves you alone" - me