diff --git a/arch/arm/kernel/time.c b/arch/arm/kernel/time.c
index 3d76bf2337347fb24b7b4b0783a8f4911ca3c518..1ff46cabc7efd4cd65c97ab0447895b3c21cf533 100644
--- a/arch/arm/kernel/time.c
+++ b/arch/arm/kernel/time.c
@@ -107,9 +107,7 @@ void timer_tick(void)
 {
 	profile_tick(CPU_PROFILING);
 	do_leds();
-	write_seqlock(&xtime_lock);
-	do_timer(1);
-	write_sequnlock(&xtime_lock);
+	xtime_update(1);
 #ifndef CONFIG_SMP
 	update_process_times(user_mode(get_irq_regs()));
 #endif