1/*- 2 * Copyright (c) 2004, 2005, 3 * Bosko Milekic <bmilekic@FreeBSD.org>. All rights reserved. 4 * Copyright (c) 2002, 2003, 2004, 2005, 5 * Jeffrey Roberson <jeff@FreeBSD.org>. All rights reserved. 6 * 7 * Redistribution and use in source and binary forms, with or without 8 * modification, are permitted provided that the following conditions --- 11 unchanged lines hidden (view full) --- 20 * IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, 21 * INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT 22 * NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, 23 * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY 24 * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT 25 * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF 26 * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 27 * |
28 * $FreeBSD: head/sys/vm/uma.h 148072 2005-07-16 02:23:41Z silby $ |
29 * 30 */ 31 32/* 33 * uma.h - External definitions for the Universal Memory Allocator 34 * 35*/ 36 --- 123 unchanged lines hidden (view full) --- 160 * flags A set of parameters that control the behavior of the zone 161 * 162 * Returns: 163 * A pointer to a structure which is intended to be opaque to users of 164 * the interface. The value may be null if the wait flag is not set. 165 */ 166uma_zone_t uma_zcreate(char *name, size_t size, uma_ctor ctor, uma_dtor dtor, 167 uma_init uminit, uma_fini fini, int align, |
168 u_int32_t flags); |
169 170/* 171 * Create a secondary uma zone 172 * 173 * Arguments: 174 * name The text name of the zone for debugging and stats, this memory 175 * should not be freed until the zone has been deallocated. 176 * ctor The constructor that is called when the object is allocated --- 24 unchanged lines hidden (view full) --- 201 */ 202uma_zone_t uma_zsecond_create(char *name, uma_ctor ctor, uma_dtor dtor, 203 uma_init zinit, uma_fini zfini, uma_zone_t master); 204 205/* 206 * Definitions for uma_zcreate flags 207 * 208 * These flags share space with UMA_ZFLAGs in uma_int.h. Be careful not to |
209 * overlap when adding new features. 0xf0000000 is in use by uma_int.h. |
210 */ 211#define UMA_ZONE_PAGEABLE 0x0001 /* Return items not fully backed by 212 physical memory XXX Not yet */ 213#define UMA_ZONE_ZINIT 0x0002 /* Initialize with zeros */ 214#define UMA_ZONE_STATIC 0x0004 /* Staticly sized zone */ 215#define UMA_ZONE_OFFPAGE 0x0008 /* Force the slab structure allocation 216 off of the real memory */ 217#define UMA_ZONE_MALLOC 0x0010 /* For use by malloc(9) only! */ --- 343 unchanged lines hidden --- |