1/* 2 * Copyright (c) 2002, Jeffrey Roberson <jroberson@chesapeake.net> 3 * All rights reserved. 4 * 5 * Redistribution and use in source and binary forms, with or without 6 * modification, are permitted provided that the following conditions 7 * are met: 8 * 1. Redistributions of source code must retain the above copyright --- 9 unchanged lines hidden (view full) --- 18 * IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, 19 * INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT 20 * NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, 21 * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY 22 * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT 23 * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF 24 * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 25 * |
26 * $FreeBSD: head/sys/vm/uma.h 94157 2002-04-07 22:56:48Z jeff $ |
27 * 28 */ 29 30/* 31 * uma.h - External definitions for the Universal Memory Allocator 32 * 33 * Jeff Roberson <jroberson@chesapeake.net> 34*/ --- 368 unchanged lines hidden (view full) --- 403 404/* 405 * These flags are setable in the allocf and visable in the freef. 406 */ 407#define UMA_SLAB_BOOT 0x01 /* Slab alloced from boot pages */ 408#define UMA_SLAB_KMEM 0x02 /* Slab alloced from kmem_map */ 409#define UMA_SLAB_KMAP 0x04 /* Slab alloced from kernel_map */ 410#define UMA_SLAB_PRIV 0x08 /* Slab alloced from priv allocator */ |
411#define UMA_SLAB_OFFP 0x10 /* Slab is managed separately */ |
412#define UMA_SLAB_MALLOC 0x20 /* Slab is a large malloc slab */ 413/* 0x40 and 0x80 are available */ 414 415/* 416 * Used to pre-fill a zone with some number of items 417 * 418 * Arguments: 419 * zone The zone to fill 420 * itemcnt The number of items to reserve 421 * 422 * Returns: 423 * Nothing 424 * 425 * NOTE: This is blocking and should only be done at startup 426 */ 427void uma_prealloc(uma_zone_t zone, int itemcnt); 428 429 430#endif |