Subject: CVS commit: src/sys
To: None <>
From: Jason R Thorpe <>
List: source-changes
Date: 05/08/2003 18:13:30
Module Name:	src
Committed By:	thorpej
Date:		Thu May  8 18:13:30 UTC 2003

Modified Files:
	src/sys/arch/acorn26/acorn26: pmap.c
	src/sys/arch/alpha/alpha: pmap.c
	src/sys/arch/amd64/amd64: pmap.c
	src/sys/arch/amiga/amiga: pmap.c
	src/sys/arch/arm/arm32: pmap.c pmap_new.c
	src/sys/arch/atari/atari: machdep.c pmap.c
	src/sys/arch/cesfic/cesfic: machdep.c
	src/sys/arch/hp300/hp300: machdep.c
	src/sys/arch/hppa/hppa: pmap.c
	src/sys/arch/i386/i386: pmap.c
	src/sys/arch/luna68k/luna68k: machdep.c
	src/sys/arch/m68k/m68k: pmap_motorola.c
	src/sys/arch/mac68k/mac68k: machdep.c
	src/sys/arch/mips/mips: pmap.c
	src/sys/arch/mvme68k/mvme68k: machdep.c
	src/sys/arch/news68k/news68k: machdep.c
	src/sys/arch/next68k/next68k: machdep.c
	src/sys/arch/pc532/pc532: machdep.c pmap.c
	src/sys/arch/powerpc/ibm4xx: pmap.c
	src/sys/arch/powerpc/oea: pmap.c
	src/sys/arch/sh3/sh3: pmap.c
	src/sys/arch/sh5/include: pmap.h
	src/sys/arch/sh5/sh5: pmap.c
	src/sys/arch/sparc/include: pmap.h
	src/sys/arch/sparc/sparc: pmap.c
	src/sys/arch/sparc64/sparc64: pmap.c
	src/sys/arch/sun2/sun2: pmap.c
	src/sys/arch/sun3/sun3: pmap.c
	src/sys/arch/sun3/sun3x: pmap.c
	src/sys/arch/vax/vax: pmap.c
	src/sys/sys: param.h
	src/sys/uvm: uvm_extern.h uvm_init.c uvm_km.c uvm_km.h uvm_page.c
	    uvm_page.h uvm_pmap.h

Log Message:
Simplify the way the bounds of the managed kernel virtual address
space is advertised to UVM by making virtual_avail and virtual_end
first-class exported variables by UVM.  Machine-dependent code is
responsible for initializing them before main() is called.  Anything
that steals KVA must adjust these variables accordingly.

This reduces the number of instances of this info from 3 to 1, and
simplifies the pmap(9) interface by removing the pmap_virtual_space()
function call, and removing two arguments from pmap_steal_memory().

This also eliminates some kludges such as having to burn kernel_map
entries on space used by the kernel and stolen KVA.

This also eliminates use of VM_{MIN,MAX}_KERNEL_ADDRESS from MI code,
this giving MD code greater flexibility over the bounds of the managed
kernel virtual address space if a given port's specific platforms can
vary in this regard (this is especially true of the evb* ports).

To generate a diff of this commit:
cvs rdiff -r1.7 -r1.8 src/sys/arch/acorn26/acorn26/pmap.c
cvs rdiff -r1.197 -r1.198 src/sys/arch/alpha/alpha/pmap.c
cvs rdiff -r1.2 -r1.3 src/sys/arch/amd64/amd64/pmap.c
cvs rdiff -r1.104 -r1.105 src/sys/arch/amiga/amiga/pmap.c
cvs rdiff -r1.131 -r1.132 src/sys/arch/arm/arm32/pmap.c
cvs rdiff -r1.10 -r1.11 src/sys/arch/arm/arm32/pmap_new.c
cvs rdiff -r1.122 -r1.123 src/sys/arch/atari/atari/machdep.c
cvs rdiff -r1.81 -r1.82 src/sys/arch/atari/atari/pmap.c
cvs rdiff -r1.15 -r1.16 src/sys/arch/cesfic/cesfic/machdep.c
cvs rdiff -r1.166 -r1.167 src/sys/arch/hp300/hp300/machdep.c
cvs rdiff -r1.6 -r1.7 src/sys/arch/hppa/hppa/pmap.c
cvs rdiff -r1.152 -r1.153 src/sys/arch/i386/i386/pmap.c
cvs rdiff -r1.28 -r1.29 src/sys/arch/luna68k/luna68k/machdep.c
cvs rdiff -r1.3 -r1.4 src/sys/arch/m68k/m68k/pmap_motorola.c
cvs rdiff -r1.286 -r1.287 src/sys/arch/mac68k/mac68k/machdep.c
cvs rdiff -r1.146 -r1.147 src/sys/arch/mips/mips/pmap.c
cvs rdiff -r1.98 -r1.99 src/sys/arch/mvme68k/mvme68k/machdep.c
cvs rdiff -r1.38 -r1.39 src/sys/arch/news68k/news68k/machdep.c
cvs rdiff -r1.57 -r1.58 src/sys/arch/next68k/next68k/machdep.c
cvs rdiff -r1.138 -r1.139 src/sys/arch/pc532/pc532/machdep.c
cvs rdiff -r1.70 -r1.71 src/sys/arch/pc532/pc532/pmap.c
cvs rdiff -r1.19 -r1.20 src/sys/arch/powerpc/ibm4xx/pmap.c
cvs rdiff -r1.8 -r1.9 src/sys/arch/powerpc/oea/pmap.c
cvs rdiff -r1.43 -r1.44 src/sys/arch/sh3/sh3/pmap.c
cvs rdiff -r1.17 -r1.18 src/sys/arch/sh5/include/pmap.h
cvs rdiff -r1.31 -r1.32 src/sys/arch/sh5/sh5/pmap.c
cvs rdiff -r1.66 -r1.67 src/sys/arch/sparc/include/pmap.h
cvs rdiff -r1.251 -r1.252 src/sys/arch/sparc/sparc/pmap.c
cvs rdiff -r1.138 -r1.139 src/sys/arch/sparc64/sparc64/pmap.c
cvs rdiff -r1.20 -r1.21 src/sys/arch/sun2/sun2/pmap.c
cvs rdiff -r1.140 -r1.141 src/sys/arch/sun3/sun3/pmap.c
cvs rdiff -r1.79 -r1.80 src/sys/arch/sun3/sun3x/pmap.c
cvs rdiff -r1.125 -r1.126 src/sys/arch/vax/vax/pmap.c
cvs rdiff -r1.94 -r1.95 src/sys/conf/
cvs rdiff -r1.164 -r1.165 src/sys/sys/param.h
cvs rdiff -r1.78 -r1.79 src/sys/uvm/uvm_extern.h
cvs rdiff -r1.16 -r1.17 src/sys/uvm/uvm_init.c
cvs rdiff -r1.60 -r1.61 src/sys/uvm/uvm_km.c
cvs rdiff -r1.10 -r1.11 src/sys/uvm/uvm_km.h
cvs rdiff -r1.86 -r1.87 src/sys/uvm/uvm_page.c
cvs rdiff -r1.32 -r1.33 src/sys/uvm/uvm_page.h
cvs rdiff -r1.12 -r1.13 src/sys/uvm/uvm_pmap.h

Please note that diffs are not public domain; they are subject to the
copyright notices on the relevant files.