Lines Matching refs:tx_desc
154 struct iser_tx_desc *tx_desc)
159 tx_desc->dma_addr, ISER_HEADERS_LEN, DMA_TO_DEVICE);
161 memset(&tx_desc->iser_header, 0, sizeof(struct iser_hdr));
162 tx_desc->iser_header.flags = ISER_VER;
164 tx_desc->num_sge = 1;
166 if (tx_desc->tx_sg[0].lkey != device->mr->lkey) {
167 tx_desc->tx_sg[0].lkey = device->mr->lkey;
168 iser_dbg("sdesc %p lkey mismatch, fixing\n", tx_desc);
276 struct iser_tx_desc *tx_desc = &iser_task->desc;
281 tx_desc->type = ISCSI_TX_SCSI_COMMAND;
282 iser_create_send_desc(iser_conn->ib_conn, tx_desc);
313 err = iser_post_send(iser_conn->ib_conn, tx_desc);
331 struct iser_tx_desc *tx_desc = NULL;
346 tx_desc = kmem_cache_zalloc(ig.desc_cache, GFP_ATOMIC);
347 if (tx_desc == NULL) {
352 tx_desc->type = ISCSI_TX_DATAOUT;
353 tx_desc->iser_header.flags = ISER_VER;
354 memcpy(&tx_desc->iscsi_header, hdr, sizeof(struct iscsi_hdr));
357 iser_initialize_task_headers(task, tx_desc);
360 tx_dsg = &tx_desc->tx_sg[1];
364 tx_desc->num_sge = 2;
378 err = iser_post_send(iser_conn->ib_conn, tx_desc);
383 kmem_cache_free(ig.desc_cache, tx_desc);
489 void iser_snd_completion(struct iser_tx_desc *tx_desc,
495 if (tx_desc->type == ISCSI_TX_DATAOUT) {
496 ib_dma_unmap_single(device->ib_device, tx_desc->dma_addr,
498 kmem_cache_free(ig.desc_cache, tx_desc);
503 if (tx_desc->type == ISCSI_TX_CONTROL) {
505 task = (void *) ((long)(void *)tx_desc -