Lines Matching refs:wq
16 struct hw_wq *wq = NULL;
65 wq = efct_hw_new_wq(cq, hw->num_qentries[SLI4_QTYPE_WQ]);
66 if (!wq) {
278 struct hw_wq *wq = kzalloc(sizeof(*wq), GFP_KERNEL);
280 if (!wq)
283 wq->hw = cq->eq->hw;
284 wq->cq = cq;
285 wq->type = SLI4_QTYPE_WQ;
286 wq->instance = cq->eq->hw->wq_count++;
287 wq->entry_count = entry_count;
288 wq->queue = &hw->wq[wq->instance];
289 wq->wqec_set_count = EFCT_HW_WQEC_SET_COUNT;
290 wq->wqec_count = wq->wqec_set_count;
291 wq->free_count = wq->entry_count - 1;
292 INIT_LIST_HEAD(&wq->pending_list);
294 if (sli_queue_alloc(&hw->sli, SLI4_QTYPE_WQ, wq->queue,
295 wq->entry_count, cq->queue)) {
297 kfree(wq);
301 hw->hw_wq[wq->instance] = wq;
302 INIT_LIST_HEAD(&wq->list_entry);
303 list_add_tail(&wq->list_entry, &cq->q_list);
304 efc_log_debug(hw->os, "create wq[%2d] id %3d len %4d cls %d\n",
305 wq->instance, wq->queue->id, wq->entry_count, wq->class);
306 return wq;
444 efct_hw_del_wq(struct hw_wq *wq)
446 if (!wq)
449 list_del(&wq->list_entry);
450 wq->cq->eq->hw->hw_wq[wq->instance] = NULL;
451 kfree(wq);