X-Git-Url: http://git.onelab.eu/?a=blobdiff_plain;f=arch%2Fm32r%2Fkernel%2Ftime.c;h=3c4707280a5215cd833652067339ac4d80491d4d;hb=6a77f38946aaee1cd85eeec6cf4229b204c15071;hp=25a31668f808b5218fd16dbbbf91f08370663468;hpb=87fc8d1bb10cd459024a742c6a10961fefcef18f;p=linux-2.6.git diff --git a/arch/m32r/kernel/time.c b/arch/m32r/kernel/time.c index 25a31668f..3c4707280 100644 --- a/arch/m32r/kernel/time.c +++ b/arch/m32r/kernel/time.c @@ -193,7 +193,7 @@ EXPORT_SYMBOL(do_settimeofday); * BUG: This routine does not handle hour overflow properly; it just * sets the minutes. Usually you won't notice until after reboot! */ -static __inline__ int set_rtc_mmss(unsigned long nowtime) +static inline int set_rtc_mmss(unsigned long nowtime) { return 0; } @@ -205,11 +205,17 @@ static long last_rtc_update = 0; * timer_interrupt() needs to keep up the real-time clock, * as well as call the "do_timer()" routine every clocktick */ -static __inline__ void do_timer_interrupt(int irq, void *dev_id, - struct pt_regs * regs) +static inline void +do_timer_interrupt(int irq, void *dev_id, struct pt_regs * regs) { +#ifndef CONFIG_SMP + profile_tick(CPU_PROFILING, regs); +#endif do_timer(regs); +#ifndef CONFIG_SMP + update_process_times(user_mode(regs)); +#endif /* * If we have an externally synchronized Linux clock, then update * CMOS clock accordingly every ~11 minutes. Set_rtc_mmss() has to be @@ -241,10 +247,6 @@ irqreturn_t timer_interrupt(int irq, void *dev_id, struct pt_regs *regs) do_timer_interrupt(irq, NULL, regs); write_sequnlock(&xtime_lock); -#ifndef CONFIG_SMP - profile_tick(CPU_PROFILING, regs); -#endif - return IRQ_HANDLED; } @@ -273,8 +275,8 @@ void __init time_init(void) xtime.tv_sec = mktime(year, mon, day, hour, min, sec); xtime.tv_nsec = (INITIAL_JIFFIES % HZ) * (NSEC_PER_SEC / HZ); - wall_to_monotonic.tv_sec = -xtime.tv_sec; - wall_to_monotonic.tv_nsec = -xtime.tv_nsec; + set_normalized_timespec(&wall_to_monotonic, + -xtime.tv_sec, -xtime.tv_nsec); #if defined(CONFIG_CHIP_M32102) || defined(CONFIG_CHIP_XNUX2) \ || defined(CONFIG_CHIP_VDEC2) || defined(CONFIG_CHIP_M32700) \ @@ -314,4 +316,3 @@ unsigned long long sched_clock(void) { return (unsigned long long)jiffies * (1000000000 / HZ); } -