cvs commit: src/sys/kern vfs_bio.c
Tor Egge
tegge at FreeBSD.org
Thu Feb 2 13:37:43 PST 2006
tegge 2006-02-02 21:37:39 UTC
FreeBSD src repository
Modified files:
sys/kern vfs_bio.c
Log:
For low memory situations, non-VMIO buffers didnt't release pages back to
the system when brelse() was called with B_RELBUF set on the buffer. This
could be a problem when the system was low on memory, had many buffers on
QUEUE_EMPTYKVA and started to traverse directories. For each getnewbuf(),
pages were allocated from the system, driving the free reserve downwards.
For each brelse(), the system put the buffer on QUEUE_CLEAN, with B_INVAL
set.
This commit changes the semantics of B_RELBUF to also free pages from
non-VMIO buffers.
Reviewed by: alc
Revision Changes Path
1.503 +5 -0 src/sys/kern/vfs_bio.c
More information about the cvs-src
mailing list