Source-Changes-HG archive

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

[src/netbsd-2-0]: src/sys/arch/amd64/amd64 Pullup rev 1.10 (requested by seki...



details:   https://anonhg.NetBSD.org/src/rev/c3c4534a77f1
branches:  netbsd-2-0
changeset: 561254:c3c4534a77f1
user:      jmc <jmc%NetBSD.org@localhost>
date:      Tue Jun 01 04:34:52 2004 +0000

description:
Pullup rev 1.10 (requested by sekiya in ticket #429)

Make pmap_collect() a NOP -- due to the way we deal with the four-level pte,
invalidating the entire address space results in multi-minute system hangs.

diffstat:

 sys/arch/amd64/amd64/pmap.c |  10 ++++++++--
 1 files changed, 8 insertions(+), 2 deletions(-)

diffs (38 lines):

diff -r d8f432b14bfa -r c3c4534a77f1 sys/arch/amd64/amd64/pmap.c
--- a/sys/arch/amd64/amd64/pmap.c       Tue Jun 01 04:32:59 2004 +0000
+++ b/sys/arch/amd64/amd64/pmap.c       Tue Jun 01 04:34:52 2004 +0000
@@ -1,4 +1,4 @@
-/*     $NetBSD: pmap.c,v 1.9 2004/02/19 17:18:38 drochner Exp $        */
+/*     $NetBSD: pmap.c,v 1.9.2.1 2004/06/01 04:34:52 jmc Exp $ */
 
 /*
  *
@@ -108,7 +108,7 @@
  */
 
 #include <sys/cdefs.h>
-__KERNEL_RCSID(0, "$NetBSD: pmap.c,v 1.9 2004/02/19 17:18:38 drochner Exp $");
+__KERNEL_RCSID(0, "$NetBSD: pmap.c,v 1.9.2.1 2004/06/01 04:34:52 jmc Exp $");
 
 #ifndef __x86_64__
 #include "opt_cputype.h"
@@ -3087,6 +3087,11 @@
 pmap_collect(pmap)
        struct pmap *pmap;
 {
+       /* Because of the multiple page table levels, this will cause a system
+        * pause lasting up to three minutes while scanning for valid PTEs.
+        * Since it is an optional function, disable for now.
+        */
+#if 0
        /*
         * free all of the pt pages by removing the physical mappings
         * for its entire address space.
@@ -3094,6 +3099,7 @@
 
        pmap_do_remove(pmap, VM_MIN_ADDRESS, VM_MAX_ADDRESS,
            PMAP_REMOVE_SKIPWIRED);
+#endif
 }
 
 /*



Home | Main Index | Thread Index | Old Index