kmem_map too small: 3832475648 total allocated

Gary Jennejohn gljennjohn at
Fri Apr 30 08:12:01 UTC 2010

On Fri, 30 Apr 2010 00:27:00 +0200
Willem Jan Withagen <wjw at> wrote:

> On 29-4-2010 6:17, Artem Belevich wrote:
> > Do you have vm.kmem_size set in /boot/loader.conf?
> >
> > If not, do set it to about double of your physical RAM size. Defaults
> > are way too conservative for use with large amounts of memory and ZFS.
> As per this suggestion I set this value to 2*8G:
> vm.kmem_size="17179869184"
> And bfore the kernel boots this value is set in the loader.
> Tested it by goinginto the loader and show the value.
> But once booted I still get:
> [/boot] wjw at> sysctl vm.kmem_size
> vm.kmem_size: 3718209536
> So who is resetting this value???

A number of variables go into calculating vm.kmem_size (see kmeminit()
in kern_malloc.c).

In the end, the kernel won't allocate more than twice the physical memory
size _which it has discovered_.

The question is, how much of your physical memory does the kernel actually

Gary Jennejohn

More information about the freebsd-current mailing list