Skip site navigation (1)Skip section navigation (2)
Date:      Mon, 21 Jul 2003 16:04:45 +0200 (CEST)
From:      Harti Brandt <brandt@fokus.fraunhofer.de>
To:        Bosko Milekic <bmilekic@technokratis.com>
Cc:        current@freebsd.org
Subject:   Re: SMP problem with uma_zalloc
Message-ID:  <20030721160245.M83041@beagle.fokus.fraunhofer.de>
In-Reply-To: <20030721100422.GA45773@technokratis.com>
References:  <20030718185122.N14232@beagle.fokus.fraunhofer.de> <3F198E7E.4040309@fokus.fhg.de> <20030721085426.A48033@beagle.fokus.fraunhofer.de> <20030721153144.Q83041@beagle.fokus.fraunhofer.de> <20030721100422.GA45773@technokratis.com>

next in thread | previous in thread | raw e-mail | index | archive | help
On Mon, 21 Jul 2003, Bosko Milekic wrote:

BM>  Ahhhh.  Given the explanation, the small size of the limits makes a
BM>  lot more sense now.  Previously, the limit probably enforced the
BM>  actual number of cached (pre-allocated) items in the pool.  So, it was
BM>  more than just a "limit," it was a cache size parameter.  That is
BM>  probably why its size was kept relatively small.  In the zone setting,
BM>  the limit can easily be made larger or removed altogether (if there is
BM>  no danger of that structure consuming all of kernel memory).

No, there isn't. VCCs are usually limited by the interface card to a couple
of thousand.

BM>> How do you think about adding a paragraph for uma_zone_set_max to the man
BM>> page?:
BM>>
BM>> An upper limit of items in the zone can be specified with a call to
BM>> uma_zone_set_max. This limits the total number of items which includes:
BM>> allocated items, free items and free items in the per-cpu caches. On
BM>> systems with more than one CPU it may not be possible to allocate the
BM>> specified number of items, because all of the remaining free items may
BM>> be in the caches of the other CPUs when the limit is hit.
BM>
BM>  Given that it has obviously led to confusion, this sort of change to
BM>  the man page would be encouraging.
BM>
BM>  Perhaps you would also ammend to it the purpose of uma_zone_set_max(),
BM>  as it currently stands:
BM>
BM>  "The purpose of uma_zone_set_max() is to limit the maximum
BM>  amount of memory that the system can dedicate toward the zone
BM>  specified by the 'zone' argument." <insert your text from above here>
BM>
BM>  Would you like to commit the change?

Ok, I'll commit it.

Regards,
harti
-- 
harti brandt,
http://www.fokus.fraunhofer.de/research/cc/cats/employees/hartmut.brandt/private
brandt@fokus.fraunhofer.de, harti@freebsd.org



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