Hi, all,

(First off, I hope I'm posting to the right list.)

I have the following question regarding mbuf cluster exhaustion.
If I've managed to exhaust the pool, I start getting the usual
"All mbuf clusters exhausted, please see tuning(7)." message.
Now, at that point this is what my mbuf pool looked like:

[grid] ~ $ netstat -m
4305/4944/18240 mbufs in use (current/peak/max):
        4305 mbufs allocated to data
4560/4560/4560 mbuf clusters in use (current/peak/max)
10356 Kbytes allocated to network (75% of mb_map in use)
8832 requests for memory denied
1 requests for memory delayed
0 calls to protocol drain routines
[grid] ~ $

Now, the problem is not in the fact that this occurs, and
tuning the kernel parameters is not what I'm interested in,
since I don't need a larger pool.

What I can't seem to figure out is how to flush out the
"stale" mbufs/clusters. I can close down all network
interfaces, and kill/restart most of the processes that I
presume use up the mbufs. At a given point, there can't
possibly be any processes that are hogging the mbuf
clusters. Yet, a while later, this is what the pool
looks like

[grid] ~ $ netstat -m
4305/4944/18240 mbufs in use (current/peak/max):
        4305 mbufs allocated to data
4304/4560/4560 mbuf clusters in use (current/peak/max)
10356 Kbytes allocated to network (75% of mb_map in use)
8832 requests for memory denied
1 requests for memory delayed
0 calls to protocol drain routines
[grid] ~ $

A few clusters have been freed. But not much. Now, if
(presumably) no clusters are being used by a process,
should they not be released by the kernel? Alternatively,
how can I enforce this (short of rebooting the machine,
which is *not* the solution I'm looking for)?

Thanks a lot for any input!

Peter

_______________________________________________
[EMAIL PROTECTED] mailing list
http://lists.freebsd.org/mailman/listinfo/freebsd-hackers
To unsubscribe, send any mail to "[EMAIL PROTECTED]"

Reply via email to