diff --git a/kernel/panic.c b/kernel/panic.c
index 5dce5404eeef1113a3cb5e563cd7dccebd072ecb..80aed44e345abc648f7ac3d0e7560a05e453c7fd 100644
--- a/kernel/panic.c
+++ b/kernel/panic.c
@@ -94,7 +94,11 @@ void panic(const char *fmt, ...)
 	va_end(args);
 	printk(KERN_EMERG "Kernel panic - not syncing: %s\n",buf);
 #ifdef CONFIG_DEBUG_BUGVERBOSE
-	dump_stack();
+	/*
+	 * Avoid nested stack-dumping if a panic occurs during oops processing
+	 */
+	if (!oops_in_progress)
+		dump_stack();
 #endif
 
 	/*