svn commit: r248588 - head/share/man/man9

Gleb Smirnoff glebius at FreeBSD.org
Thu Mar 21 16:19:46 UTC 2013


Author: glebius
Date: Thu Mar 21 16:19:46 2013
New Revision: 248588
URL: http://svnweb.freebsd.org/changeset/base/248588

Log:
  Document some flags to the uma_zcreate(). Not all flags are documented,
  only those that at least are used in the kernel, or that definitely
  work.

Modified:
  head/share/man/man9/zone.9

Modified: head/share/man/man9/zone.9
==============================================================================
--- head/share/man/man9/zone.9	Thu Mar 21 16:15:34 2013	(r248587)
+++ head/share/man/man9/zone.9	Thu Mar 21 16:19:46 2013	(r248588)
@@ -139,6 +139,60 @@ and
 .Fn uma_zfree
 but rather in a batch mode on several objects.
 .Pp
+The
+.Fa flags
+argument of the
+.Fn uma_zcreate
+is a subset of the following flags:
+.Bl -tag -width "foo"
+.It Dv UMA_ZONE_NOFREE
+Slabs of the zone are never returned back to VM.
+.It Dv UMA_ZONE_REFCNT
+Each item in the zone would have internal reference counter associated with it.
+See
+.Fn uma_find_refcnt .
+.It Dv UMA_ZONE_NODUMP
+Pages belonging to the zone will not be included into mini-dumps.
+.It Dv UMA_ZONE_OFFPAGE
+By default book-keeping of items within a slab is done in the slab page itself.
+This flag explicitly tells subsystem that book-keeping structure should be
+allocated separately from special internal zone.
+This flag requires either
+.Dv UMA_ZONE_VTOSLAB
+or
+.Dv UMA_ZONE_HASH ,
+since subsystem requires a mechanism to find a book-keeping structure
+to an item beeing freed.
+The subsystem may choose to prefer offpage book-keeping for certain zones
+implicitly.
+.It Dv UMA_ZONE_ZINIT
+The zone will have its
+.Ft uma_init
+method set to internal method that initializes a new allocated slab
+to all zeros.
+Don't mistake
+.Ft uma_init
+method with
+.Ft uma_ctor .
+A zone with
+.Dv UMA_ZONE_ZINIT
+flag would not return zeroed memory on every
+.Fn uma_zalloc .
+.It Dv UMA_ZONE_HASH
+The zone should use an internal hash table to find slab book-keeping
+structure where an allocation being freed belongs to.
+.It Dv UMA_ZONE_VTOSLAB
+The zone should use special field of
+.Vt vm_page_t
+to find slab book-keeping structure where an allocation being freed belongs to.
+.It Dv UMA_ZONE_MALLOC
+The zone is for the
+.Xr malloc 9
+subsystem.
+.It Dv UMA_ZONE_VM
+The zone is for the VM subsystem.
+.El
+.Pp
 To allocate an item from a zone, simply call
 .Fn uma_zalloc
 with a pointer to that zone


More information about the svn-src-all mailing list