Index: libcfa/src/concurrency/kernel.cfa
===================================================================
--- libcfa/src/concurrency/kernel.cfa	(revision a9172b511cbc603546b2aec110336a27c3644675)
+++ libcfa/src/concurrency/kernel.cfa	(revision 57f70ab7cafc94f5cbeb4d2d600f4e0cc0127989)
@@ -182,5 +182,6 @@
 		MAIN_LOOP:
 		for() {
-			#if 1
+			#define OLD_MAIN 1
+			#if OLD_MAIN
 			// Check if there is pending io
 			__maybe_io_drain( this );
@@ -262,5 +263,5 @@
 
 			#else
-
+				#warning new kernel loop
 			SEARCH: {
 				/* paranoid */ verify( ! __preemption_enabled() );
@@ -277,5 +278,5 @@
 
 				// Spin a little on I/O, just in case
-				for(25) {
+					for(5) {
 					__maybe_io_drain( this );
 					readyThread = pop_fast( this->cltr );
@@ -284,5 +285,5 @@
 
 				// no luck, try stealing a few times
-				for(25) {
+					for(5) {
 					if( __maybe_io_drain( this ) ) {
 						readyThread = pop_fast( this->cltr );
@@ -867,7 +868,11 @@
 		unsigned tail = *ctx->cq.tail;
 		if(head == tail) return false;
+		#if OLD_MAIN
 		ready_schedule_lock();
 		ret = __cfa_io_drain( proc );
 		ready_schedule_unlock();
+		#else
+			ret = __cfa_io_drain( proc );
+	#endif
 	#endif
 	return ret;
