[PATCH] Use read_timer_tsc only when CPU has TSC

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 




Only use read_timer_tsc only when CPU has TSC. Thanks to Andrea for 
pointing this out. Should not be issue on any platforms as all
recent systems that has HPET also has CPUs that supports TSC. The patch is
still required for correctness.

Signed-off-by: Venkatesh Pallipadi <[email protected]>

diff -purN  linux-2.6.13-rc1/arch/i386/kernel/timers/timer_hpet.c.org linux-2.6.13-rc1/arch/i386/kernel/timers/timer_hpet.c
--- linux-2.6.13-rc1/arch/i386/kernel/timers/timer_hpet.c.org	2005-07-13 08:12:11.846794648 -0700
+++ linux-2.6.13-rc1/arch/i386/kernel/timers/timer_hpet.c	2005-07-13 08:17:25.055179736 -0700
@@ -136,6 +136,8 @@ static void delay_hpet(unsigned long loo
 	} while ((hpet_end - hpet_start) < (loops));
 }
 
+static struct timer_opts timer_hpet;
+
 static int __init init_hpet(char* override)
 {
 	unsigned long result, remain;
@@ -163,6 +165,8 @@ static int __init init_hpet(char* overri
 			}
 			set_cyc2ns_scale(cpu_khz/1000);
 		}
+		/* set this only when cpu_has_tsc */
+		timer_hpet.read_timer = read_timer_tsc;
 	}
 
 	/*
@@ -186,7 +190,6 @@ static struct timer_opts timer_hpet = {
 	.get_offset =		get_offset_hpet,
 	.monotonic_clock =	monotonic_clock_hpet,
 	.delay = 		delay_hpet,
-	.read_timer = 		read_timer_tsc,
 };
 
 struct init_timer_opts __initdata timer_hpet_init = {
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to [email protected]
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/

[Index of Archives]     [Kernel Newbies]     [Netfilter]     [Bugtraq]     [Photo]     [Gimp]     [Yosemite News]     [MIPS Linux]     [ARM Linux]     [Linux Security]     [Linux RAID]     [Video 4 Linux]     [Linux for the blind]
  Powered by Linux