zonelimit issues...
Igor Sysoev
is at rambler-co.ru
Thu Apr 24 18:44:18 UTC 2008
On Mon, Apr 21, 2008 at 03:27:53PM +0400, Igor Sysoev wrote:
> The problem that FreeBSD has small KVA space: only 2G even on amd64 32G
> machines.
>
> So with
>
> vm.kmem_size=1G
> # 64M KVA
> kern.maxbcache=64M
> # 4M KVA
> kern.ipc.maxpipekva=4M
>
>
> I can use something like this:
>
> # 256M KVA/KVM
> kern.ipc.nmbjumbop=64000
> # 216M KVA/KVM
> kern.ipc.nmbclusters=98304
> # 162M KVA/KVM
> kern.ipc.maxsockets=163840
> # 8M KVA/KVM
> net.inet.tcp.maxtcptw=163840
> # 24M KVA/KVM
> kern.maxfiles=204800
Actually, on amd64 it is possible to increase KVM up to 1.8G without
boot time panic:
vm.kmem_size=1844M
# 64M KVA
kern.maxbcache=64M
# 4M KVA
kern.ipc.maxpipekva=4M
Without descreasing kern.maxbcache (200M by default) and
kern.ipc.maxpipekva (~40M by default) you can get only about 1.5G.
So with 1.8G KVM I able to set
# 4G phys, 2G KVA, 1.8G KVM
#
# 750M KVA/KVM
kern.ipc.nmbjumbop=192000
# 504M KVA/KVM
kern.ipc.nmbclusters=229376
# 334M KVA/KVM
kern.ipc.maxsockets=204800
# 8M KVA/KVM
net.inet.tcp.maxtcptw=163840
# 24M KVA/KVM
kern.maxfiles=204800
Now KVA is split as
kernel code 8M
kmem_map 1844M
buffer_map 64M
pager_map 32M
exec_map 4.2M
pipe_map 4M
??? 60M
vm.kvm_free 32M
I leave unused spare 32M free KVA (vm.kvm_free) because some map
(unknown for me) after pipe_map may grow slightly. If vm.kvm_free will
become 0, kernel will panic.
--
Igor Sysoev
http://sysoev.ru/en/
More information about the freebsd-net
mailing list