Index: uspace/lib/c/generic/fibril_synch.c
===================================================================
--- uspace/lib/c/generic/fibril_synch.c	(revision 061274f1f58e5da465bdaa7144a7d51fb2e76d07)
+++ uspace/lib/c/generic/fibril_synch.c	(revision 1e472eea7d438ec6ce4974a09d063a281dce7532)
@@ -44,6 +44,10 @@
 #include <stdlib.h>
 #include <stdio.h>
+#include <io/kio.h>
+
 #include "private/async.h"
 #include "private/fibril.h"
+
+static fibril_local bool deadlocked = false;
 
 static void optimize_execution_power(void)
@@ -62,4 +66,10 @@
 {
 	fibril_t *f = (fibril_t *) fibril_get_id();
+
+	if (deadlocked) {
+		kio_printf("Deadlock detected while printing deadlock. Aborting.\n");
+		abort();
+	}
+	deadlocked = true;
 
 	printf("Deadlock detected.\n");
