Lines Matching refs:queue

90 camq_free(struct camq *queue)  in camq_free()  argument
92 if (queue != NULL) { in camq_free()
93 camq_fini(queue); in camq_free()
94 kfree(queue, M_CAMQ); in camq_free()
99 camq_fini(struct camq *queue) in camq_fini() argument
101 if (queue->queue_array != NULL) { in camq_fini()
106 queue->queue_array++; in camq_fini()
107 kfree(queue->queue_array, M_CAMQ); in camq_fini()
112 camq_resize(struct camq *queue, int new_size) in camq_resize() argument
117 if (new_size < queue->entries) in camq_resize()
129 if (queue->queue_array != NULL) { in camq_resize()
130 queue->queue_array++; in camq_resize()
131 bcopy(queue->queue_array, new_array, in camq_resize()
132 queue->entries * sizeof(cam_pinfo *)); in camq_resize()
133 kfree(queue->queue_array, M_CAMQ); in camq_resize()
135 queue->queue_array = new_array-1; in camq_resize()
136 queue->array_size = new_size; in camq_resize()
146 camq_insert(struct camq *queue, cam_pinfo *new_entry) in camq_insert() argument
149 if (queue->entries >= queue->array_size) in camq_insert()
152 queue->entries++; in camq_insert()
153 queue->queue_array[queue->entries] = new_entry; in camq_insert()
154 new_entry->index = queue->entries; in camq_insert()
155 if (queue->entries != 0) in camq_insert()
156 heap_up(queue->queue_array, queue->entries); in camq_insert()
170 camq_remove(struct camq *queue, int index) in camq_remove() argument
174 if (index == 0 || index > queue->entries) in camq_remove()
176 removed_entry = queue->queue_array[index]; in camq_remove()
177 if (queue->entries != index) { in camq_remove()
178 queue->queue_array[index] = queue->queue_array[queue->entries]; in camq_remove()
179 queue->queue_array[index]->index = index; in camq_remove()
180 heap_down(queue->queue_array, index, queue->entries - 1); in camq_remove()
182 queue->queue_array[queue->entries] = NULL; in camq_remove()
184 queue->entries--; in camq_remove()
195 camq_change_priority(struct camq *queue, int index, u_int32_t new_priority) in camq_change_priority() argument
197 if (new_priority > queue->queue_array[index]->priority) { in camq_change_priority()
198 queue->queue_array[index]->priority = new_priority; in camq_change_priority()
199 heap_down(queue->queue_array, index, queue->entries); in camq_change_priority()
202 queue->queue_array[index]->priority = new_priority; in camq_change_priority()
203 heap_up(queue->queue_array, index); in camq_change_priority()
286 camq_fini(&ccbq->queue); in cam_ccbq_free()
299 - ccbq->queue.entries in cam_ccbq_resize()
313 || camq_resize(&ccbq->queue, new_size) == CAM_REQ_CMP) { in cam_ccbq_resize()
326 camq_init(&ccbq->queue, openings); in cam_ccbq_init()