xtensa: Switch do_timer() to xtime_update()
Torben Hohn [Thu, 27 Jan 2011 15:00:27 +0000 (16:00 +0100)]
xtime_update() takes the xtime_lock itself.

set_linux_timer() does not need to be protected by xtime_lock.

[ tglx: This code is broken on SMP anyway. ]

Signed-off-by: Torben Hohn <torbenh@gmx.de>
Cc: Chris Zankel <chris@zankel.net>
Cc: Peter Zijlstra <peterz@infradead.org>
Cc: johnstul@us.ibm.com
Cc: hch@infradead.org
Cc: yong.zhang0@gmail.com
LKML-Reference: <20110127150027.23248.61798.stgit@localhost>
Signed-off-by: Thomas Gleixner <tglx@linutronix.de>

arch/xtensa/kernel/time.c

index 19df764..f3e5eb4 100644 (file)
@@ -96,16 +96,12 @@ again:
                update_process_times(user_mode(get_irq_regs()));
 #endif
 
-               write_seqlock(&xtime_lock);
-
-               do_timer(1); /* Linux handler in kernel/timer.c */
+               xtime_update(1); /* Linux handler in kernel/time/timekeeping */
 
                /* Note that writing CCOMPARE clears the interrupt. */
 
                next += CCOUNT_PER_JIFFY;
                set_linux_timer(next);
-
-               write_sequnlock(&xtime_lock);
        }
 
        /* Allow platform to do something useful (Wdog). */