FreeBSD src
Go to file
peter e57ccb515e Fix a nasty bug that causes random crashes and lockups particularly on
very busy servers (eg: news, web).  This is an interaction between
embryonic processes that have not yet finished forking, and happen to
cause the kernel VM space to grow, hitting the uninitialised variable.

It was possible for this to strike at any time, depending on the size of
your kernel and load patterns.  One machine had paniced occasionally
when cron launches a job since before the 2.1 release.

If you had "options DIAGNOSTIC", you may have seen references to bogus
addresses like 0xdeadc142 and the like.

This is a minimal change to fix the problem, it will probably be done
better by reordering p_vmspace to be in the startzero section, but it
becomes harder to validate then.

It's been vulnerable since pmap.c rev 1.40 (Jan 9, 1995), so it's been a
cause of problems since well before 2.0.5.  This was when the merged
VM/buffer cache and the dynamic growing kernel VM space were first
committed.  This probably fixes a few of PR's.
1996-05-02 11:38:05 +00:00
bin Replace NBPG with getpagesize() 1996-05-02 08:37:16 +00:00
eBones Provide a rudimentary man page for this, based mostly on the README.PATCH. 1996-05-01 17:16:23 +00:00
etc Add wcd0 to `all' target. The fate of the IDE CDROM support in 2.2 1996-05-02 09:15:57 +00:00
games Correct some man page cross references and file location references. 1996-04-07 00:06:21 +00:00
gnu NBPG -> PAGE_SIZE 1996-05-02 09:42:45 +00:00
include Made this work with the documented prerequisite #includes (none). 1996-05-01 00:57:57 +00:00
lib NBPG -> PAGE_SIZE 1996-05-02 09:23:36 +00:00
libexec Small tweak to yp_put_record(): call the DB put routine with the 1996-04-28 03:59:56 +00:00
lkm Add in qcam module (forgot) 1996-03-24 00:30:38 +00:00
release Clear the TCP/IP device configuration screen away after we invoke it. 1996-05-02 10:09:45 +00:00
sbin NBPG -> getpagesize() 1996-05-02 09:09:04 +00:00
secure Add support for socks 1996-04-23 05:18:43 +00:00
share Add section with pgp keys (feel free to give it a better layout) 1996-05-01 20:11:01 +00:00
sys Fix a nasty bug that causes random crashes and lockups particularly on 1996-05-02 11:38:05 +00:00
tools Don't look in libkern, it went away. 1995-12-29 01:51:23 +00:00
usr.bin NBPG -> PAGE_SIZE 1996-05-02 09:10:21 +00:00
usr.sbin Clear the TCP/IP device configuration screen away after we invoke it. 1996-05-02 10:09:45 +00:00
COPYRIGHT This is the official 4.4 Lite copyright. 1994-09-11 07:53:28 +00:00
Makefile Re-instate the bootstrap target which can be used to build tools 1996-03-24 13:16:45 +00:00