diff --git a/Usermode/Libraries/ld-acess.so_src/arch/x86_64.asm.h b/Usermode/Libraries/ld-acess.so_src/arch/x86_64.asm.h
index 2c9d87fcd55e6dce875673388b4726fa41e4b771..ea605ef69bdd766eedeea09dbf7ab10f3ee3726f 100644
--- a/Usermode/Libraries/ld-acess.so_src/arch/x86_64.asm.h
+++ b/Usermode/Libraries/ld-acess.so_src/arch/x86_64.asm.h
@@ -142,8 +142,10 @@ _SYSCALL_TAIL
 
 ; // Override the clone syscall
 #define clone	_clone_raw
+#define _exit	_exit_raw
 #include "syscalls.s.h"
 #undef clone
+#undef _exit
 
 [global clone:func]
 clone:
@@ -162,11 +164,16 @@ clone:
 	sub rsi, 3*8
 .doCall:
 	mov eax, SYS_CLONE
-	mov rdi, rsi	; Stack
-	mov rsi, [rbp+2*8]	; Flags
 	SYSCALL_OP
 	mov [rel _errno], ebx
 	pop rbx
 	pop rbp
 	ret
 
+[global _exit:func]
+_exit:
+	xor eax, eax
+	SYSCALL_OP
+	jmp $
+
+; vim: ft=nasm
diff --git a/Usermode/Libraries/ld-acess.so_src/loadlib.c b/Usermode/Libraries/ld-acess.so_src/loadlib.c
index 182109bf814355f49e8be4a354be110c7b647c5f..b6637c227773c8f13cc93e2069853426d2726f3a 100644
--- a/Usermode/Libraries/ld-acess.so_src/loadlib.c
+++ b/Usermode/Libraries/ld-acess.so_src/loadlib.c
@@ -5,7 +5,7 @@
 #include "common.h"
 #include <stdint.h>
 
-#define DEBUG	1
+#define DEBUG	0
 
 #if DEBUG
 # define DEBUGS(v...)	SysDebug(v)
diff --git a/Usermode/Libraries/libc.so_src/stub.c b/Usermode/Libraries/libc.so_src/stub.c
index fbdf30d085d62b6fef52690a9b945b7faf19069a..3cab984df2eea9bc15d8a3561e6151704bb31210 100644
--- a/Usermode/Libraries/libc.so_src/stub.c
+++ b/Usermode/Libraries/libc.so_src/stub.c
@@ -83,6 +83,7 @@ int ErrorHandler(int Fault)
 	//	fprintf(stderr, "%02i: %p  %s\n", i, gLoadedLibraries[i].Base, gLoadedLibraries[i].Name);
 	}
 	fprintf(stderr, "\n");
+	exit(-1);
 	return -1;
 }