Skip site navigation (1)Skip section navigation (2)
Date:      Thu, 22 Jan 1998 09:30:51 -0800 (PST)
From:      John Dyson <dyson@FreeBSD.ORG>
To:        cvs-committers@FreeBSD.ORG, cvs-all@FreeBSD.ORG, cvs-sys@FreeBSD.ORG
Subject:   cvs commit: src/sys/i386/i386 machdep.c pmap.c vm_machdep.c src/sys/kern init_main.c kern_exit.c kern_fork.c kern_malloc.c kern_proc.c kern_subr.c sys_process.c vfs_bio.c vfs_subr.c src/sys/miscfs/procfs procfs_mem.c src/sys/sys buf.h proc.h ...
Message-ID:  <199801221730.JAA24559@freefall.freebsd.org>

next in thread | raw e-mail | index | archive | help
dyson       1998/01/22 09:30:50 PST

  Modified files:
    sys/i386/i386        machdep.c pmap.c vm_machdep.c 
    sys/kern             init_main.c kern_exit.c kern_fork.c 
                         kern_malloc.c kern_proc.c kern_subr.c 
                         sys_process.c vfs_bio.c vfs_subr.c 
    sys/miscfs/procfs    procfs_mem.c 
    sys/sys              buf.h proc.h 
    sys/ufs/ffs          ffs_vfsops.c 
    sys/ufs/ufs          ufs_lookup.c ufs_readwrite.c 
    sys/vm               pmap.h swap_pager.c vm_extern.h 
                         vm_fault.c vm_glue.c vm_kern.c vm_map.c 
                         vm_map.h vm_object.c vm_object.h 
                         vm_page.c vm_pageout.c vm_pageout.h 
                         vm_zone.c 
  Log:
  VM level code cleanups.
  
  1)	Start using TSM.
  	Struct procs continue to point to upages structure, after being freed.
  	Struct vmspace continues to point to pte object and kva space for kstack.
  	u_map is now superfluous.
  2)	vm_map's don't need to be reference counted.  They always exist either
  	in the kernel or in a vmspace.  The vmspaces are managed by reference
  	counts.
  3)	Remove the "wired" vm_map nonsense.
  4)	No need to keep a cache of kernel stack kva's.
  5)	Get rid of strange looking ++var, and change to var++.
  6)	Change more data structures to use our "zone" allocator.  Added
  	struct proc, struct vmspace and struct vnode.  This saves a significant
  	amount of kva space and physical memory.  Additionally, this enables
  	TSM for the zone managed memory.
  7)	Keep ioopt disabled for now.
  8)	Remove the now bogus "single use" map concept.
  9)	Use generation counts or id's for data structures residing in TSM, where
  	it allows us to avoid unneeded restart overhead during traversals, where
  	blocking might occur.
  10)	Account better for memory deficits, so the pageout daemon will be able
  	to make enough memory available (experimental.)
  11)	Fix some vnode locking problems. (From Tor, I think.)
  12)	Add a check in ufs_lookup, to avoid lots of unneeded calls to bcmp.
  	(experimental.)
  13)	Significantly shrink, cleanup, and make slightly faster the vm_fault.c
  	code.  Use generation counts, get rid of unneded collpase operations,
  	and clean up the cluster code.
  14)	Make vm_zone more suitable for TSM.
  
  This commit is partially as a result of discussions and contributions from
  other people, including DG, Tor Egge, PHK, and probably others that I
  have forgotten to attribute (so let me know, if I forgot.)
  
  This is not the infamous, final cleanup of the vnode stuff, but a necessary
  step.  Vnode mgmt should be correct, but things might still change, and
  there is still some missing stuff (like ioopt, and physical backing of
  non-merged cache files, debugging of layering concepts.)
  
  Revision  Changes    Path
  1.282     +8 -10     src/sys/i386/i386/machdep.c
  1.178     +53 -64    src/sys/i386/i386/pmap.c
  1.96      +3 -1      src/sys/i386/i386/vm_machdep.c
  1.80      +2 -2      src/sys/kern/init_main.c
  1.65      +3 -2      src/sys/kern/kern_exit.c
  1.51      +3 -2      src/sys/kern/kern_fork.c
  1.39      +2 -3      src/sys/kern/kern_malloc.c
  1.31      +4 -1      src/sys/kern/kern_proc.c
  1.16      +5 -2      src/sys/kern/kern_subr.c
  1.34      +5 -5      src/sys/kern/sys_process.c
  1.144     +20 -7     src/sys/kern/vfs_bio.c
  1.125     +7 -3      src/sys/kern/vfs_subr.c
  1.28      +3 -3      src/sys/miscfs/procfs/procfs_mem.c
  1.45      +2 -1      src/sys/sys/buf.h
  1.53      +4 -1      src/sys/sys/proc.h
  1.66      +2 -1      src/sys/ufs/ffs/ffs_vfsops.c
  1.19      +2 -1      src/sys/ufs/ufs/ufs_lookup.c
  1.40      +2 -2      src/sys/ufs/ufs/ufs_readwrite.c
  1.26      +2 -3      src/sys/vm/pmap.h
  1.82      +10 -9     src/sys/vm/swap_pager.c
  1.37      +3 -3      src/sys/vm/vm_extern.h
  1.76      +89 -170   src/sys/vm/vm_fault.c
  1.70      +1 -4      src/sys/vm/vm_glue.c
  1.40      +4 -5      src/sys/vm/vm_kern.c
  1.108     +104 -179  src/sys/vm/vm_map.c
  1.32      +4 -7      src/sys/vm/vm_map.h
  1.108     +27 -7     src/sys/vm/vm_object.c
  1.43      +3 -1      src/sys/vm/vm_object.h
  1.87      +15 -7     src/sys/vm/vm_page.c
  1.109     +7 -9      src/sys/vm/vm_pageout.c
  1.23      +2 -1      src/sys/vm/vm_pageout.h
  1.15      +13 -5     src/sys/vm/vm_zone.c



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?199801221730.JAA24559>