From: Ingo Molnar Teach special (recursive, non-ordered) locking code to the lock validator. Has no effect on non-lockdep kernels. Signed-off-by: Ingo Molnar Signed-off-by: Arjan van de Ven Signed-off-by: Andrew Morton --- kernel/kgdb.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff -puN kernel/kgdb.c~lock-validator-special-locking-kgdb kernel/kgdb.c --- devel/kernel/kgdb.c~lock-validator-special-locking-kgdb 2006-05-29 18:13:39.000000000 -0700 +++ devel-akpm/kernel/kgdb.c 2006-05-29 18:13:39.000000000 -0700 @@ -1522,7 +1522,7 @@ int kgdb_handle_exception(int ex_vector, if (!debugger_step || !kgdb_contthread) { for (i = 0; i < NR_CPUS; i++) - spin_unlock(&slavecpulocks[i]); + spin_unlock_non_nested(&slavecpulocks[i]); /* Wait till all the processors have quit * from the debugger. */ for (i = 0; i < NR_CPUS; i++) { @@ -1605,7 +1605,7 @@ static void __init kgdb_internal_init(vo /* Initialize our spinlocks. */ for (i = 0; i < NR_CPUS; i++) - spin_lock_init(&slavecpulocks[i]); + spin_lock_init_static(&slavecpulocks[i]); for (i = 0; i < MAX_BREAKPOINTS; i++) kgdb_break[i].state = bp_none; _