diff --git a/arch/x86/kernel/fpu/core.c b/arch/x86/kernel/fpu/core.c
index 00408149de40c236c621876d5c9b248fad73d6b5..a0b2221b686d23ad7376fefc430d996c525d3713 100644
--- a/arch/x86/kernel/fpu/core.c
+++ b/arch/x86/kernel/fpu/core.c
@@ -180,12 +180,9 @@ void fpu__save(struct fpu *fpu)
 
 	preempt_disable();
 	if (fpu->fpregs_active) {
-		if (use_eager_fpu()) {
-			copy_fpregs_to_fpstate(fpu);
-		} else {
-			copy_fpregs_to_fpstate(fpu);
+		copy_fpregs_to_fpstate(fpu);
+		if (!use_eager_fpu())
 			fpregs_deactivate(fpu);
-		}
 	}
 	preempt_enable();
 }