With only the changes to the UMA system, I saw that the system behaved normally when I exhausted all mbuf clusters.
With the additional changes to run mb_reclaim() when an allocation fails from one of the mbuf zones because the zone limit has been reached, I exhausted all mbufs on a system and saw that mb_reclaim() freed them.