diff options
author | Johannes Weiner <hannes@saeurebad.de> | 2008-07-01 09:12:04 +0200 |
---|---|---|
committer | Ingo Molnar <mingo@elte.hu> | 2008-07-01 09:22:49 +0200 |
commit | 3e2f69fdd1b00166e7d589bce56b2d36a9e74374 (patch) | |
tree | 005f716dfaf10d91a917a42bfbce3d0b05aec32e | |
parent | dd7a1e5615b1719c0fdffee1ea5a7820ac8141a6 (diff) | |
download | linux-3e2f69fdd1b00166e7d589bce56b2d36a9e74374.tar.gz linux-3e2f69fdd1b00166e7d589bce56b2d36a9e74374.tar.bz2 linux-3e2f69fdd1b00166e7d589bce56b2d36a9e74374.zip |
softlockup: fix watchdog task wakeup frequency
The print_timestamp can never be bigger than the touch_timestamp, at
maximum it can be equal. And if it is, the second check for
touch_timestamp + 1 bigger print_timestamp is always true, too.
The check for equality is sufficient as we proceed in one-second-steps
and are at least one second away from the last print-out if we have
another timestamp.
Signed-off-by: Johannes Weiner <hannes@saeurebad.de>
Cc: Peter Zijlstra <a.p.zijlstra@chello.nl>
Signed-off-by: Ingo Molnar <mingo@elte.hu>
-rw-r--r-- | kernel/softlockup.c | 5 |
1 files changed, 1 insertions, 4 deletions
diff --git a/kernel/softlockup.c b/kernel/softlockup.c index d53ab702a7db..7bd8d1aadd5d 100644 --- a/kernel/softlockup.c +++ b/kernel/softlockup.c @@ -116,11 +116,8 @@ void softlockup_tick(void) print_timestamp = per_cpu(print_timestamp, this_cpu); /* report at most once a second */ - if ((print_timestamp >= touch_timestamp && - print_timestamp < (touch_timestamp + 1)) || - did_panic) { + if (print_timestamp == touch_timestamp || did_panic) return; - } /* do not print during early bootup: */ if (unlikely(system_state != SYSTEM_RUNNING)) { |