Index: uspace/app/rcubench/rcubench.c
===================================================================
--- uspace/app/rcubench/rcubench.c	(revision 1433ecda9b732f3f185f902feb26826ec2496e03)
+++ uspace/app/rcubench/rcubench.c	(revision 58093d99e8de3e461cadfcbc02a56288a1c5a2d6)
@@ -40,5 +40,4 @@
 #include <mem.h>
 #include <errno.h>
-#include <thread.h>
 #include <assert.h>
 #include <async.h>
@@ -105,5 +104,5 @@
 }
 
-static void thread_func(void *arg)
+static errno_t thread_func(void *arg)
 {
 	bench_t *bench = (bench_t *)arg;
@@ -113,4 +112,5 @@
 	/* Signal another thread completed. */
 	futex_up(&bench->done_threads);
+	return EOK;
 }
 
@@ -123,14 +123,15 @@
 	}
 
+	fibril_test_spawn_runners(bench->nthreads - 1);
+
 	/* Create and run the first nthreads - 1 threads.*/
 	for (size_t k = 1; k < bench->nthreads; ++k) {
-		thread_id_t tid;
-		/* Also sets up a fibril for the thread. */
-		errno_t ret = thread_create(thread_func, bench, "rcubench-t", &tid);
-		if (ret != EOK) {
+		fid_t f = fibril_create(thread_func, bench);
+		if (!f) {
 			printf("Error: Failed to create benchmark thread.\n");
 			abort();
 		}
-		thread_detach(tid);
+		fibril_detach(f);
+		fibril_add_ready(f);
 	}
 
