Source-Changes-HG archive
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]
[src/trunk]: src/sys/arch remove L_BIGLOCK check for kernel-mode pagefaults i...
details: https://anonhg.NetBSD.org/src/rev/55671317fe63
branches: trunk
changeset: 547013:55671317fe63
user: yamt <yamt%NetBSD.org@localhost>
date: Sun May 11 15:19:19 2003 +0000
description:
remove L_BIGLOCK check for kernel-mode pagefaults in trap().
syscall() and its variants actually does copyin() without biglock.
ok'ed by Frank van der Linden.
diffstat:
sys/arch/amd64/amd64/trap.c | 7 ++-----
sys/arch/i386/i386/trap.c | 12 ++----------
2 files changed, 4 insertions(+), 15 deletions(-)
diffs (54 lines):
diff -r dd5d0ce61a7b -r 55671317fe63 sys/arch/amd64/amd64/trap.c
--- a/sys/arch/amd64/amd64/trap.c Sun May 11 14:02:17 2003 +0000
+++ b/sys/arch/amd64/amd64/trap.c Sun May 11 15:19:19 2003 +0000
@@ -1,4 +1,4 @@
-/* $NetBSD: trap.c,v 1.2 2003/05/04 23:51:56 fvdl Exp $ */
+/* $NetBSD: trap.c,v 1.3 2003/05/11 15:19:19 yamt Exp $ */
/*-
* Copyright (c) 1998, 2000 The NetBSD Foundation, Inc.
@@ -380,10 +380,7 @@
*/
if (pcb->pcb_onfault == fusuintrfailure)
goto copyefault;
-#ifdef MULTIPROCESSOR
- if ((l->l_flag & L_BIGLOCK) == 0)
- goto we_re_toast;
-#endif
+
cr2 = rcr2();
KERNEL_LOCK(LK_CANRECURSE|LK_EXCLUSIVE);
goto faultcommon;
diff -r dd5d0ce61a7b -r 55671317fe63 sys/arch/i386/i386/trap.c
--- a/sys/arch/i386/i386/trap.c Sun May 11 14:02:17 2003 +0000
+++ b/sys/arch/i386/i386/trap.c Sun May 11 15:19:19 2003 +0000
@@ -1,4 +1,4 @@
-/* $NetBSD: trap.c,v 1.178 2003/02/26 21:28:24 fvdl Exp $ */
+/* $NetBSD: trap.c,v 1.179 2003/05/11 15:19:20 yamt Exp $ */
/*-
* Copyright (c) 1998, 2000 The NetBSD Foundation, Inc.
@@ -79,7 +79,7 @@
*/
#include <sys/cdefs.h>
-__KERNEL_RCSID(0, "$NetBSD: trap.c,v 1.178 2003/02/26 21:28:24 fvdl Exp $");
+__KERNEL_RCSID(0, "$NetBSD: trap.c,v 1.179 2003/05/11 15:19:20 yamt Exp $");
#include "opt_ddb.h"
#include "opt_kgdb.h"
@@ -476,14 +476,6 @@
*/
if (pcb->pcb_onfault == fusubail)
goto copyefault;
-#ifdef MULTIPROCESSOR
- /*
- * process doing kernel-mode page fault must have
- * been running with big lock held
- */
- if ((l->l_flag & L_BIGLOCK) == 0)
- goto we_re_toast;
-#endif
#if 0
/* XXX - check only applies to 386's and 486's with WP off */
Home |
Main Index |
Thread Index |
Old Index