Changeset View
Changeset View
Standalone View
Standalone View
share/man/man9/zone.9
Show First 20 Lines • Show All 334 Lines • ▼ Show 20 Lines | |||||
.Dv UMA_XDOMAIN | .Dv UMA_XDOMAIN | ||||
kernel option, when configured, causes UMA to do the extra tracking to ensure | kernel option, when configured, causes UMA to do the extra tracking to ensure | ||||
that allocations from first-touch zones are always local. | that allocations from first-touch zones are always local. | ||||
Otherwise, consumers that do not free memory on the same domain from which it | Otherwise, consumers that do not free memory on the same domain from which it | ||||
was allocated will cause mixing in per-CPU caches. | was allocated will cause mixing in per-CPU caches. | ||||
See | See | ||||
.Xr numa 4 | .Xr numa 4 | ||||
for more details. | for more details. | ||||
.It Dv UMA_ZONE_CONTIG | |||||
Items in this zone must be contiguous in physical address space. | |||||
markj: Per mandoc style, sentences should start on new lines. | |||||
Items will follow normal alignment constraints and may span page boundaries | |||||
Done Inline Actionsdrop ", but only" jeff: drop ", but only"
| |||||
Not Done Inline ActionsI would suggest: "The physical memory underlying each item in this zone must be contiguous. In particular, if an item spans a page boundary, then the underlying physical pages must be contiguous." alc: I would suggest: "The physical memory underlying each item in this zone must be contiguous. In… | |||||
between pages with contiguous physical addresses. | |||||
.El | .El | ||||
.Pp | .Pp | ||||
Zones can be destroyed using | Zones can be destroyed using | ||||
.Fn uma_zdestroy , | .Fn uma_zdestroy , | ||||
freeing all memory that is cached in the zone. | freeing all memory that is cached in the zone. | ||||
All items allocated from the zone must be freed to the zone before the zone | All items allocated from the zone must be freed to the zone before the zone | ||||
may be safely destroyed. | may be safely destroyed. | ||||
.Pp | .Pp | ||||
▲ Show 20 Lines • Show All 109 Lines • ▼ Show 20 Lines | |||||
.El | .El | ||||
.Pp | .Pp | ||||
The | The | ||||
.Fn uma_zone_set_allocf | .Fn uma_zone_set_allocf | ||||
and | and | ||||
.Fn uma_zone_set_freef | .Fn uma_zone_set_freef | ||||
functions allow a zone's default slab allocation and free functions to be | functions allow a zone's default slab allocation and free functions to be | ||||
overridden. | overridden. | ||||
This is useful if the zone's items have special memory allocation constraints. | This is useful if memory with special constraints such as attributes, | ||||
For example, if multi-page objects are required to be physically contiguous, | alignment, or address ranges must be used. | ||||
Not Done Inline Actionss/yields/allocates memory is used redundantly. I would say 'if memory with special constraints such as attributes, alignment, or address ranges must be used..." jeff: s/yields/allocates
memory is used redundantly. I would say 'if memory with special… | |||||
Done Inline ActionsOkay, and then drop the VM_MEMATTR_DEFAULT example? rlibby: Okay, and then drop the VM_MEMATTR_DEFAULT example? | |||||
Not Done Inline Actionsright. jeff: right. | |||||
an | |||||
.Fa allocf | |||||
function which requests contiguous memory from the kernel's page allocator | |||||
may be used. | |||||
.Pp | .Pp | ||||
The | The | ||||
.Fn uma_zone_set_max | .Fn uma_zone_set_max | ||||
function limits the number of items | function limits the number of items | ||||
.Pq and therefore memory | .Pq and therefore memory | ||||
that can be allocated to | that can be allocated to | ||||
.Fa zone . | .Fa zone . | ||||
The | The | ||||
▲ Show 20 Lines • Show All 117 Lines • Show Last 20 Lines |
Per mandoc style, sentences should start on new lines.