History

[PATCH] tick-management: dyntick / highres functionality

With Ingo Molnar <mingo@elte.hu> Add functions to provide dynamic ticks and high resolution timers. The code which keeps track of jiffies and handles the long idle periods is shared between tick based and high resolution timer based dynticks. The dyntick functionality can be disabled on the kernel commandline. Provide also the infrastructure to support high resolution timers.

Thomas Gleixner committed 19 years ago

Commit 79bf2bb1 parent f8381cb15 files · +1049 −17Browse files

Showing the changes to kernel/timer.c (1 of 15 files). Show all

Unified · Split

kernel/timer.c+3−2
@@ -34,7 +34,7 @@ · 33 unmodified lines
34#include <linux/cpu.h>34#include <linux/cpu.h>
35#include <linux/syscalls.h>35#include <linux/syscalls.h>
36#include <linux/delay.h>36#include <linux/delay.h>
37#include <linux/clockchips.h>37#include <linux/tick.h>
38 38
39#include <asm/uaccess.h>39#include <asm/uaccess.h>
40#include <asm/unistd.h>40#include <asm/unistd.h>
@@ -874,6 +874,8 @@ static void change_clocksource(void) · 833 unmodified lines
874 clock->xtime_nsec = 0;874 clock->xtime_nsec = 0;
875 clocksource_calculate_interval(clock, NTP_INTERVAL_LENGTH);875 clocksource_calculate_interval(clock, NTP_INTERVAL_LENGTH);
876 876
877 tick_clock_notify();
878
877 printk(KERN_INFO "Time: %s clocksource has been installed.\n",879 printk(KERN_INFO "Time: %s clocksource has been installed.\n",
878 clock->name);880 clock->name);
879}881}
@@ -937,7 +939,6 @@ void __init timekeeping_init(void) · 57 unmodified lines
937 write_sequnlock_irqrestore(&xtime_lock, flags);939 write_sequnlock_irqrestore(&xtime_lock, flags);
938}940}
939 941
940
941/* flag for if timekeeping is suspended */942/* flag for if timekeeping is suspended */
942static int timekeeping_suspended;943static int timekeeping_suspended;
943/* time in seconds when suspend began */944/* time in seconds when suspend began */