• Home
  • History
  • Annotate
  • Raw
  • Download
  • only in /netgear-R7000-V1.0.7.12_1.2.5/components/opensource/linux/linux-2.6.36/drivers/infiniband/ulp/srp/

Lines Matching refs:scmnd

523 static void srp_unmap_data(struct scsi_cmnd *scmnd,
527 if (!scsi_sglist(scmnd) ||
528 (scmnd->sc_data_direction != DMA_TO_DEVICE &&
529 scmnd->sc_data_direction != DMA_FROM_DEVICE))
537 ib_dma_unmap_sg(target->srp_host->srp_dev->dev, scsi_sglist(scmnd),
538 scsi_sg_count(scmnd), scmnd->sc_data_direction);
543 srp_unmap_data(req->scmnd, target, req);
549 req->scmnd->result = DID_RESET << 16;
550 req->scmnd->scsi_done(req->scmnd);
659 scsi_for_each_sg(req->scmnd, sg, sg_cnt, i) {
688 scsi_for_each_sg(req->scmnd, sg, sg_cnt, i) {
718 static int srp_map_data(struct scsi_cmnd *scmnd, struct srp_target_port *target,
728 if (!scsi_sglist(scmnd) || scmnd->sc_data_direction == DMA_NONE)
731 if (scmnd->sc_data_direction != DMA_FROM_DEVICE &&
732 scmnd->sc_data_direction != DMA_TO_DEVICE) {
735 scmnd->sc_data_direction);
739 nents = scsi_sg_count(scmnd);
740 scat = scsi_sglist(scmnd);
745 count = ib_dma_map_sg(ibdev, scat, nents, scmnd->sc_data_direction);
779 scsi_for_each_sg(scmnd, sg, count, i) {
790 if (scmnd->sc_data_direction == DMA_TO_DEVICE)
805 if (scmnd->sc_data_direction == DMA_TO_DEVICE)
848 struct scsi_cmnd *scmnd;
867 scmnd = req->scmnd;
868 if (!scmnd)
870 "Null scmnd for RSP w/tag %016llx\n",
872 scmnd->result = rsp->status;
875 memcpy(scmnd->sense_buffer, rsp->data +
882 scsi_set_resid(scmnd, be32_to_cpu(rsp->data_out_res_cnt));
884 scsi_set_resid(scmnd, be32_to_cpu(rsp->data_in_res_cnt));
887 scmnd->host_scribble = (void *) -1L;
888 scmnd->scsi_done(scmnd);
1037 static int srp_queuecommand(struct scsi_cmnd *scmnd,
1040 struct srp_target_port *target = host_to_target(scmnd->device->host);
1052 scmnd->result = DID_BAD_TARGET << 16;
1053 done(scmnd);
1067 scmnd->scsi_done = done;
1068 scmnd->result = 0;
1069 scmnd->host_scribble = (void *) (long) req->index;
1075 cmd->lun = cpu_to_be64((u64) scmnd->device->lun << 48);
1077 memcpy(cmd->cdb, scmnd->cmnd, scmnd->cmd_len);
1079 req->scmnd = scmnd;
1084 len = srp_map_data(scmnd, target, req);
1104 srp_unmap_data(scmnd, target, req);
1358 req->scmnd->result = DID_BAD_TARGET << 16;
1372 tsk_mgmt->lun = cpu_to_be64((u64) req->scmnd->device->lun << 48);
1396 struct scsi_cmnd *scmnd,
1399 if (scmnd->host_scribble == (void *) -1L)
1402 *req = &target->req_ring[(long) scmnd->host_scribble];
1407 static int srp_abort(struct scsi_cmnd *scmnd)
1409 struct srp_target_port *target = host_to_target(scmnd->device->host);
1417 if (srp_find_req(target, scmnd, &req))
1426 scmnd->scsi_done(scmnd);
1429 scmnd->result = DID_ABORT << 16;
1438 static int srp_reset_device(struct scsi_cmnd *scmnd)
1440 struct srp_target_port *target = host_to_target(scmnd->device->host);
1447 if (srp_find_req(target, scmnd, &req))
1457 if (req->scmnd->device == scmnd->device)
1465 static int srp_reset_host(struct scsi_cmnd *scmnd)
1467 struct srp_target_port *target = host_to_target(scmnd->device->host);