Lines Matching refs:ctx_buf
70 static void lpfc_nvmet_process_rcv_fcp_req(struct lpfc_nvmet_ctxbuf *ctx_buf);
385 lpfc_nvmet_ctxbuf_post(struct lpfc_hba *phba, struct lpfc_nvmet_ctxbuf *ctx_buf)
388 struct lpfc_async_xchg_ctx *ctxp = ctx_buf->context;
440 ctxp = (struct lpfc_async_xchg_ctx *)ctx_buf->context;
450 ctxp->ctxbuf = ctx_buf;
475 if (!queue_work(phba->wq, &ctx_buf->defer_work)) {
505 list_add_tail(&ctx_buf->list, &infop->nvmet_ctx_list);
1429 struct lpfc_nvmet_ctxbuf *ctx_buf, *next_ctx_buf;
1433 list_for_each_entry_safe(ctx_buf, next_ctx_buf,
1436 list_del_init(&ctx_buf->list);
1439 __lpfc_clear_active_sglq(phba, ctx_buf->sglq->sli4_lxritag);
1440 ctx_buf->sglq->state = SGL_FREED;
1441 ctx_buf->sglq->ndlp = NULL;
1444 list_add_tail(&ctx_buf->sglq->list,
1448 lpfc_sli_release_iocbq(phba, ctx_buf->iocbq);
1449 kfree(ctx_buf->context);
1479 struct lpfc_nvmet_ctxbuf *ctx_buf;
1550 ctx_buf = kzalloc(sizeof(*ctx_buf), GFP_KERNEL);
1551 if (!ctx_buf) {
1557 ctx_buf->context = kzalloc(sizeof(*ctx_buf->context),
1559 if (!ctx_buf->context) {
1560 kfree(ctx_buf);
1566 ctx_buf->context->ctxbuf = ctx_buf;
1567 ctx_buf->context->state = LPFC_NVME_STE_FREE;
1569 ctx_buf->iocbq = lpfc_sli_get_iocbq(phba);
1570 if (!ctx_buf->iocbq) {
1571 kfree(ctx_buf->context);
1572 kfree(ctx_buf);
1577 ctx_buf->iocbq->iocb_flag = LPFC_IO_NVMET;
1578 nvmewqe = ctx_buf->iocbq;
1584 ctx_buf->iocbq->context1 = NULL;
1586 ctx_buf->sglq = __lpfc_sli_get_nvmet_sglq(phba, ctx_buf->iocbq);
1588 if (!ctx_buf->sglq) {
1589 lpfc_sli_release_iocbq(phba, ctx_buf->iocbq);
1590 kfree(ctx_buf->context);
1591 kfree(ctx_buf);
1596 INIT_WORK(&ctx_buf->defer_work, lpfc_nvmet_fcp_rqst_defer_work);
1605 list_add_tail(&ctx_buf->list, &infop->nvmet_ctx_list);
2176 lpfc_nvmet_process_rcv_fcp_req(struct lpfc_nvmet_ctxbuf *ctx_buf)
2179 struct lpfc_async_xchg_ctx *ctxp = ctx_buf->context;
2284 struct lpfc_nvmet_ctxbuf *ctx_buf =
2287 lpfc_nvmet_process_rcv_fcp_req(ctx_buf);
2296 struct lpfc_nvmet_ctxbuf *ctx_buf = NULL;
2333 ctx_buf, struct lpfc_nvmet_ctxbuf,
2335 return ctx_buf;
2373 struct lpfc_nvmet_ctxbuf *ctx_buf;
2382 ctx_buf = NULL;
2403 ctx_buf, struct lpfc_nvmet_ctxbuf, list);
2406 ctx_buf = lpfc_nvmet_replenish_context(phba, current_infop);
2430 if (!ctx_buf) {
2452 ctxp = (struct lpfc_async_xchg_ctx *)ctx_buf->context;
2471 ctxp->ctxbuf = ctx_buf;
2493 lpfc_nvmet_process_rcv_fcp_req(ctx_buf);
2497 if (!queue_work(phba->wq, &ctx_buf->defer_work)) {