Bosko Milekic wrote: >>1. UMA zones do not show up in the output of 'vmstat -m'. Is there a way >> to get information on how much memory each UMA zone is using? >> Example: "sackhole", "tcptw", ... > > > vmstat -z, or sysctl vm.zone. Be careful when interpreting the stats > in the Mbuf, Mbuf Cluster, and Packet zones, because they are special. > See www.unixdaemons.com/~bmilekic/netbuf_bmilekic.pdf if you want to > know why, exactly. Great, thanks for the pointer. >>2. What does the flag UMA_ZONE_ZINIT do exactly? > > > It initializes zone-allocated objects to zero. This happens as objects > are first allocated (i.e., slabs are allocated) and before placement > into the slab cache. Unfortunately, I am not sure this works very well > unless you also make sure to zero them as they are returned (dtor), > which is a shitty model. Ok, so it is better to use uma_zalloc(zone, M_ZERO)? >>3. What does the flag UMA_ZONE_NOFREE prevent exactly? Will it prevent any >> zone/slab of this type to be free'd ever again? This way the zone can >> only grow and not shrink after transient peaks? > > Yes. It prevents freeing/draining of the slab cache. Usually not what one wants. Most of the time we want to give free slabs back if under memory pressure. >4. What does the flag UMA_ZONE_STATIC do exactly? I was under the impression >> that zones are fixed sized by definition and don't need this to be >> specified additionally. > > It does nothing. Many thanks for your quick answers. Would you mind documenting this in the uma_* manpages? Or someone from doc team? -- AndreReceived on Wed Aug 11 2004 - 13:43:24 UTC
This archive was generated by hypermail 2.4.0 : Wed May 19 2021 - 11:38:05 UTC