Module Name: src
Committed By: ad
Date: Fri Mar 27 21:05:03 UTC 2020
Modified Files:
src/sys/arch/i386/i386: locore.S
Log Message:
PR kern/55114: Install fails with "cpu_switchto: switching above IPL_SCHED (8)"
cpu_switch(): Remove stuff dealing with interrupt levels. From memory it
was something to do with TLB shootdown interrupts but they have long been
outside the SPL framework.
To generate a diff of this commit:
cvs rdiff -u -r1.178 -r1.179 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/locore.S
diff -u src/sys/arch/i386/i386/locore.S:1.178 src/sys/arch/i386/i386/locore.S:1.179
--- src/sys/arch/i386/i386/locore.S:1.178 Mon Feb 10 22:13:50 2020
+++ src/sys/arch/i386/i386/locore.S Fri Mar 27 21:05:03 2020
@@ -1,4 +1,4 @@
-/* $NetBSD: locore.S,v 1.178 2020/02/10 22:13:50 skrll Exp $ */
+/* $NetBSD: locore.S,v 1.179 2020/03/27 21:05:03 ad Exp $ */
/*
* Copyright-o-rama!
@@ -128,7 +128,7 @@
*/
#include <machine/asm.h>
-__KERNEL_RCSID(0, "$NetBSD: locore.S,v 1.178 2020/02/10 22:13:50 skrll Exp $");
+__KERNEL_RCSID(0, "$NetBSD: locore.S,v 1.179 2020/03/27 21:05:03 ad Exp $");
#include "opt_copy_symtab.h"
#include "opt_ddb.h"
@@ -1301,17 +1301,6 @@ ENTRY(cpu_switchto)
pushl %esi
pushl %edi
-#if defined(DIAGNOSTIC) && !defined(XENPV)
- cmpl $IPL_SCHED,CPUVAR(ILEVEL)
- jbe 0f
- pushl CPUVAR(ILEVEL)
- pushl $.Lstr
- call _C_LABEL(panic)
- addl $8,%esp
-.Lstr: .string "cpu_switchto: switching above IPL_SCHED (%d)\0"
-0:
-#endif
-
movl 16(%esp),%esi /* oldlwp */
movl 20(%esp),%edi /* newlwp */
movl 24(%esp),%edx /* returning */
@@ -1408,10 +1397,6 @@ no_RAS:
pushl %edi
call _C_LABEL(i386_tls_switch)
addl $4,%esp
-#else
- /* Raise the IPL to IPL_HIGH. Dropping the priority is deferred until
- * mi_switch(), when cpu_switchto() returns. XXX Still needed? */
- movl $IPL_HIGH,CPUVAR(ILEVEL)
#endif
switch_return: