Date: Wed, 21 Jul 1999 11:02:29 -0700 (PDT) From: Alan Cox <alc@FreeBSD.org> To: cvs-committers@FreeBSD.org, cvs-all@FreeBSD.org Subject: cvs commit: src/sys/alpha/alpha pmap.c src/sys/i386/i386 pmap.c src/sys/kern kern_fork.c src/sys/vm pmap.h vm_glue.c vm_map.c Message-ID: <199907211802.LAA94109@freefall.freebsd.org>
index | next in thread | raw e-mail
alc 1999/07/21 11:02:28 PDT
Modified files:
sys/alpha/alpha pmap.c
sys/i386/i386 pmap.c
sys/kern kern_fork.c
sys/vm pmap.h vm_glue.c vm_map.c
Log:
Fix the following problem:
When creating new processes (or performing exec), the new page
directory is initialized too early. The kernel might grow before
p_vmspace is initialized for the new process. Since pmap_growkernel
doesn't yet know about the new page directory, it isn't updated, and
subsequent use causes a failure.
The fix is (1) to clear p_vmspace early, to stop pmap_growkernel
from stomping on memory, and (2) to defer part of the initialization
of new page directories until p_vmspace is initialized.
PR: kern/12378
Submitted by: tegge
Reviewed by: dfr
Revision Changes Path
1.28 +14 -4 src/sys/alpha/alpha/pmap.c
1.242 +15 -4 src/sys/i386/i386/pmap.c
1.64 +3 -1 src/sys/kern/kern_fork.c
1.31 +2 -1 src/sys/vm/pmap.h
1.87 +3 -1 src/sys/vm/vm_glue.c
1.173 +3 -1 src/sys/vm/vm_map.c
To Unsubscribe: send mail to majordomo@FreeBSD.org
with "unsubscribe cvs-all" in the body of the message
help
Want to link to this message? Use this
URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?199907211802.LAA94109>
