Subject: CVS commit: src/sys/arch
To: None <source-changes@NetBSD.org>
From: YAMAMOTO Takashi <yamt@netbsd.org>
List: source-changes
Date: 01/20/2008 13:43:38
Module Name:	src
Committed By:	yamt
Date:		Sun Jan 20 13:43:38 UTC 2008

Modified Files:
	src/sys/arch/amd64/include: vmparam.h
	src/sys/arch/i386/include: vmparam.h
	src/sys/arch/x86/include: Makefile pmap.h
	src/sys/arch/x86/x86: pmap.c
Added Files:
	src/sys/arch/x86/include: pmap_pv.h

Log Message:
- rewrite P->V tracking.
	- use a hash rather than SPLAY trees.
	  SPLAY tree is a wrong algorithm to use here.
	  will be revisited if it slows down anything other than
	  micro-benchmarks.
	- optimize the single mapping case (it's a common case) by
	  embedding an entry into mdpage.
	- don't keep a pmap pointer as it can be obtained from ptp.
	  (discussed on port-i386 some years ago.)
	  ideally, a single paddr_t should be enough to describe a pte.
	  but it needs some more thoughts as it can increase computational
	  costs.
- pmap_enter: simplify and fix races with pmap_sync_pv.
- don't bother to lock pm_obj[i] where i > 0, unless DIAGNOSTIC.
- kill mp_link to save space.
- add many KASSERTs.


To generate a diff of this commit:
cvs rdiff -r1.17 -r1.18 src/sys/arch/amd64/include/vmparam.h
cvs rdiff -r1.66 -r1.67 src/sys/arch/i386/include/vmparam.h
cvs rdiff -r1.11 -r1.12 src/sys/arch/x86/include/Makefile
cvs rdiff -r1.10 -r1.11 src/sys/arch/x86/include/pmap.h
cvs rdiff -r0 -r1.1 src/sys/arch/x86/include/pmap_pv.h
cvs rdiff -r1.38 -r1.39 src/sys/arch/x86/x86/pmap.c

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