Skip site navigation (1)Skip section navigation (2)
Date:      Thu, 20 Nov 1997 09:15:32 -0500
From:      "Gregory, Scott, SrA, SAF/AADXT" <gregorys@af.pentagon.mil>
To:        "'freebsd-questions@freebsd.org'" <freebsd-questions@freebsd.org>
Subject:   Mbuf allocation or lack there of
Message-ID:  <A1D69BFE912ED111A5BB00A0C95DDDDCA1E6@afp1.hq.af.mil>

next in thread | raw e-mail | index | archive | help
I submitted a question to the group a couple of weeks ago about my
system crashing with a " /kernel: Out of mbuf clusters - increase
maxusers! " error.  Taking a suggestion from someone on this mailing
list I increased my max users to "maxusers        128"  and added
"options         NMBCLUSTERS=4096".  This kernel has been running for 14
days and I have again gotten the " /kernel: Out of mbuf clusters -
increase maxusers! " error, however my system did not reboot.

The output of netstat -m is:

715 mbufs in use:
        351 mbufs allocated to data
        357 mbufs allocated to packet headers
        6 mbufs allocated to protocol control blocks
        1 mbufs allocated to socket names and addresses
334/1136 mbuf clusters in use
2361 Kbytes allocated to network (32% in use)
0 requests for memory denied
0 requests for memory delayed
0 calls to protocol drain routines

Yesterday this was running 80-90% in use.  The number of clusters in use
continues to increase ( xxx/1136 ).  Yesterday it only had 984 clusters
which increaseed to 1026 which increased to the current 1136.  When I
was running a slightly modified generic kernel netstat -m ouput was:

714 mbufs in use:
        685 mbufs allocated to data
        23 mbufs allocated to packet headers
        5 mbufs allocated to protocol control blocks
        1 mbufs allocated to socket names and addresses
683/2318 mbuf clusters in use
4725 Kbytes allocated to network (30% in use)
0 requests for memory denied
0 requests for memory delayed
0 calls to protocol drain routines

As you can see the mbuf clusters in use was up to 2318.

My questions are:

1.  Does the system dynamically allocate mbuf clusters as it needs them?
2.  Is there any way to find out what the maximum allocation will be?
3.  Did I get the "Out of mbuf clusters" error yesterday because the
system couldn't allocate clusters fast enough or because it reached the
hard limit?
4.  Are my kernel settings sufficient?

I am running a web server with 2.2.2-R on a PPro 200, 96 meg RAM.  I am
also running Apache 1.2.4 which at times has 200+ clients connected.

If you need more system info please let me know.  Any assistance you can
provide is appreciated.


Thanks,

Scott





Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?A1D69BFE912ED111A5BB00A0C95DDDDCA1E6>