Home
last modified time | relevance | path

Searched refs:ccbq (Results 1 – 4 of 4) sorted by relevance

/NextBSD/sys/cam/
HDcam_queue.h94 u_int32_t cam_ccbq_resize(struct cam_ccbq *ccbq, int devices);
96 int cam_ccbq_init(struct cam_ccbq *ccbq, int openings);
98 void cam_ccbq_free(struct cam_ccbq *ccbq);
100 void cam_ccbq_fini(struct cam_ccbq *ccbq);
157 cam_ccbq_pending_ccb_count(struct cam_ccbq *ccbq);
160 cam_ccbq_take_opening(struct cam_ccbq *ccbq);
163 cam_ccbq_insert_ccb(struct cam_ccbq *ccbq, union ccb *new_ccb);
166 cam_ccbq_remove_ccb(struct cam_ccbq *ccbq, union ccb *ccb);
169 cam_ccbq_peek_ccb(struct cam_ccbq *ccbq, int index);
175 cam_ccbq_ccb_done(struct cam_ccbq *ccbq, union ccb *done_ccb);
[all …]
HDcam_queue.c262 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()
[all …]
HDcam_xpt.c320 if ((dev->ccbq.queue.entries > 0) && in xpt_schedule_devq()
321 (dev->ccbq.dev_openings > 0) && in xpt_schedule_devq()
322 (dev->ccbq.queue.qfrozen_cnt == 0)) { in xpt_schedule_devq()
331 CAMQ_GET_PRIO(&dev->ccbq.queue)); in xpt_schedule_devq()
2520 cam_ccbq_insert_ccb(&path->device->ccbq, start_ccb); in xpt_action_default()
2563 struct cam_ccbq *ccbq; in xpt_action_default() local
2567 ccbq = &device->ccbq; in xpt_action_default()
2568 cam_ccbq_remove_ccb(ccbq, abort_ccb); in xpt_action_default()
2677 cgds->dev_openings = dev->ccbq.dev_openings; in xpt_action_default()
2678 cgds->dev_active = dev->ccbq.dev_active; in xpt_action_default()
[all …]
HDcam_xpt_internal.h70 struct cam_ccbq ccbq; /* Queue of pending ccbs */ member