1
0
mirror of https://git.FreeBSD.org/src.git synced 2024-12-18 10:35:55 +00:00
freebsd/sys/i386
Alan Cox 662d471da6 Remove a broken micro-optimization from pmap_enter(). The ill effect
of this micro-optimization occurs when we call pmap_enter() to wire an
already mapped page.  Because of the micro-optimization, we fail to
mark the PTE as wired.  Later, on teardown of the address space,
pmap_remove_pages() destroys the PTE before vm_fault_unwire() has
unwired the page.  (pmap_remove_pages() is not supposed to destroy
wired PTEs.  They are destroyed by a later call to pmap_remove().)
Thus, the page becomes lost.

Note: The page is not lost if the application called munlock(2), only
if it relies on teardown of the address space to unwire its pages.

For the historically inclined, this bug was introduced by a
megacommit, revision 1.182, roughly six years ago.

Leak observed by: green@ and dillon independently
Patch submitted by: dillon at backplane dot com
Reviewed by: tegge@
MFC after: 1 week
2004-05-28 19:42:02 +00:00
..
acpica Fixup a few bogons in a comment. 2004-05-11 20:06:32 +00:00
bios Convert callers to the new bus_alloc_resource_any(9) API. 2004-03-17 17:50:55 +00:00
compile
conf First release of ixgb driver for the Intel(R) PRO/10GbE Family of Adapters. This driver has 2004-05-28 00:23:00 +00:00
cpufreq o Typo: Ternal -> Thermal. 2004-02-29 18:30:35 +00:00
i386 Remove a broken micro-optimization from pmap_enter(). The ill effect 2004-05-28 19:42:02 +00:00
ibcs2 Regen from ibcs2_wait() becoming MPSAFE. 2004-03-28 22:51:40 +00:00
include Moved i386 asms to an i386 header. The asms are for calibration of 2004-05-20 16:12:19 +00:00
isa Quick fix for overflow when tsc_freq >= 2^31. "int profrate" in struct 2004-05-26 09:43:38 +00:00
linux Use the BSD madvise() syscall implementation for Linux binary emulation, 2004-03-28 21:43:27 +00:00
pci - Create a pir0 psuedo device as a child of legacy0 if we attach a legacy 2004-05-04 21:17:52 +00:00
svr4 Attempt to make the proper changes here for the proc.h commit: 2004-01-05 00:29:00 +00:00
Makefile