malloc does not return null when out of memory
Doug White
dwhite at gumbysoft.com
Wed Jul 23 14:09:01 PDT 2003
On Wed, 23 Jul 2003, Gabor wrote:
> We have a little soekris box running freebsd that uses racoon for key
> management. It's used for setting up an ipsec tunnel. I noticed that
> one of these devices lost the tunnel this morning. I looked in the
> log and saw this
>
> Jul 23 01:37:57 m0n0wall /kernel: pid 80 (racoon), uid 0, was killed: out of swap space
[...]
> Here is the tail end of the output. It dies when trying to poke at
> the memory using memset. If I just malloc without the memset, it
> never even dies.
That's normal. If you malloc() memory and never touch it then it is never
actually allocated.
Your problem is that you're running out of memory. Try killing off
unneeded daemons and set maxusers to a low value (like 32). Also try
reducing the size of your mfs partitions, if you're using rc.diskless2. I
don't think raccoon is much of a memory pig, unless you have a huge number
of connections.
> The kernel for this has the NO_SWAPPING option enabled since there is
> essentially no disk, it boots from a CF.
Do you have the 32MB or 64MB version? I have a net4501 (64MB) and I still
have 39MB free. Its just running natd, sshd, named and dhcpd.
--
Doug White | FreeBSD: The Power to Serve
dwhite at gumbysoft.com | www.FreeBSD.org
More information about the freebsd-stable
mailing list