From: Henning Schild <henning.sch...@siemens.com> We should mark the current task as not owning the fpu anymore if it does actually own the fpu, not if the fpu itself is active.
Fixes cb52e6c7438fa Reported-by: Mauro Salvini <mauro.salv...@smigroup.net> Signed-off-by: Henning Schild <henning.sch...@siemens.com> --- kernel/cobalt/arch/x86/thread.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/kernel/cobalt/arch/x86/thread.c b/kernel/cobalt/arch/x86/thread.c index a09560075..0c6054338 100644 --- a/kernel/cobalt/arch/x86/thread.c +++ b/kernel/cobalt/arch/x86/thread.c @@ -475,7 +475,7 @@ void xnarch_leave_root(struct xnthread *root) switch_fpu_finish(¤t->thread.fpu, smp_processor_id()); #else /* mark current thread as not owning the FPU anymore */ - if (¤t->thread.fpu.fpstate_active) + if (¤t->thread.fpu.fpregs_active) fpregs_deactivate(¤t->thread.fpu); #endif } -- 2.19.2