cvs commit: src/sys/kern kern_mbuf.c src/sys/sys mbuf.h
src/sys/vm uma.h uma_core.c
glebius at FreeBSD.org
Thu Jan 25 10:29:24 UTC 2007
On Thu, Jan 25, 2007 at 01:05:23AM +0000, Mohan Srinivasan wrote:
M> mohans 2007-01-25 01:05:23 UTC
M> FreeBSD src repository
M> Modified files:
M> sys/kern kern_mbuf.c
M> sys/sys mbuf.h
M> sys/vm uma.h uma_core.c
M> Fix for problems that occur when all mbuf clusters migrate to the mbuf packet
M> zone. Cluster allocations fail when this happens. Also processes that may have
M> blocked on cluster allocations will never be woken up. Thanks to rwatson for
M> an overview of the issue and pointers to the mbuma paper and his tool to dump
M> out UMA zones.
M> Reviewed by: andre@
Again, thanks for working on this!
I've got a patch for some time, very similar to the one you've committed.
However, it didn't help me entirely, because some processes could still be left
sleeping. May be this is fixed by your wakeup_one() -> wakeup() change. I should
test this ASAP. And please tell your opinion on the issue I've described in
P.S. Let me do a small style nit-pick. :) All the UMA public functions are
preceeded with "uma_", so it will be more nice to create a public uma_zone_drain(),
that just calls internal zone_drain(). Like uma_print_stats() or uma_zdestroy()
Totus tuus, Glebius.
More information about the cvs-all