diff options
| author | Ingo Molnar <mingo@elte.hu> | 2009-01-16 17:46:22 +0100 |
|---|---|---|
| committer | Ingo Molnar <mingo@elte.hu> | 2009-01-16 17:46:22 +0100 |
| commit | 5a2dd72abdae75ea2960145e0549635ce4e0be96 (patch) | |
| tree | 44dba0119c75679a17215200f92ab23bdde9efc2 /kernel/sched_clock.c | |
| parent | efdc64f0c792ea744bcc9203f35b908e66d42f41 (diff) | |
| parent | 7cb36b6ccdca03bd87e8faca7fd920643dd1aec7 (diff) | |
| download | lwn-5a2dd72abdae75ea2960145e0549635ce4e0be96.tar.gz lwn-5a2dd72abdae75ea2960145e0549635ce4e0be96.zip | |
Merge branch 'linus' into irq/genirq
Diffstat (limited to 'kernel/sched_clock.c')
| -rw-r--r-- | kernel/sched_clock.c | 5 |
1 files changed, 4 insertions, 1 deletions
diff --git a/kernel/sched_clock.c b/kernel/sched_clock.c index e8ab096ddfe3..a0b0852414cc 100644 --- a/kernel/sched_clock.c +++ b/kernel/sched_clock.c @@ -124,7 +124,7 @@ static u64 __update_sched_clock(struct sched_clock_data *scd, u64 now) clock = scd->tick_gtod + delta; min_clock = wrap_max(scd->tick_gtod, scd->clock); - max_clock = scd->tick_gtod + TICK_NSEC; + max_clock = wrap_max(scd->clock, scd->tick_gtod + TICK_NSEC); clock = wrap_max(clock, min_clock); clock = wrap_min(clock, max_clock); @@ -227,6 +227,9 @@ EXPORT_SYMBOL_GPL(sched_clock_idle_sleep_event); */ void sched_clock_idle_wakeup_event(u64 delta_ns) { + if (timekeeping_suspended) + return; + sched_clock_tick(); touch_softlockup_watchdog(); } |
