Module Name: src Committed By: bouyer Date: Sat May 2 18:49:57 UTC 2020
Modified Files: src/sys/arch/i386/i386: i386_trap.S locore.S Log Message: HANDLE_DEFERRED_FPU has to be donne with interrupt disabled; move it before STIC. Fix fpudna panic on i386 PV To generate a diff of this commit: cvs rdiff -u -r1.21 -r1.22 src/sys/arch/i386/i386/i386_trap.S cvs rdiff -u -r1.182 -r1.183 src/sys/arch/i386/i386/locore.S Please note that diffs are not public domain; they are subject to the copyright notices on the relevant files.
Modified files: Index: src/sys/arch/i386/i386/i386_trap.S diff -u src/sys/arch/i386/i386/i386_trap.S:1.21 src/sys/arch/i386/i386/i386_trap.S:1.22 --- src/sys/arch/i386/i386/i386_trap.S:1.21 Sat Apr 25 15:26:17 2020 +++ src/sys/arch/i386/i386/i386_trap.S Sat May 2 18:49:57 2020 @@ -1,4 +1,4 @@ -/* $NetBSD: i386_trap.S,v 1.21 2020/04/25 15:26:17 bouyer Exp $ */ +/* $NetBSD: i386_trap.S,v 1.22 2020/05/02 18:49:57 bouyer Exp $ */ /* * Copyright 2002 (c) Wasabi Systems, Inc. @@ -66,7 +66,7 @@ #if 0 #include <machine/asm.h> -__KERNEL_RCSID(0, "$NetBSD: i386_trap.S,v 1.21 2020/04/25 15:26:17 bouyer Exp $"); +__KERNEL_RCSID(0, "$NetBSD: i386_trap.S,v 1.22 2020/05/02 18:49:57 bouyer Exp $"); #endif /* @@ -434,6 +434,8 @@ calltrap: 3: CHECK_DEFERRED_SWITCH jnz 9f + HANDLE_DEFERRED_FPU + #ifdef XENPV STIC(%eax) jz 22f @@ -458,8 +460,6 @@ calltrap: 22: #endif /* XEN */ - HANDLE_DEFERRED_FPU - 6: #ifdef DIAGNOSTIC cmpl CPUVAR(ILEVEL),%ebx Index: src/sys/arch/i386/i386/locore.S diff -u src/sys/arch/i386/i386/locore.S:1.182 src/sys/arch/i386/i386/locore.S:1.183 --- src/sys/arch/i386/i386/locore.S:1.182 Sat May 2 16:44:35 2020 +++ src/sys/arch/i386/i386/locore.S Sat May 2 18:49:57 2020 @@ -1,4 +1,4 @@ -/* $NetBSD: locore.S,v 1.182 2020/05/02 16:44:35 bouyer Exp $ */ +/* $NetBSD: locore.S,v 1.183 2020/05/02 18:49:57 bouyer Exp $ */ /* * Copyright-o-rama! @@ -128,7 +128,7 @@ */ #include <machine/asm.h> -__KERNEL_RCSID(0, "$NetBSD: locore.S,v 1.182 2020/05/02 16:44:35 bouyer Exp $"); +__KERNEL_RCSID(0, "$NetBSD: locore.S,v 1.183 2020/05/02 18:49:57 bouyer Exp $"); #include "opt_copy_symtab.h" #include "opt_ddb.h" @@ -1560,6 +1560,8 @@ IDTVEC(syscall) orl CPUVAR(WANT_PMAPLOAD), %eax jnz 9f + HANDLE_DEFERRED_FPU + #ifdef XENPV STIC(%eax) jz 14f @@ -1589,8 +1591,6 @@ IDTVEC(syscall) jne 3f #endif - HANDLE_DEFERRED_FPU - INTRFASTEXIT #ifdef DIAGNOSTIC