freebsd-dev/sys/i386
Matthew Dillon 4e71e795a1 This commit represents work mainly submitted by Tor and slightly modified
by myself.  It solves a serious vm_map corruption problem that can occur
with the buffer cache when block sizes > 64K are used.  This code has been
heavily tested in -stable but only tested somewhat on -current.  An MFC
will occur in a few days.  My additions include the vm_map_simplify_entry()
and minor buffer cache boundry case fix.

Make the buffer cache use a system map for buffer cache KVM rather then a
normal map.

Ensure that VM objects are not allocated for system maps.  There were cases
where a buffer map could wind up with a backing VM object -- normally
harmless, but this could also result in the buffer cache blocking in places
where it assumes no blocking will occur, possibly resulting in corrupted
maps.

Fix a minor boundry case in the buffer cache size limit is reached that
could result in non-optimal code.

Add vm_map_simplify_entry() calls to prevent 'creeping proliferation'
of vm_map_entry's in the buffer cache's vm_map.  Previously only a simple
linear optimization was made.  (The buffer vm_map typically has only a
handful of vm_map_entry's.  This stabilizes it at that level permanently).

PR: 20609
Submitted by: (Tor Egge) tegge
2001-02-04 06:19:28 +00:00
..
acpica FreeBSD-specific OSD (operating system dependant) modules for the Intel 2000-10-28 06:56:15 +00:00
apm select() DKI is now in <sys/selinfo.h>. 2001-01-09 04:33:49 +00:00
bios select() DKI is now in <sys/selinfo.h>. 2001-01-09 04:33:49 +00:00
conf Unbreak test coverage of cy driver. 2001-02-01 09:57:59 +00:00
i386 This commit represents work mainly submitted by Tor and slightly modified 2001-02-04 06:19:28 +00:00
ibcs2 Back out proc locking to protect p_ucred for obtaining additional 2001-01-27 00:01:31 +00:00
include Zap last remaining references to (and a use use of) of simple_locks. 2001-01-31 04:29:52 +00:00
isa Implement preemptive scheduling of hardware interrupt threads. 2001-02-01 03:34:20 +00:00
linux Proc locking. 2001-01-24 00:27:28 +00:00
pci Fix a warning due to missing prototype. 2001-01-19 09:10:14 +00:00
svr4 - Proc locking. 2001-01-24 00:24:57 +00:00
Makefile Update tags directive to reflect the new location of soft updates 2000-07-04 00:18:43 +00:00