Changeset View
Changeset View
Standalone View
Standalone View
sys/sys/blist.h
Context not available. | |||||
*/ | */ | ||||
typedef struct blmeta { | typedef struct blmeta { | ||||
union { | u_daddr_t bm_bitmap; /* bitmap if we are a leaf */ | ||||
daddr_t bmu_avail; /* space available under us */ | |||||
u_daddr_t bmu_bitmap; /* bitmap if we are a leaf */ | |||||
} u; | |||||
daddr_t bm_bighint; /* biggest contiguous block hint*/ | daddr_t bm_bighint; /* biggest contiguous block hint*/ | ||||
} blmeta_t; | } blmeta_t; | ||||
typedef struct blist { | typedef struct blist { | ||||
daddr_t bl_blocks; /* area of coverage */ | daddr_t bl_blocks; /* area of coverage */ | ||||
daddr_t bl_avail; /* # available blocks */ | |||||
u_daddr_t bl_radix; /* coverage radix */ | u_daddr_t bl_radix; /* coverage radix */ | ||||
daddr_t bl_cursor; /* next-fit search starts at */ | daddr_t bl_cursor; /* next-fit search starts at */ | ||||
blmeta_t bl_root[1]; /* root of radix tree */ | blmeta_t bl_root[1]; /* root of radix tree */ | ||||
} *blist_t; | } *blist_t; | ||||
#define BLIST_META_RADIX 16 | |||||
#define BLIST_BMAP_RADIX (sizeof(u_daddr_t)*8) | #define BLIST_BMAP_RADIX (sizeof(u_daddr_t)*8) | ||||
#define BLIST_META_RADIX BLIST_BMAP_RADIX | |||||
#define BLIST_MAX_ALLOC BLIST_BMAP_RADIX | #define BLIST_MAX_ALLOC BLIST_BMAP_RADIX | ||||
Context not available. |