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>
This commit is contained in:
Johannes Weiner 2008-07-01 09:12:04 +02:00 committed by Ingo Molnar
parent dd7a1e5615
commit 3e2f69fdd1

View file

@ -116,11 +116,8 @@ void softlockup_tick(void)
print_timestamp = per_cpu(print_timestamp, this_cpu); print_timestamp = per_cpu(print_timestamp, this_cpu);
/* report at most once a second */ /* report at most once a second */
if ((print_timestamp >= touch_timestamp && if (print_timestamp == touch_timestamp || did_panic)
print_timestamp < (touch_timestamp + 1)) ||
did_panic) {
return; return;
}
/* do not print during early bootup: */ /* do not print during early bootup: */
if (unlikely(system_state != SYSTEM_RUNNING)) { if (unlikely(system_state != SYSTEM_RUNNING)) {