Source-Changes-HG archive

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]

[src/trunk]: src/sys/arch/x86/x86 Fix bug. We must fetch the whole FPU state, ...



details:   https://anonhg.NetBSD.org/src/rev/1b2d21215b6f
branches:  trunk
changeset: 451497:1b2d21215b6f
user:      maxv <maxv%NetBSD.org@localhost>
date:      Sat May 25 21:02:32 2019 +0000

description:
Fix bug. We must fetch the whole FPU state, otherwise XSTATE_BV could be
outdated, and we could be filling the AVX registers with garbage.

diffstat:

 sys/arch/x86/x86/fpu.c |  6 +++---
 1 files changed, 3 insertions(+), 3 deletions(-)

diffs (27 lines):

diff -r d0cbe936c720 -r 1b2d21215b6f sys/arch/x86/x86/fpu.c
--- a/sys/arch/x86/x86/fpu.c    Sat May 25 20:10:22 2019 +0000
+++ b/sys/arch/x86/x86/fpu.c    Sat May 25 21:02:32 2019 +0000
@@ -1,4 +1,4 @@
-/*     $NetBSD: fpu.c,v 1.52 2019/05/19 08:46:15 maxv Exp $    */
+/*     $NetBSD: fpu.c,v 1.53 2019/05/25 21:02:32 maxv Exp $    */
 
 /*
  * Copyright (c) 2008 The NetBSD Foundation, Inc.  All
@@ -96,7 +96,7 @@
  */
 
 #include <sys/cdefs.h>
-__KERNEL_RCSID(0, "$NetBSD: fpu.c,v 1.52 2019/05/19 08:46:15 maxv Exp $");
+__KERNEL_RCSID(0, "$NetBSD: fpu.c,v 1.53 2019/05/25 21:02:32 maxv Exp $");
 
 #include "opt_multiprocessor.h"
 
@@ -827,7 +827,7 @@
 {
        union savefpu *fpu_save;
 
-       fpusave_lwp(l, false);
+       fpusave_lwp(l, true);
        fpu_save = lwp_fpuarea(l);
 
        if (i386_use_fxsave) {



Home | Main Index | Thread Index | Old Index