projects
/
openwrt
/
staging
/
blogic.git
/ commitdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
| commitdiff |
tree
raw
|
patch
| inline |
side by side
(parent:
0cff810
)
softlockup: Stop spurious softlockup messages due to overflow
author
Colin Ian King
<
[email protected]
>
Fri, 19 Mar 2010 10:28:02 +0000
(10:28 +0000)
committer
Ingo Molnar
<
[email protected]
>
Sun, 21 Mar 2010 18:30:13 +0000
(19:30 +0100)
Ensure additions on touch_ts do not overflow. This can occur
when the top 32 bits of the TSC reach 0xffffffff causing
additions to touch_ts to overflow and this in turn generates
spurious softlockup warnings.
Signed-off-by: Colin Ian King <
[email protected]
>
Cc: Peter Zijlstra <
[email protected]
>
Cc: Eric Dumazet <
[email protected]
>
Cc: <
[email protected]
>
LKML-Reference: <
1268994482
.1798.6.camel@lenovo>
Signed-off-by: Ingo Molnar <
[email protected]
>
kernel/softlockup.c
patch
|
blob
|
history
diff --git
a/kernel/softlockup.c
b/kernel/softlockup.c
index 0d4c7898ab805dd868880e7deca2d0d69d88fc67..4b493f67dcb562c183258115619539f3a68cd62a 100644
(file)
--- a/
kernel/softlockup.c
+++ b/
kernel/softlockup.c
@@
-155,11
+155,11
@@
void softlockup_tick(void)
* Wake up the high-prio watchdog task twice per
* threshold timespan.
*/
- if (
now > touch_ts + softlockup_thresh/2
)
+ if (
time_after(now - softlockup_thresh/2, touch_ts)
)
wake_up_process(per_cpu(softlockup_watchdog, this_cpu));
/* Warn about unreasonable delays: */
- if (
now <= (touch_ts + softlockup_thresh
))
+ if (
time_before_eq(now - softlockup_thresh, touch_ts
))
return;
per_cpu(softlockup_print_ts, this_cpu) = touch_ts;