Lines Matching refs:g

45 group_create(group_t *g)  in group_create()  argument
47 bzero(g, sizeof (group_t)); in group_create()
55 group_destroy(group_t *g) in group_destroy() argument
57 ASSERT(g->grp_size == 0); in group_destroy()
59 if (g->grp_capacity > 0) { in group_destroy()
60 kmem_free(g->grp_set, g->grp_capacity * sizeof (void *)); in group_destroy()
61 g->grp_capacity = 0; in group_destroy()
63 g->grp_set = NULL; in group_destroy()
71 group_empty(group_t *g) in group_empty() argument
74 int sz = g->grp_size; in group_empty()
76 g->grp_size = 0; in group_empty()
78 g->grp_set[i] = NULL; in group_empty()
88 group_add(group_t *g, void *e, int gflag) in group_add() argument
93 g->grp_size == g->grp_capacity) in group_add()
96 ASSERT(g->grp_size != g->grp_capacity || (gflag & GRP_RESIZE)); in group_add()
98 entry = g->grp_size++; in group_add()
99 if (g->grp_size > g->grp_capacity) in group_add()
100 group_grow_set(g); in group_add()
102 ASSERT(g->grp_set[entry] == NULL); in group_add()
103 g->grp_set[entry] = e; in group_add()
114 group_remove(group_t *g, void *e, int gflag) in group_remove() argument
118 if (g->grp_size == 0) in group_remove()
124 for (i = 0; i < g->grp_size; i++) in group_remove()
125 if (g->grp_set[i] == e) in group_remove()
127 if (g->grp_set[i] != e) in group_remove()
130 g->grp_set[i] = NULL; in group_remove()
131 group_pack_set(g->grp_set, g->grp_size); in group_remove()
132 g->grp_size--; in group_remove()
135 g->grp_size > GRP_SET_SIZE_DEFAULT && ISP2(g->grp_size)) in group_remove()
136 group_shrink_set(g); in group_remove()
146 group_expand(group_t *g, uint_t n) in group_expand() argument
148 while (g->grp_capacity < n) in group_expand()
149 group_grow_set(g); in group_expand()
156 group_grow_set(group_t *g) in group_grow_set() argument
161 cap_old = g->grp_capacity; in group_grow_set()
162 set_old = g->grp_set; in group_grow_set()
173 g->grp_set = kmem_zalloc(cap_new * sizeof (void *), KM_SLEEP); in group_grow_set()
174 g->grp_capacity = cap_new; in group_grow_set()
182 g->grp_set = set_new; in group_grow_set()
183 g->grp_capacity = cap_new; in group_grow_set()
196 group_shrink_set(group_t *g) in group_shrink_set() argument
201 cap_old = g->grp_capacity; in group_shrink_set()
202 set_old = g->grp_set; in group_shrink_set()
219 g->grp_capacity = cap_new; in group_shrink_set()
220 g->grp_set = set_new; in group_shrink_set()
282 group_iterate(group_t *g, group_iter_t *iter) in group_iterate() argument
287 while (idx < g->grp_size) { in group_iterate()
288 data = g->grp_set[idx++]; in group_iterate()
301 group_access_at(group_t *g, uint_t idx) in group_access_at() argument
303 if (idx >= g->grp_capacity) in group_access_at()
306 return (g->grp_set[idx]); in group_access_at()
318 group_add_at(group_t *g, void *e, uint_t idx) in group_add_at() argument
320 if (idx >= g->grp_capacity) in group_add_at()
323 if (idx >= g->grp_size) in group_add_at()
324 g->grp_size = idx + 1; in group_add_at()
326 ASSERT(g->grp_set[idx] == NULL); in group_add_at()
327 g->grp_set[idx] = e; in group_add_at()
335 group_remove_at(group_t *g, uint_t idx) in group_remove_at() argument
337 ASSERT(idx < g->grp_capacity); in group_remove_at()
338 g->grp_set[idx] = NULL; in group_remove_at()
346 group_find(group_t *g, void *e) in group_find() argument
350 for (idx = 0; idx < g->grp_capacity; idx++) { in group_find()
351 if (g->grp_set[idx] == e) in group_find()