Index: kernel/arch/sparc64/src/sparc64.c
===================================================================
--- kernel/arch/sparc64/src/sparc64.c	(revision 586cd564257e1db0066856695738f5c081b52050)
+++ kernel/arch/sparc64/src/sparc64.c	(revision 8688a6e3018ec48f77ff663f1f31da00cd6b6e2b)
@@ -135,4 +135,5 @@
 void userspace(uspace_arg_t *kernel_uarg)
 {
+	(void) interrupts_disable();
 	switch_to_userspace((uintptr_t) kernel_uarg->uspace_entry,
 	    ((uintptr_t) kernel_uarg->uspace_stack) + STACK_SIZE
Index: kernel/generic/src/main/uinit.c
===================================================================
--- kernel/generic/src/main/uinit.c	(revision 586cd564257e1db0066856695738f5c081b52050)
+++ kernel/generic/src/main/uinit.c	(revision 8688a6e3018ec48f77ff663f1f31da00cd6b6e2b)
@@ -81,11 +81,4 @@
 	free((uspace_arg_t *) arg);
 	
-	/*
-	 * Disable interrupts so that the execution of userspace() is not
-	 * disturbed by any interrupts as some of the userspace()
-	 * implementations will switch to the userspace stack before switching
-	 * the mode.
-	 */
-	(void) interrupts_disable();
 	userspace(&uarg);
 }
