lockdep: fix debug_show_all_locks()
fix the oops that can be seen in: http://bugzilla.kernel.org/attachment.cgi?id=13828&action=view it is not safe to print the locks of running tasks. (even with this fix we have a small race - but this is a debug function after all.) Signed-off-by: Ingo Molnar <mingo@elte.hu> Signed-off-by: Peter Zijlstra <a.p.zijlstra@chello.nl>
This commit is contained in:
parent
41a2d6cfa3
commit
856848737b
|
@ -3173,6 +3173,13 @@ retry:
|
|||
printk(" locked it.\n");
|
||||
|
||||
do_each_thread(g, p) {
|
||||
/*
|
||||
* It's not reliable to print a task's held locks
|
||||
* if it's not sleeping (or if it's not the current
|
||||
* task):
|
||||
*/
|
||||
if (p->state == TASK_RUNNING && p != current)
|
||||
continue;
|
||||
if (p->lockdep_depth)
|
||||
lockdep_print_held_locks(p);
|
||||
if (!unlock)
|
||||
|
|
Loading…
Reference in New Issue