Source-Changes archive
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]
CVS commit: syssrc/sys
Module Name: syssrc
Committed By: thorpej
Date: Fri Mar 8 20:48:47 UTC 2002
Modified Files:
syssrc/sys/adosfs: advfsops.c
syssrc/sys/arch/alpha/alpha: pmap.c
syssrc/sys/arch/arm/arm32: pmap.c
syssrc/sys/arch/arm26/arm26: pmap.c
syssrc/sys/arch/cesfic/cesfic: pmap.c
syssrc/sys/arch/hp300/hp300: pmap.c
syssrc/sys/arch/i386/i386: pmap.c
syssrc/sys/arch/luna68k/luna68k: pmap.c
syssrc/sys/arch/mac68k/mac68k: iop.c pmap.c
syssrc/sys/arch/mips/mips: pmap.c
syssrc/sys/arch/mvme68k/mvme68k: pmap.c
syssrc/sys/arch/news68k/news68k: pmap.c
syssrc/sys/arch/pc532/pc532: pmap.c
syssrc/sys/arch/powerpc/ibm4xx: pmap.c
syssrc/sys/arch/powerpc/mpc6xx: pmap.c
syssrc/sys/arch/sgimips/hpc: sbic.c
syssrc/sys/arch/sh3/sh3: pmap.c
syssrc/sys/arch/sparc/sparc: pmap.c
syssrc/sys/arch/sparc64/sparc64: pmap.c
syssrc/sys/arch/sun2/sun2: pmap.c
syssrc/sys/arch/sun3/sun3: pmap.c
syssrc/sys/arch/sun3/sun3x: pmap.c
syssrc/sys/arch/x68k/x68k: pmap.c
syssrc/sys/arch/x86_64/x86_64: pmap.c
syssrc/sys/dev: ccd.c rnd.c vnd.c
syssrc/sys/dev/ic: ncr53c9x.c wdc.c
syssrc/sys/dev/raidframe: rf_netbsdkintf.c
syssrc/sys/dev/scsipi: scsipi_base.c
syssrc/sys/filecorefs: filecore_node.c
syssrc/sys/isofs/cd9660: cd9660_node.c
syssrc/sys/kern: kern_descrip.c kern_malloc_debug.c kern_proc.c
kern_sig.c subr_extent.c subr_pool.c sys_pipe.c tty.c uipc_mbuf.c
uipc_socket.c vfs_bio.c vfs_cache.c vfs_init.c vfs_subr.c
syssrc/sys/msdosfs: msdosfs_denode.c
syssrc/sys/net: if_bridge.c route.c
syssrc/sys/netinet: in_pcb.c ip_flow.c ip_input.c tcp_input.c
tcp_subr.c
syssrc/sys/nfs: nfs_node.c
syssrc/sys/sys: pool.h
syssrc/sys/ufs/ext2fs: ext2fs_vfsops.c
syssrc/sys/ufs/ffs: ffs_softdep.c ffs_vfsops.c
syssrc/sys/ufs/lfs: lfs_vfsops.c
syssrc/sys/uvm: uvm_amap.c uvm_aobj.c uvm_map.c uvm_swap.c
Log Message:
Pool deals fairly well with physical memory shortage, but it doesn't
deal with shortages of the VM maps where the backing pages are mapped
(usually kmem_map). Try to deal with this:
* Group all information about the backend allocator for a pool in a
separate structure. The pool references this structure, rather than
the individual fields.
* Change the pool_init() API accordingly, and adjust all callers.
* Link all pools using the same backend allocator on a list.
* The backend allocator is responsible for waiting for physical memory
to become available, but will still fail if it cannot callocate KVA
space for the pages. If this happens, carefully drain all pools using
the same backend allocator, so that some KVA space can be freed.
* Change pool_reclaim() to indicate if it actually succeeded in freeing
some pages, and use that information to make draining easier and more
efficient.
* Get rid of PR_URGENT. There was only one use of it, and it could be
dealt with by the caller.
>From art%openbsd.org.@localhost
To generate a diff of this commit:
cvs rdiff -r1.50 -r1.51 syssrc/sys/adosfs/advfsops.c
cvs rdiff -r1.190 -r1.191 syssrc/sys/arch/alpha/alpha/pmap.c
cvs rdiff -r1.51 -r1.52 syssrc/sys/arch/arm/arm32/pmap.c
cvs rdiff -r1.36 -r1.37 syssrc/sys/arch/arm26/arm26/pmap.c
cvs rdiff -r1.11 -r1.12 syssrc/sys/arch/cesfic/cesfic/pmap.c
cvs rdiff -r1.103 -r1.104 syssrc/sys/arch/hp300/hp300/pmap.c
cvs rdiff -r1.133 -r1.134 syssrc/sys/arch/i386/i386/pmap.c
cvs rdiff -r1.22 -r1.23 syssrc/sys/arch/luna68k/luna68k/pmap.c
cvs rdiff -r1.3 -r1.4 syssrc/sys/arch/mac68k/mac68k/iop.c
cvs rdiff -r1.85 -r1.86 syssrc/sys/arch/mac68k/mac68k/pmap.c
cvs rdiff -r1.140 -r1.141 syssrc/sys/arch/mips/mips/pmap.c
cvs rdiff -r1.76 -r1.77 syssrc/sys/arch/mvme68k/mvme68k/pmap.c
cvs rdiff -r1.28 -r1.29 syssrc/sys/arch/news68k/news68k/pmap.c
cvs rdiff -r1.67 -r1.68 syssrc/sys/arch/pc532/pc532/pmap.c
cvs rdiff -r1.8 -r1.9 syssrc/sys/arch/powerpc/ibm4xx/pmap.c
cvs rdiff -r1.37 -r1.38 syssrc/sys/arch/powerpc/mpc6xx/pmap.c
cvs rdiff -r1.6 -r1.7 syssrc/sys/arch/sgimips/hpc/sbic.c
cvs rdiff -r1.33 -r1.34 syssrc/sys/arch/sh3/sh3/pmap.c
cvs rdiff -r1.205 -r1.206 syssrc/sys/arch/sparc/sparc/pmap.c
cvs rdiff -r1.116 -r1.117 syssrc/sys/arch/sparc64/sparc64/pmap.c
cvs rdiff -r1.16 -r1.17 syssrc/sys/arch/sun2/sun2/pmap.c
cvs rdiff -r1.135 -r1.136 syssrc/sys/arch/sun3/sun3/pmap.c
cvs rdiff -r1.73 -r1.74 syssrc/sys/arch/sun3/sun3x/pmap.c
cvs rdiff -r1.75 -r1.76 syssrc/sys/arch/x68k/x68k/pmap.c
cvs rdiff -r1.4 -r1.5 syssrc/sys/arch/x86_64/x86_64/pmap.c
cvs rdiff -r1.75 -r1.76 syssrc/sys/dev/ccd.c
cvs rdiff -r1.25 -r1.26 syssrc/sys/dev/rnd.c
cvs rdiff -r1.77 -r1.78 syssrc/sys/dev/vnd.c
cvs rdiff -r1.89 -r1.90 syssrc/sys/dev/ic/ncr53c9x.c
cvs rdiff -r1.111 -r1.112 syssrc/sys/dev/ic/wdc.c
cvs rdiff -r1.116 -r1.117 syssrc/sys/dev/raidframe/rf_netbsdkintf.c
cvs rdiff -r1.67 -r1.68 syssrc/sys/dev/scsipi/scsipi_base.c
cvs rdiff -r1.9 -r1.10 syssrc/sys/filecorefs/filecore_node.c
cvs rdiff -r1.27 -r1.28 syssrc/sys/isofs/cd9660/cd9660_node.c
cvs rdiff -r1.84 -r1.85 syssrc/sys/kern/kern_descrip.c
cvs rdiff -r1.5 -r1.6 syssrc/sys/kern/kern_malloc_debug.c
cvs rdiff -r1.45 -r1.46 syssrc/sys/kern/kern_proc.c \
syssrc/sys/kern/subr_extent.c
cvs rdiff -r1.119 -r1.120 syssrc/sys/kern/kern_sig.c
cvs rdiff -r1.65 -r1.66 syssrc/sys/kern/subr_pool.c
cvs rdiff -r1.22 -r1.23 syssrc/sys/kern/sys_pipe.c
cvs rdiff -r1.132 -r1.133 syssrc/sys/kern/tty.c
cvs rdiff -r1.57 -r1.58 syssrc/sys/kern/uipc_mbuf.c
cvs rdiff -r1.61 -r1.62 syssrc/sys/kern/uipc_socket.c
cvs rdiff -r1.78 -r1.79 syssrc/sys/kern/vfs_bio.c
cvs rdiff -r1.34 -r1.35 syssrc/sys/kern/vfs_cache.c
cvs rdiff -r1.20 -r1.21 syssrc/sys/kern/vfs_init.c
cvs rdiff -r1.170 -r1.171 syssrc/sys/kern/vfs_subr.c
cvs rdiff -r1.54 -r1.55 syssrc/sys/msdosfs/msdosfs_denode.c
cvs rdiff -r1.3 -r1.4 syssrc/sys/net/if_bridge.c
cvs rdiff -r1.50 -r1.51 syssrc/sys/net/route.c
cvs rdiff -r1.74 -r1.75 syssrc/sys/netinet/in_pcb.c
cvs rdiff -r1.22 -r1.23 syssrc/sys/netinet/ip_flow.c
cvs rdiff -r1.145 -r1.146 syssrc/sys/netinet/ip_input.c
cvs rdiff -r1.134 -r1.135 syssrc/sys/netinet/tcp_input.c
cvs rdiff -r1.122 -r1.123 syssrc/sys/netinet/tcp_subr.c
cvs rdiff -r1.51 -r1.52 syssrc/sys/nfs/nfs_node.c
cvs rdiff -r1.28 -r1.29 syssrc/sys/sys/pool.h
cvs rdiff -r1.48 -r1.49 syssrc/sys/ufs/ext2fs/ext2fs_vfsops.c
cvs rdiff -r1.29 -r1.30 syssrc/sys/ufs/ffs/ffs_softdep.c
cvs rdiff -r1.92 -r1.93 syssrc/sys/ufs/ffs/ffs_vfsops.c
cvs rdiff -r1.71 -r1.72 syssrc/sys/ufs/lfs/lfs_vfsops.c
cvs rdiff -r1.41 -r1.42 syssrc/sys/uvm/uvm_amap.c
cvs rdiff -r1.49 -r1.50 syssrc/sys/uvm/uvm_aobj.c
cvs rdiff -r1.117 -r1.118 syssrc/sys/uvm/uvm_map.c
cvs rdiff -r1.58 -r1.59 syssrc/sys/uvm/uvm_swap.c
Please note that diffs are not public domain; they are subject to the
copyright notices on the relevant files.
Home |
Main Index |
Thread Index |
Old Index