2009-11-25 13:23:45

by Shmulik Ladkani

[permalink] [raw]
Subject: [PATCH] sched.c: call debug_show_all_locks when dumping all tasks

show_state_filter() failed to call debug_show_all_locks() when specified to
dump all tasks.
Fix: call debug_show_all_locks() when !state_filter (since !state_filter
means "all tasks").

Signed-off-by: Shmulik Ladkani <[email protected]>
---
In commit 39bc89fd4019b164002adaacef92c4140e37955a the interface of
show_state_filter() was changed: zero valued 'state_filter' specifies "dump all
tasks" (instead of -1).
However, the condition for calling debug_show_all_locks() ("show locks if all
tasks are dumped") was not updated accordingly.

diff --git a/kernel/sched.c b/kernel/sched.c
index 3c11ae0..6e2b936 100644
--- a/kernel/sched.c
+++ b/kernel/sched.c
@@ -6935,7 +6935,7 @@ void show_state_filter(unsigned long state_filter)
/*
* Only show locks if all tasks are dumped:
*/
- if (state_filter == -1)
+ if (!state_filter)
debug_show_all_locks();
}

--
Shmulik Ladkani


2009-11-25 13:31:27

by Shmulik Ladkani

[permalink] [raw]
Subject: [tip:sched/core] sched.c: Call debug_show_all_locks() when dumping all tasks

Commit-ID: 93335a21557e80f6a99bc2812c634e488139043c
Gitweb: http://git.kernel.org/tip/93335a21557e80f6a99bc2812c634e488139043c
Author: Shmulik Ladkani <[email protected]>
AuthorDate: Wed, 25 Nov 2009 15:23:41 +0200
Committer: Ingo Molnar <[email protected]>
CommitDate: Wed, 25 Nov 2009 14:26:52 +0100

sched.c: Call debug_show_all_locks() when dumping all tasks

In commit v2.6.21-691-g39bc89f ("make SysRq-T show all tasks
again") the interface of show_state_filter() was changed: zero
valued 'state_filter' specifies "dump all tasks" (instead of -1).

However, the condition for calling debug_show_all_locks() ("show
locks if all tasks are dumped") was not updated accordingly.

Signed-off-by: Shmulik Ladkani <[email protected]>
Cc: [email protected]
LKML-Reference: <[email protected]>
Signed-off-by: Ingo Molnar <[email protected]>
---
kernel/sched.c | 2 +-
1 files changed, 1 insertions(+), 1 deletions(-)

diff --git a/kernel/sched.c b/kernel/sched.c
index 010d5e1..a57c6ae 100644
--- a/kernel/sched.c
+++ b/kernel/sched.c
@@ -6915,7 +6915,7 @@ void show_state_filter(unsigned long state_filter)
/*
* Only show locks if all tasks are dumped:
*/
- if (state_filter == -1)
+ if (!state_filter)
debug_show_all_locks();
}