[PATCH] time_interpolator: Use readq_relaxed() instead of readq().

On some platforms readq performs additional work to make sure I/O is done
in a coherent way. This is not needed for time retrieval as done by the
time interpolator. So we can use readq_relaxed instead which will improve
performance.

It affects sparc64 and ia64 only. Apparently it makes a significant
difference on ia64.

Signed-off-by: Christoph Lameter <clameter@sgi.com>
Cc: john stultz <johnstul@us.ibm.com>
Cc: "David S. Miller" <davem@davemloft.net>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>

authored by Christoph Lameter and committed by Linus Torvalds 685db65e 7f99f06f

+2 -2
+2 -2
kernel/timer.c
··· 1351 1351 return x(); 1352 1352 1353 1353 case TIME_SOURCE_MMIO64 : 1354 - return readq((void __iomem *) time_interpolator->addr); 1354 + return readq_relaxed((void __iomem *)time_interpolator->addr); 1355 1355 1356 1356 case TIME_SOURCE_MMIO32 : 1357 - return readl((void __iomem *) time_interpolator->addr); 1357 + return readl_relaxed((void __iomem *)time_interpolator->addr); 1358 1358 1359 1359 default: return get_cycles(); 1360 1360 }