diff --git a/arch/um/kernel/time.c b/arch/um/kernel/time.c index 117568d..3936948 100644 --- a/arch/um/kernel/time.c +++ b/arch/um/kernel/time.c @@ -67,14 +67,14 @@ static irqreturn_t um_timer(int irq, void *dev) static cycle_t itimer_read(struct clocksource *cs) { - return os_nsecs() / 1000; + return os_nsecs(); } static struct clocksource itimer_clocksource = { .name = "itimer", .rating = 300, .read = itimer_read, - .mask = CLOCKSOURCE_MASK(64), + .mask = CLOCKSOURCE_MASK(32), .flags = CLOCK_SOURCE_IS_CONTINUOUS, }; @@ -92,7 +92,7 @@ static void __init setup_itimer(void) clockevent_delta2ns(60 * HZ, &itimer_clockevent); itimer_clockevent.min_delta_ns = clockevent_delta2ns(1, &itimer_clockevent); - err = clocksource_register_hz(&itimer_clocksource, USEC_PER_SEC); + err = clocksource_register_hz(&itimer_clocksource, NSEC_PER_SEC); if (err) { printk(KERN_ERR "clocksource_register_hz returned %d\n", err); return;