Index: kernel/generic/src/proc/scheduler.c
===================================================================
--- kernel/generic/src/proc/scheduler.c	(revision 4f3aa7644f25e335cbce9f680ef7e5e6aa6032a5)
+++ kernel/generic/src/proc/scheduler.c	(revision ba9a150799eb4761d670852aa4aa4df033ca853a)
@@ -134,5 +134,4 @@
 void scheduler_fpu_lazy_request(void)
 {
-restart:
 	fpu_enable();
 	irq_spinlock_lock(&CPU->lock, false);
@@ -153,15 +152,4 @@
 		fpu_context_restore(THREAD->saved_fpu_context);
 	} else {
-		/* Allocate FPU context */
-		if (!THREAD->saved_fpu_context) {
-			/* Might sleep */
-			irq_spinlock_unlock(&THREAD->lock, false);
-			irq_spinlock_unlock(&CPU->lock, false);
-			THREAD->saved_fpu_context =
-			    (fpu_context_t *) slab_alloc(fpu_context_cache, 0);
-
-			/* We may have switched CPUs during slab_alloc */
-			goto restart;
-		}
 		fpu_init();
 		THREAD->fpu_context_exists = true;
Index: kernel/generic/src/proc/thread.c
===================================================================
--- kernel/generic/src/proc/thread.c	(revision 4f3aa7644f25e335cbce9f680ef7e5e6aa6032a5)
+++ kernel/generic/src/proc/thread.c	(revision ba9a150799eb4761d670852aa4aa4df033ca853a)
@@ -165,11 +165,7 @@
 
 #ifdef CONFIG_FPU
-#ifdef CONFIG_FPU_LAZY
-	thread->saved_fpu_context = NULL;
-#else /* CONFIG_FPU_LAZY */
 	thread->saved_fpu_context = slab_alloc(fpu_context_cache, kmflags);
 	if (!thread->saved_fpu_context)
 		return ENOMEM;
-#endif /* CONFIG_FPU_LAZY */
 #endif /* CONFIG_FPU */
 
@@ -200,6 +196,6 @@
 	if (!stack_phys) {
 #ifdef CONFIG_FPU
-		if (thread->saved_fpu_context)
-			slab_free(fpu_context_cache, thread->saved_fpu_context);
+		assert(thread->saved_fpu_context);
+		slab_free(fpu_context_cache, thread->saved_fpu_context);
 #endif
 		return ENOMEM;
@@ -226,6 +222,6 @@
 
 #ifdef CONFIG_FPU
-	if (thread->saved_fpu_context)
-		slab_free(fpu_context_cache, thread->saved_fpu_context);
+	assert(thread->saved_fpu_context);
+	slab_free(fpu_context_cache, thread->saved_fpu_context);
 #endif
 
