Index: uspace/app/rcubench/rcubench.c
===================================================================
--- uspace/app/rcubench/rcubench.c	(revision 4e41aa4017a23e81a6bf5be64d91f904e3c4042a)
+++ uspace/app/rcubench/rcubench.c	(revision 927a181ebf836ca4e18efcf32e0b11a9a8c69dc7)
@@ -123,10 +123,15 @@
 {
 	bench_t *bench = (bench_t*)arg;
-	assert(bench->type == T_KERN_FUTEX || bench->type == T_LIBC_FUTEX);
-	
-	if (bench->type == T_KERN_FUTEX) 
+	
+	switch (bench->type) {
+	case T_KERN_FUTEX:
 		kernel_futex_bench(bench);
-	else
+		break;
+	case T_LIBC_FUTEX:
 		libc_futex_bench(bench);
+		break;
+	default:
+		assert(false);
+	}
 	
 	/* Signal another thread completed. */
@@ -290,7 +295,10 @@
 	int64_t duration = tv_sub(&end, &start);
 	
+	if (0 == duration)
+		duration = 1;
+	
+	uint64_t secs = (uint64_t)duration / 1000 / 1000;
 	uint64_t total_iters = (uint64_t)bench.iters * bench.nthreads;
 	uint64_t iters_per_sec = total_iters * 1000 * 1000 / duration;
-	uint64_t secs = (uint64_t)duration / 1000 / 1000;
 	
 	printf("Completed %" PRIu64 " iterations in %" PRId64  " usecs (%" PRIu64 
