Index: libcfa/src/concurrency/kernel/startup.cfa
===================================================================
--- libcfa/src/concurrency/kernel/startup.cfa	(revision a1538cd646f1e032f1abd29e7abb8e6ece8a787a)
+++ libcfa/src/concurrency/kernel/startup.cfa	(revision a5e7233ed9642389f0f296f388965729df83c758)
@@ -73,5 +73,5 @@
 static void __kernel_first_resume( processor * this );
 static void __kernel_last_resume ( processor * this );
-static void init(processor & this, const char name[], cluster & _cltr, void (*fnc) (void *), void * arg);
+static void init(processor & this, const char name[], cluster & _cltr, $thread * initT);
 static void deinit(processor & this);
 static void doregister( struct cluster & cltr );
@@ -198,5 +198,5 @@
 		( this.terminated ){};
 		( this.runner ){};
-		init( this, "Main Processor", *mainCluster, 0p, 0p );
+		init( this, "Main Processor", *mainCluster, 0p );
 		kernel_thread = pthread_self();
 
@@ -452,5 +452,5 @@
 }
 
-static void init(processor & this, const char name[], cluster & _cltr, void (*fnc) (void *), void * arg) with( this ) {
+static void init(processor & this, const char name[], cluster & _cltr, $thread * initT) with( this ) {
 	this.name = name;
 	this.cltr = &_cltr;
@@ -464,6 +464,5 @@
 	this.io.dirty   = false;
 
-	this.init.fnc = fnc;
-	this.init.arg = arg;
+	this.init.thrd = initT;
 
 	this.idle = eventfd(0, 0);
@@ -516,10 +515,10 @@
 }
 
-void ?{}(processor & this, const char name[], cluster & _cltr, void (*fnc) (void *), void * arg) {
+void ?{}(processor & this, const char name[], cluster & _cltr, $thread * initT) {
 	( this.terminated ){};
 	( this.runner ){};
 
 	disable_interrupts();
-		init( this, name, _cltr, fnc, arg );
+		init( this, name, _cltr, initT );
 	enable_interrupts( __cfaabi_dbg_ctx );
 
@@ -527,5 +526,8 @@
 
 	this.stack = __create_pthread( &this.kernel_thread, __invoke_processor, (void *)&this );
-
+}
+
+void ?{}(processor & this, const char name[], cluster & _cltr) {
+	(this){name, _cltr, 0p};
 }
 
