|
@@ -85,7 +85,7 @@ int update_persistent_clock(struct timespec now)
|
|
|
|
|
|
/*
|
|
|
* timer_interrupt() needs to keep up the real-time clock,
|
|
|
- * as well as call the "do_timer()" routine every clocktick
|
|
|
+ * as well as call the "xtime_update()" routine every clocktick
|
|
|
*/
|
|
|
|
|
|
#define TICK_SIZE (tick_nsec / 1000)
|
|
@@ -96,14 +96,9 @@ static irqreturn_t timer_interrupt(int dummy, void *dev_id)
|
|
|
profile_tick(CPU_PROFILING);
|
|
|
#endif
|
|
|
|
|
|
- /* Protect counter clear so that do_gettimeoffset works */
|
|
|
- write_seqlock(&xtime_lock);
|
|
|
-
|
|
|
clear_clock_irq();
|
|
|
|
|
|
- do_timer(1);
|
|
|
-
|
|
|
- write_sequnlock(&xtime_lock);
|
|
|
+ xtime_update(1);
|
|
|
|
|
|
#ifndef CONFIG_SMP
|
|
|
update_process_times(user_mode(get_irq_regs()));
|