NetBSD/sys/kern
tls abcbeb46d9 Users have observed that the amount of memory used by the metadata cache
can in some situations exceed the high-water mark, and stay there once it
gets there.  Adjust the canrelease function so that it will immediately
bring us back down to the high-water mark in this situation.

How can this happen at all?  Consider a machine with two filesystems, one
with a much larger blocksize than the other.  If the small-block filesystem
is very busy, growing the cache up to the high-water mark, and then the
large-block filesystem becomes busy, buffers will be recycled (since we
are at the high-water mark) but _grow each time they're recycled_.  Once
we're above the high-water mark, the canrelease call in allocbuf (without
this change) doesn't shrink us back down below it; so things get worse and
worse.
2005-01-10 15:29:50 +00:00
..
Make.tags.inc
Makefile We have CVS; there is no reason to make .bak files when generating the 2003-11-15 20:26:02 +00:00
bufq_disksort.c lookup bufq using link_set rather than a switch statement. 2004-11-25 04:52:23 +00:00
bufq_fcfs.c lookup bufq using link_set rather than a switch statement. 2004-11-25 04:52:23 +00:00
bufq_priocscan.c lookup bufq using link_set rather than a switch statement. 2004-11-25 04:52:23 +00:00
bufq_readprio.c lookup bufq using link_set rather than a switch statement. 2004-11-25 04:52:23 +00:00
cnmagic.c
core_elf32.c There's no need to pass a proc value when using UIO_SYSSPACE with 2004-09-17 14:11:20 +00:00
core_elf64.c
core_netbsd.c There's no need to pass a proc value when using UIO_SYSSPACE with 2004-09-17 14:11:20 +00:00
exec_aout.c Uppercase CPU, plural is CPUs. 2004-02-13 11:36:08 +00:00
exec_conf.c g/c rest of COMPAT_AOUT support 2004-09-14 17:25:37 +00:00
exec_ecoff.c
exec_elf32.c We emulate more than SVR4, and IBCS2 on the i386 and Linux on the i386 2004-10-30 09:38:15 +00:00
exec_elf64.c
exec_macho.c Recognize bundles as mach-O executables 2004-09-04 23:21:26 +00:00
exec_script.c Check to see if the script has an ELF header, and if so, return ENOEXEC. 2004-11-04 23:55:28 +00:00
exec_subr.c There's no need to pass a proc value when using UIO_SYSSPACE with 2004-09-17 14:11:20 +00:00
genassym.awk
genassym.sh
genlintstub.awk
init_main.c Rework the mountroot interface so that vfs_mountroot() opens the root device 2005-01-09 03:11:48 +00:00
init_sysctl.c introduce a function, proclist_foreach_call, to iterate all procs on 2004-10-01 16:30:52 +00:00
init_sysent.c Regen for extended attribute system calls. 2005-01-02 17:47:29 +00:00
kern_acct.c sys_acct: use VOP_SETATTR instead of VOP_TRUNCATE as the latter's 2004-12-13 08:46:43 +00:00
kern_clock.c Add 50Hz support -- this will allow 'options NTP' to work on the Xen port, 2004-09-15 04:56:14 +00:00
kern_descrip.c Cloning cleanup: 2004-11-30 04:25:43 +00:00
kern_drvctl.c add a "drvctl" pseudo-device as userland interface to the autoconf 2004-08-18 12:19:29 +00:00
kern_event.c Cloning cleanup: 2004-11-30 04:25:43 +00:00
kern_exec.c introduce a function, proclist_foreach_call, to iterate all procs on 2004-10-01 16:30:52 +00:00
kern_exit.c introduce a function, proclist_foreach_call, to iterate all procs on 2004-10-01 16:30:52 +00:00
kern_fork.c - proc_alloc() already initializes p_stat to SIDL. 2004-09-17 23:20:21 +00:00
kern_kcont.c Initialise (most) pools from a link set instead of explicit calls 2004-04-25 16:42:40 +00:00
kern_ksyms.c Move detection of a special symbol into a separate function. Add some more 2004-02-19 03:42:01 +00:00
kern_kthread.c
kern_ktrace.c Fix bug in siginfo handling introduced in revision 1.93 2004-10-26 06:58:05 +00:00
kern_lkm.c #ifdef DDB rdyfail label, too 2004-12-30 12:12:16 +00:00
kern_lock.c a relatively lightweight implementation of kernel_lock. 2004-10-26 00:14:46 +00:00
kern_lwp.c Correct arg name in comment. 2004-10-06 08:55:27 +00:00
kern_malloc.c in the case of !PMAP_MAP_POOLPAGE, gather pool backend allocations to 2005-01-01 21:08:02 +00:00
kern_malloc_debug.c Initialise (most) pools from a link set instead of explicit calls 2004-04-25 16:42:40 +00:00
kern_microtime.c move some per-cpu data definitions to MI place so that they can be modified 2004-09-22 11:32:02 +00:00
kern_ntptime.c Lots of sysctl descriptions (if someone wants to help out here, that 2004-04-08 06:20:29 +00:00
kern_physio.c - Nuke __P(). 2004-03-23 13:22:32 +00:00
kern_proc.c proclist_foreach_call: tweak an assertion to deal with the case that 2004-10-03 22:26:35 +00:00
kern_prot.c crcopy: no need to lock if we're only reading the structure's reference count. 2004-05-04 21:27:28 +00:00
kern_ras.c ras_fork: don't do PR_WAITOK holding a spinlock. 2004-04-01 02:37:42 +00:00
kern_resource.c introduce a function, proclist_foreach_call, to iterate all procs on 2004-10-01 16:30:52 +00:00
kern_sa.c If sa_upcall() fails (which is always going to be due to resource exhaustion), 2005-01-06 19:26:41 +00:00
kern_sig.c Allow PT_DUMPCORE to specify the core filename. 2005-01-09 19:22:55 +00:00
kern_subr.c Add a check in DEV_USES_PARTITIONS macro in case dv->dv_cfdata is NULL, 2004-10-24 17:06:24 +00:00
kern_synch.c Add some debug code to validate the runqueues if RQDEBUG is defined. 2004-12-09 21:52:24 +00:00
kern_sysctl.c In sysctl_destroyv, the newly created dnode structure must have its 2004-05-12 12:21:39 +00:00
kern_systrace.c Cloning cleanup: 2004-11-30 04:25:43 +00:00
kern_time.c If sa_upcall() fails (which is always going to be due to resource exhaustion), 2005-01-06 19:26:41 +00:00
kern_timeout.c Make callout_setfunc() a CPP macro. Suggested by enami. 2003-10-30 04:32:56 +00:00
kern_uuid.c Move the 16/32-bit encode/decode to/from octet stream routines from 2004-09-12 23:17:37 +00:00
kern_verifiedexec.c There's no need to pass a proc value when using UIO_SYSSPACE with 2004-09-17 14:11:20 +00:00
kern_xxx.c
kgdb_stub.c kill sprintf, use snprintf 2004-04-21 18:40:37 +00:00
makesyscalls.sh use 'have_toupper' variable for awk toupper() function existence test, rather 2004-09-12 11:24:15 +00:00
subr_autoconf.c Change config_attach_pseudo() to take a cfdata * that contains the 2004-10-15 04:38:36 +00:00
subr_devsw.c
subr_disk.c lookup bufq using link_set rather than a switch statement. 2004-11-25 04:52:23 +00:00
subr_disk_mbr.c Overhaul MBR handling (part 1): 2003-10-08 04:25:43 +00:00
subr_evcnt.c Include "sys/systm.h" to get the prototype for panic() which is required 2004-02-17 08:22:12 +00:00
subr_extent.c - Nuke __P(). 2004-03-23 13:22:32 +00:00
subr_log.c
subr_pool.c PR_NOTOUCH: 2005-01-01 21:09:56 +00:00
subr_prf.c Implement ddb setting that allows all ddb output to be teed into the 2004-09-29 23:54:11 +00:00
subr_prof.c Lots of sysctl descriptions (if someone wants to help out here, that 2004-04-08 06:20:29 +00:00
subr_prop.c Remove trailing blank line. 2003-12-21 11:54:16 +00:00
subr_userconf.c kill sprintf, use snprintf 2004-04-21 18:40:37 +00:00
subr_xxx.c
sys_generic.c Nuke __P(). 2004-03-23 13:22:03 +00:00
sys_pipe.c Cloning cleanup: 2004-11-30 04:25:43 +00:00
sys_pmc.c
sys_process.c Flip the order of two lines I mixed. Thanks to wiz for noticing. 2005-01-09 20:25:26 +00:00
sys_socket.c I guess compiling code before committing is a lost art! 2004-11-06 07:31:55 +00:00
syscalls.c Regen for extended attribute system calls. 2005-01-02 17:47:29 +00:00
syscalls.conf Replace the statfs() family of system calls with statvfs(). 2004-04-21 01:05:31 +00:00
syscalls.master Add the system call and VFS infrastructure for file system extended 2005-01-02 16:08:28 +00:00
sysv_ipc.c
sysv_msg.c Nuke __P(). 2004-03-23 13:22:03 +00:00
sysv_sem.c Update sem_otime on successful call to semop(). 2004-10-07 05:34:09 +00:00
sysv_shm.c fix typo (missing &) 2004-10-17 11:24:42 +00:00
tty.c Add support for FIONWRITE and FIONSPACE ioctls. FIONWRITE reports 2004-11-06 02:03:20 +00:00
tty_bsdpty.c Limit the hard-coding of things to tty_bsdpty.c. 2004-11-24 22:19:27 +00:00
tty_conf.c - Nuke __P(). 2004-03-23 13:22:32 +00:00
tty_ptm.c Cloning cleanup: 2004-11-30 04:25:43 +00:00
tty_pty.c PR/25749: Peter Postma: Missing splx() in kernel. 2004-11-13 19:16:18 +00:00
tty_subr.c Nuke __P(). 2004-03-23 13:22:03 +00:00
tty_tb.c Nuke __P(). 2004-03-23 13:22:03 +00:00
tty_tty.c Add the gating of system calls that cause modifications to the underlying 2003-10-15 11:28:59 +00:00
uipc_domain.c Sysctl descriptions under net subtree (net.key not done) 2004-05-25 04:33:59 +00:00
uipc_mbuf.c Make panic messages print out what condition they though was panic-worthy 2004-10-20 22:10:31 +00:00
uipc_mbuf2.c m_pulldown: fix mbuf leaks and chain truncation 2004-07-21 12:09:43 +00:00
uipc_proto.c Constify protosw arrays. This can reduce the kernel .data section by 2004-04-22 01:01:40 +00:00
uipc_sem.c
uipc_socket.c add a per-socket counter for dropped UDP packets when the internal buffers 2004-09-03 18:14:09 +00:00
uipc_socket2.c Rename MBUFTRACE helper function m_claim() to m_claimm(), 2004-06-24 04:15:50 +00:00
uipc_syscalls.c Cloning cleanup: 2004-11-30 04:25:43 +00:00
uipc_usrreq.c add a per-socket counter for dropped UDP packets when the internal buffers 2004-09-03 18:14:09 +00:00
vfs_bio.c Users have observed that the amount of memory used by the metadata cache 2005-01-10 15:29:50 +00:00
vfs_cache.c introduce a new function, cache_lookup_raw(), for filesystems which 2004-06-27 08:50:44 +00:00
vfs_getcwd.c There's no need to pass a proc value when using UIO_SYSSPACE with 2004-09-17 14:11:20 +00:00
vfs_init.c Nuke __P(). 2004-03-23 13:22:03 +00:00
vfs_lockf.c Fix a typo, dependancy -> dependency 2004-11-19 14:18:53 +00:00
vfs_lookup.c There's no need to pass a proc value when using UIO_SYSSPACE with 2004-09-17 14:11:20 +00:00
vfs_subr.c Rework the mountroot interface so that vfs_mountroot() opens the root device 2005-01-09 03:11:48 +00:00
vfs_syscalls.c Add the system call and VFS infrastructure for file system extended 2005-01-02 16:08:28 +00:00
vfs_vnops.c Add the system call and VFS infrastructure for file system extended 2005-01-02 16:08:28 +00:00
vnode_if.c Regen for extended attribute VOPs. 2005-01-02 17:46:41 +00:00
vnode_if.sh Add a new VNODE_LOCKDEBUG option, which enables checks in the VOP_*() 2004-09-21 03:10:35 +00:00
vnode_if.src Add the system call and VFS infrastructure for file system extended 2005-01-02 16:08:28 +00:00