Lines Matching refs:ccbq
262 struct cam_ccbq *ccbq; in cam_ccbq_alloc() local
264 ccbq = (struct cam_ccbq *)malloc(sizeof(*ccbq), M_CAMCCBQ, M_NOWAIT); in cam_ccbq_alloc()
265 if (ccbq == NULL) { in cam_ccbq_alloc()
269 if (cam_ccbq_init(ccbq, openings) != 0) { in cam_ccbq_alloc()
270 free(ccbq, M_CAMCCBQ); in cam_ccbq_alloc()
274 return (ccbq); in cam_ccbq_alloc()
278 cam_ccbq_free(struct cam_ccbq *ccbq) in cam_ccbq_free() argument
280 if (ccbq) { in cam_ccbq_free()
281 cam_ccbq_fini(ccbq); in cam_ccbq_free()
282 free(ccbq, M_CAMCCBQ); in cam_ccbq_free()
287 cam_ccbq_resize(struct cam_ccbq *ccbq, int new_size) in cam_ccbq_resize() argument
291 delta = new_size - (ccbq->dev_active + ccbq->dev_openings); in cam_ccbq_resize()
292 ccbq->total_openings += delta; in cam_ccbq_resize()
293 ccbq->dev_openings += delta; in cam_ccbq_resize()
296 if (new_size > ccbq->queue.array_size) in cam_ccbq_resize()
297 return (camq_resize(&ccbq->queue, new_size)); in cam_ccbq_resize()
303 cam_ccbq_init(struct cam_ccbq *ccbq, int openings) in cam_ccbq_init() argument
305 bzero(ccbq, sizeof(*ccbq)); in cam_ccbq_init()
306 if (camq_init(&ccbq->queue, in cam_ccbq_init()
309 ccbq->total_openings = openings; in cam_ccbq_init()
310 ccbq->dev_openings = openings; in cam_ccbq_init()
315 cam_ccbq_fini(struct cam_ccbq *ccbq) in cam_ccbq_fini() argument
318 camq_fini(&ccbq->queue); in cam_ccbq_fini()