Date: Thu, 2 Feb 2006 21:37:39 +0000 (UTC) From: Tor Egge <tegge@FreeBSD.org> To: src-committers@FreeBSD.org, cvs-src@FreeBSD.org, cvs-all@FreeBSD.org Subject: cvs commit: src/sys/kern vfs_bio.c Message-ID: <200602022137.k12Lbd2b023314@repoman.freebsd.org>
next in thread | raw e-mail | index | archive | help
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
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?200602022137.k12Lbd2b023314>