Index: uspace/app/tester/tester.c
===================================================================
--- uspace/app/tester/tester.c	(revision 802a8c8b41d2a5e851005911069621bceb7ec9d8)
+++ uspace/app/tester/tester.c	(revision c45dc5e12e38a846a8628264b0aa9f4bb4afc04a)
@@ -38,4 +38,5 @@
 #include <stdio.h>
 #include <stddef.h>
+#include <stdlib.h>
 #include <str.h>
 #include <io/log.h>
@@ -100,17 +101,36 @@
 	unsigned int n = 0;
 
+	char *failed_names = NULL;
+
 	printf("\n*** Running all safe tests ***\n\n");
 
 	for (test = tests; test->name != NULL; test++) {
-		if (test->safe) {
-			printf("%s (%s)\n", test->name, test->desc);
-			if (run_test(test))
-				i++;
-			else
-				n++;
+		if (!test->safe)
+			continue;
+
+		printf("%s (%s)\n", test->name, test->desc);
+		if (run_test(test)) {
+			i++;
+			continue;
 		}
+
+		if (!failed_names) {
+			failed_names = str_dup(test->name);
+		} else {
+			char *f = NULL;
+			asprintf(&f, "%s, %s", failed_names, test->name);
+			if (!f) {
+				printf("Out of memory.\n");
+				abort();
+			}
+			free(failed_names);
+			failed_names = f;
+		}
+		n++;
 	}
 
 	printf("\nCompleted, %u tests run, %u passed.\n", i + n, i);
+	if (failed_names)
+		printf("Failed tests: %s\n", failed_names);
 }
 
