diff options
Diffstat (limited to 'arch/um/kernel/time.c')
| -rw-r--r-- | arch/um/kernel/time.c | 14 |
1 files changed, 6 insertions, 8 deletions
diff --git a/arch/um/kernel/time.c b/arch/um/kernel/time.c index 552ca1cb9847..820affbf3e16 100644 --- a/arch/um/kernel/time.c +++ b/arch/um/kernel/time.c | |||
| @@ -35,9 +35,6 @@ unsigned long long sched_clock(void) | |||
| 35 | return (unsigned long long)jiffies_64 * (1000000000 / HZ); | 35 | return (unsigned long long)jiffies_64 * (1000000000 / HZ); |
| 36 | } | 36 | } |
| 37 | 37 | ||
| 38 | /* Changed at early boot */ | ||
| 39 | int timer_irq_inited = 0; | ||
| 40 | |||
| 41 | static unsigned long long prev_nsecs; | 38 | static unsigned long long prev_nsecs; |
| 42 | #ifdef CONFIG_UML_REAL_TIME_CLOCK | 39 | #ifdef CONFIG_UML_REAL_TIME_CLOCK |
| 43 | static long long delta; /* Deviation per interval */ | 40 | static long long delta; /* Deviation per interval */ |
| @@ -98,7 +95,7 @@ irqreturn_t um_timer(int irq, void *dev, struct pt_regs *regs) | |||
| 98 | 95 | ||
| 99 | do_timer(regs); | 96 | do_timer(regs); |
| 100 | 97 | ||
| 101 | nsecs = get_time() + local_offset; | 98 | nsecs = get_time(); |
| 102 | xtime.tv_sec = nsecs / NSEC_PER_SEC; | 99 | xtime.tv_sec = nsecs / NSEC_PER_SEC; |
| 103 | xtime.tv_nsec = nsecs - xtime.tv_sec * NSEC_PER_SEC; | 100 | xtime.tv_nsec = nsecs - xtime.tv_sec * NSEC_PER_SEC; |
| 104 | 101 | ||
| @@ -113,12 +110,13 @@ static void register_timer(void) | |||
| 113 | 110 | ||
| 114 | err = request_irq(TIMER_IRQ, um_timer, IRQF_DISABLED, "timer", NULL); | 111 | err = request_irq(TIMER_IRQ, um_timer, IRQF_DISABLED, "timer", NULL); |
| 115 | if(err != 0) | 112 | if(err != 0) |
| 116 | printk(KERN_ERR "timer_init : request_irq failed - " | 113 | printk(KERN_ERR "register_timer : request_irq failed - " |
| 117 | "errno = %d\n", -err); | 114 | "errno = %d\n", -err); |
| 118 | 115 | ||
| 119 | timer_irq_inited = 1; | 116 | err = set_interval(1); |
| 120 | 117 | if(err != 0) | |
| 121 | user_time_init(); | 118 | printk(KERN_ERR "register_timer : set_interval failed - " |
| 119 | "errno = %d\n", -err); | ||
| 122 | } | 120 | } |
| 123 | 121 | ||
| 124 | extern void (*late_time_init)(void); | 122 | extern void (*late_time_init)(void); |
