Date: Fri, 3 Feb 2006 00:16:37 +0000 (UTC) From: Peter Wemm <peter@FreeBSD.org> To: src-committers@FreeBSD.org, cvs-src@FreeBSD.org, cvs-all@FreeBSD.org Subject: cvs commit: src/sys/amd64/amd64 pmap.c Message-ID: <200602030016.k130GbmC032454@repoman.freebsd.org>
next in thread | raw e-mail | index | archive | help
peter 2006-02-03 00:16:37 UTC FreeBSD src repository Modified files: sys/amd64/amd64 pmap.c Log: Make PV entries dynamic on amd64. i386 has a pre-reserved block of kva dedicated to storing pv entries, originally so that kva didn't have to be allocated at inconvenient times. For amd64, we can get the same effect by using the direct map area. Allocating pages is the same as with the object backed method, but now we can just lookup the page in the direct map area. Thus, no more pageable kva is reserved. This is the single largest consumer of kva on our work machines and this change should help conserve the fixed size 2GB pageable kva on the amd64 kernel. There are a pair of sysctl nodes introduced, named the same as their tunable counterparts. vm.pmap.shpgperproc and vm.pmap.pv_entry_max They work just like the tunables of the same path, except the values are linked. The pv entry cap is now dynamically changeable. I didn't make them totally unlimited because we need some sort of safety limit still. One could consume all physical memory without a cap. Revision Changes Path 1.536 +36 -6 src/sys/amd64/amd64/pmap.c
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?200602030016.k130GbmC032454>