uma.h (148078) | uma.h (148371) |
---|---|
1/*- 2 * Copyright (c) 2002, 2003, 2004, 2005 Jeffrey Roberson <jeff@FreeBSD.org> 3 * Copyright (c) 2004, 2005 Bosko Milekic <bmilekic@FreeBSD.org> 4 * All rights reserved. 5 * 6 * Redistribution and use in source and binary forms, with or without 7 * modification, are permitted provided that the following conditions 8 * are met: --- 10 unchanged lines hidden (view full) --- 19 * IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, 20 * INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT 21 * NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, 22 * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY 23 * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT 24 * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF 25 * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 26 * | 1/*- 2 * Copyright (c) 2002, 2003, 2004, 2005 Jeffrey Roberson <jeff@FreeBSD.org> 3 * Copyright (c) 2004, 2005 Bosko Milekic <bmilekic@FreeBSD.org> 4 * All rights reserved. 5 * 6 * Redistribution and use in source and binary forms, with or without 7 * modification, are permitted provided that the following conditions 8 * are met: --- 10 unchanged lines hidden (view full) --- 19 * IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, 20 * INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT 21 * NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, 22 * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY 23 * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT 24 * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF 25 * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 26 * |
27 * $FreeBSD: head/sys/vm/uma.h 148078 2005-07-16 09:51:52Z rwatson $ | 27 * $FreeBSD: head/sys/vm/uma.h 148371 2005-07-25 00:47:32Z rwatson $ |
28 * 29 */ 30 31/* 32 * uma.h - External definitions for the Universal Memory Allocator 33 * 34*/ 35 --- 481 unchanged lines hidden (view full) --- 517#define UMA_STREAM_VERSION 0x00000001 518struct uma_stream_header { 519 u_int32_t ush_version; /* Stream format version. */ 520 u_int32_t ush_maxcpus; /* Value of MAXCPU for stream. */ 521 u_int32_t ush_count; /* Number of records. */ 522 u_int32_t _ush_pad; /* Pad/reserved field. */ 523}; 524 | 28 * 29 */ 30 31/* 32 * uma.h - External definitions for the Universal Memory Allocator 33 * 34*/ 35 --- 481 unchanged lines hidden (view full) --- 517#define UMA_STREAM_VERSION 0x00000001 518struct uma_stream_header { 519 u_int32_t ush_version; /* Stream format version. */ 520 u_int32_t ush_maxcpus; /* Value of MAXCPU for stream. */ 521 u_int32_t ush_count; /* Number of records. */ 522 u_int32_t _ush_pad; /* Pad/reserved field. */ 523}; 524 |
525#define UMA_MAX_NAME 32 | 525#define UTH_MAX_NAME 32 526#define UTH_ZONE_SECONDARY 0x00000001 |
526struct uma_type_header { 527 /* 528 * Static per-zone data, some extracted from the supporting keg. 529 */ | 527struct uma_type_header { 528 /* 529 * Static per-zone data, some extracted from the supporting keg. 530 */ |
530 char uth_name[UMA_MAX_NAME]; | 531 char uth_name[UTH_MAX_NAME]; |
531 u_int32_t uth_align; /* Keg: alignment. */ 532 u_int32_t uth_size; /* Keg: requested size of item. */ 533 u_int32_t uth_rsize; /* Keg: real size of item. */ 534 u_int32_t uth_maxpages; /* Keg: maximum number of pages. */ 535 u_int32_t uth_limit; /* Keg: max items to allocate. */ 536 537 /* 538 * Current dynamic zone/keg-derived statistics. 539 */ 540 u_int32_t uth_pages; /* Keg: pages allocated. */ 541 u_int32_t uth_keg_free; /* Keg: items free. */ 542 u_int32_t uth_zone_free; /* Zone: items free. */ 543 u_int32_t uth_bucketsize; /* Zone: desired bucket size. */ | 532 u_int32_t uth_align; /* Keg: alignment. */ 533 u_int32_t uth_size; /* Keg: requested size of item. */ 534 u_int32_t uth_rsize; /* Keg: real size of item. */ 535 u_int32_t uth_maxpages; /* Keg: maximum number of pages. */ 536 u_int32_t uth_limit; /* Keg: max items to allocate. */ 537 538 /* 539 * Current dynamic zone/keg-derived statistics. 540 */ 541 u_int32_t uth_pages; /* Keg: pages allocated. */ 542 u_int32_t uth_keg_free; /* Keg: items free. */ 543 u_int32_t uth_zone_free; /* Zone: items free. */ 544 u_int32_t uth_bucketsize; /* Zone: desired bucket size. */ |
544 u_int32_t _uth_reserved0; /* Reserved. */ | 545 u_int32_t uth_zone_flags; /* Zone: flags. */ |
545 u_int64_t uth_allocs; /* Zone: number of allocations. */ 546 u_int64_t uth_frees; /* Zone: number of frees. */ 547 u_int64_t uth_fails; /* Zone: number of alloc failures. */ 548 u_int64_t _uth_reserved1[3]; /* Reserved. */ | 546 u_int64_t uth_allocs; /* Zone: number of allocations. */ 547 u_int64_t uth_frees; /* Zone: number of frees. */ 548 u_int64_t uth_fails; /* Zone: number of alloc failures. */ 549 u_int64_t _uth_reserved1[3]; /* Reserved. */ |
549 | |
550}; 551 552struct uma_percpu_stat { 553 u_int64_t ups_allocs; /* Cache: number of alloctions. */ 554 u_int64_t ups_frees; /* Cache: number of frees. */ 555 u_int64_t ups_cache_free; /* Cache: free items in cache. */ 556 u_int64_t _ups_reserved[5]; /* Reserved. */ 557}; 558 559#endif | 550}; 551 552struct uma_percpu_stat { 553 u_int64_t ups_allocs; /* Cache: number of alloctions. */ 554 u_int64_t ups_frees; /* Cache: number of frees. */ 555 u_int64_t ups_cache_free; /* Cache: free items in cache. */ 556 u_int64_t _ups_reserved[5]; /* Reserved. */ 557}; 558 559#endif |