diff options
author | Andi Kleen <andi@firstfloor.org> | 2008-08-29 20:06:23 +0200 |
---|---|---|
committer | Linus Torvalds <torvalds@linux-foundation.org> | 2008-08-29 14:46:29 -0700 |
commit | 316d9679f33caf7e683471647d1472bfe133d858 (patch) | |
tree | 46271cdd7405468fbc4e9abbaf65e01edd6ae0a3 /kernel/softlockup.c | |
parent | b4609472116bb806a95e98d04767189406c74c70 (diff) | |
download | linux-stable-316d9679f33caf7e683471647d1472bfe133d858.tar.gz linux-stable-316d9679f33caf7e683471647d1472bfe133d858.tar.bz2 linux-stable-316d9679f33caf7e683471647d1472bfe133d858.zip |
Don't trigger softlockup detector on network fs blocked tasks
Pulling the ethernet cable on a 2.6.27-rc system with NFS mounts
currently leads to an ongoing flood of soft lockup detector backtraces
for all tasks blocked on the NFS mounts when the hickup takes
longer than 120s.
I don't think NFS problems should be all that noisy.
Luckily there's a reasonably easy way to distingush this case.
Don't report task softlockup warnings for tasks in TASK_KILLABLE
state, which is used by the network file systems.
I believe this patch is a 2.6.27 candidate.
Signed-off-by: Andi Kleen <ak@linux.intel.com>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
Diffstat (limited to 'kernel/softlockup.c')
-rw-r--r-- | kernel/softlockup.c | 4 |
1 files changed, 4 insertions, 0 deletions
diff --git a/kernel/softlockup.c b/kernel/softlockup.c index b75b492fbfcf..1a07f8ca4b92 100644 --- a/kernel/softlockup.c +++ b/kernel/softlockup.c @@ -180,6 +180,10 @@ static void check_hung_task(struct task_struct *t, unsigned long now) if (t->flags & PF_FROZEN) return; + /* Don't check for tasks waiting on network file systems like NFS */ + if (t->state & TASK_KILLABLE) + return; + if (switch_count != t->last_switch_count || !t->last_switch_timestamp) { t->last_switch_count = switch_count; t->last_switch_timestamp = now; |