HEADSUP: UMA not reentrant / possible memory leak

Bosko Milekic bmilekic at technokratis.com
Tue Jul 29 19:14:54 PDT 2003


On Wed, Jul 30, 2003 at 01:23:21AM +0000, Tor.Egge at cvsup.no.freebsd.org wrote:
> > The indication of this is that the g_bio zone does not return to
> > zero USED as it should.
> 
> It looks like z->uz_cachefree is slightly out of date (updated in
> zone_timout() every 20th second) and often too low (not taking the
> z->uz_full_bucket list into account).
> 
> The enclosed patch recalculates the number of free elements on the
> buckets instead of using z->uz_cachefree.
> 
> - Tor Egge
> 

   We took this into account when we did the comparison.  We know that
   uz_cachefree is only a snapshot count; but Poul-Henning`s patch
   clearly illustrates a frequent fluctuation in the free zone value but
   where the actual number of allocated g_bio zone elements stays stable
   at 0, for example.

   The fact that the problem is solved when buckets are disabled also is
   indicative that there is a clear reentrancy problems somewhere.
   There may also be some bucket leakage (although I have not yet
   confirmed this) as well.

   
-- 
Bosko Milekic  *  bmilekic at technokratis.com  *  bmilekic at FreeBSD.org
TECHNOkRATIS Consulting Services  *  http://www.technokratis.com/


More information about the freebsd-current mailing list