Browse Source

time: ntp: micro-optimize ntp_update_offset()

Impact: cleanup, no functionality changed

The time_reftime update in ntp_update_offset() to xtime.tv_sec
is a convoluted way of saying that we want to freeze the frequency
and want the 'secs' delta to be 0. Also make this branch unlikely.

This shaves off 8 bytes from the code size:

   text	   data	    bss	    dec	    hex	filename
   2504	    114	    136	   2754	    ac2	ntp.o.before
   2496	    114	    136	   2746	    aba	ntp.o.after

Signed-off-by: Ingo Molnar <mingo@elte.hu>
Ingo Molnar 16 years ago
parent
commit
c7986acba2
1 changed files with 3 additions and 3 deletions
  1. 3 3
      kernel/time/ntp.c

+ 3 - 3
kernel/time/ntp.c

@@ -141,10 +141,10 @@ static void ntp_update_offset(long offset)
 	 * Select how the frequency is to be controlled
 	 * Select how the frequency is to be controlled
 	 * and in which mode (PLL or FLL).
 	 * and in which mode (PLL or FLL).
 	 */
 	 */
-	if (time_status & STA_FREQHOLD || time_reftime == 0)
-		time_reftime = xtime.tv_sec;
-
 	secs = xtime.tv_sec - time_reftime;
 	secs = xtime.tv_sec - time_reftime;
+	if (unlikely(time_status & STA_FREQHOLD || time_reftime == 0))
+		secs = 0;
+
 	time_reftime = xtime.tv_sec;
 	time_reftime = xtime.tv_sec;
 
 
 	offset64    = offset;
 	offset64    = offset;