Lines Matching refs:devq
181 struct cam_devq *devq; in cam_devq_alloc() local
183 devq = (struct cam_devq *)malloc(sizeof(*devq), M_CAMDEVQ, M_NOWAIT); in cam_devq_alloc()
184 if (devq == NULL) { in cam_devq_alloc()
188 if (cam_devq_init(devq, devices, openings) != 0) { in cam_devq_alloc()
189 free(devq, M_CAMDEVQ); in cam_devq_alloc()
192 return (devq); in cam_devq_alloc()
196 cam_devq_init(struct cam_devq *devq, int devices, int openings) in cam_devq_init() argument
199 bzero(devq, sizeof(*devq)); in cam_devq_init()
200 mtx_init(&devq->send_mtx, "CAM queue lock", NULL, MTX_DEF); in cam_devq_init()
201 if (camq_init(&devq->send_queue, devices) != 0) in cam_devq_init()
203 devq->send_openings = openings; in cam_devq_init()
204 devq->send_active = 0; in cam_devq_init()
209 cam_devq_free(struct cam_devq *devq) in cam_devq_free() argument
212 camq_fini(&devq->send_queue); in cam_devq_free()
213 mtx_destroy(&devq->send_mtx); in cam_devq_free()
214 free(devq, M_CAMDEVQ); in cam_devq_free()