search for: scsi_bufflen

Displaying 20 results from an estimated 20 matches for "scsi_bufflen".

2010 Aug 05
1
[PATCH 2/5] staging: hv: Fixed lockup problem with bounce_buffer scatter list
...unsigned int sg_count = 0; DPRINT_DBG(STORVSC_DRV, "scmnd %p dir %d, use_sg %d buf %p len %d " "queue depth %d tagged %d", scmnd, scmnd->sc_data_direction, @@ -697,6 +698,7 @@ static int storvsc_queuecommand(struct scsi_cmnd *scmnd, request->DataBuffer.Length = scsi_bufflen(scmnd); if (scsi_sg_count(scmnd)) { sgl = (struct scatterlist *)scsi_sglist(scmnd); + sg_count = scsi_sg_count(scmnd); /* check if we need to bounce the sgl */ if (do_bounce_buffer(sgl, scsi_sg_count(scmnd)) != -1) { @@ -731,15 +733,16 @@ static int storvsc_queuecommand(struct scsi_cm...
2010 Aug 05
1
[PATCH 2/5] staging: hv: Fixed lockup problem with bounce_buffer scatter list
...unsigned int sg_count = 0; DPRINT_DBG(STORVSC_DRV, "scmnd %p dir %d, use_sg %d buf %p len %d " "queue depth %d tagged %d", scmnd, scmnd->sc_data_direction, @@ -697,6 +698,7 @@ static int storvsc_queuecommand(struct scsi_cmnd *scmnd, request->DataBuffer.Length = scsi_bufflen(scmnd); if (scsi_sg_count(scmnd)) { sgl = (struct scatterlist *)scsi_sglist(scmnd); + sg_count = scsi_sg_count(scmnd); /* check if we need to bounce the sgl */ if (do_bounce_buffer(sgl, scsi_sg_count(scmnd)) != -1) { @@ -731,15 +733,16 @@ static int storvsc_queuecommand(struct scsi_cm...
2010 Aug 03
1
[PATCH 2/6] staging: hv: Fixed lockup problem with bounce_buffer scatter list
...unsigned int sg_count = 0; DPRINT_DBG(STORVSC_DRV, "scmnd %p dir %d, use_sg %d buf %p len %d " "queue depth %d tagged %d", scmnd, scmnd->sc_data_direction, @@ -697,6 +698,7 @@ static int storvsc_queuecommand(struct scsi_cmnd *scmnd, request->DataBuffer.Length = scsi_bufflen(scmnd); if (scsi_sg_count(scmnd)) { sgl = (struct scatterlist *)scsi_sglist(scmnd); + sg_count = scsi_sg_count(scmnd); /* check if we need to bounce the sgl */ if (do_bounce_buffer(sgl, scsi_sg_count(scmnd)) != -1) { @@ -731,15 +733,16 @@ static int storvsc_queuecommand(struct scsi_cm...
2010 Aug 03
1
[PATCH 2/6] staging: hv: Fixed lockup problem with bounce_buffer scatter list
...unsigned int sg_count = 0; DPRINT_DBG(STORVSC_DRV, "scmnd %p dir %d, use_sg %d buf %p len %d " "queue depth %d tagged %d", scmnd, scmnd->sc_data_direction, @@ -697,6 +698,7 @@ static int storvsc_queuecommand(struct scsi_cmnd *scmnd, request->DataBuffer.Length = scsi_bufflen(scmnd); if (scsi_sg_count(scmnd)) { sgl = (struct scatterlist *)scsi_sglist(scmnd); + sg_count = scsi_sg_count(scmnd); /* check if we need to bounce the sgl */ if (do_bounce_buffer(sgl, scsi_sg_count(scmnd)) != -1) { @@ -731,15 +733,16 @@ static int storvsc_queuecommand(struct scsi_cm...
2010 Aug 31
2
[PATCH 2/5] staging: hv: Fixed lockup problem with bounce_buffer scatter list - RESEND
...unsigned int sg_count = 0; DPRINT_DBG(STORVSC_DRV, "scmnd %p dir %d, use_sg %d buf %p len %d " "queue depth %d tagged %d", scmnd, scmnd->sc_data_direction, @@ -697,6 +698,7 @@ static int storvsc_queuecommand(struct scsi_cmnd *scmnd, request->DataBuffer.Length = scsi_bufflen(scmnd); if (scsi_sg_count(scmnd)) { sgl = (struct scatterlist *)scsi_sglist(scmnd); + sg_count = scsi_sg_count(scmnd); /* check if we need to bounce the sgl */ if (do_bounce_buffer(sgl, scsi_sg_count(scmnd)) != -1) { @@ -731,15 +733,16 @@ static int storvsc_queuecommand(struct scsi_cm...
2010 Aug 31
2
[PATCH 2/5] staging: hv: Fixed lockup problem with bounce_buffer scatter list - RESEND
...unsigned int sg_count = 0; DPRINT_DBG(STORVSC_DRV, "scmnd %p dir %d, use_sg %d buf %p len %d " "queue depth %d tagged %d", scmnd, scmnd->sc_data_direction, @@ -697,6 +698,7 @@ static int storvsc_queuecommand(struct scsi_cmnd *scmnd, request->DataBuffer.Length = scsi_bufflen(scmnd); if (scsi_sg_count(scmnd)) { sgl = (struct scatterlist *)scsi_sglist(scmnd); + sg_count = scsi_sg_count(scmnd); /* check if we need to bounce the sgl */ if (do_bounce_buffer(sgl, scsi_sg_count(scmnd)) != -1) { @@ -731,15 +733,16 @@ static int storvsc_queuecommand(struct scsi_cm...
2009 Sep 30
1
SCSI driver for VMware's virtual HBA - V5.
...e and > + * setup the scatter/gather list if needed. > + */ > +static void pvscsi_map_buffers(struct pvscsi_adapter *adapter, > + struct pvscsi_ctx *ctx, struct scsi_cmnd *cmd, > + struct PVSCSIRingReqDesc *e) > +{ > + unsigned count; > + unsigned bufflen = scsi_bufflen(cmd); > + struct scatterlist *sg; > + > + e->dataLen = bufflen; > + e->dataAddr = 0; > + if (bufflen == 0) > + return; > + > + sg = scsi_sglist(cmd); > + count = scsi_sg_count(cmd); > + if (count != 0) { > + int segs = scsi_dma_map(cmd); > + if (segs &gt...
2009 Sep 30
1
SCSI driver for VMware's virtual HBA - V5.
...e and > + * setup the scatter/gather list if needed. > + */ > +static void pvscsi_map_buffers(struct pvscsi_adapter *adapter, > + struct pvscsi_ctx *ctx, struct scsi_cmnd *cmd, > + struct PVSCSIRingReqDesc *e) > +{ > + unsigned count; > + unsigned bufflen = scsi_bufflen(cmd); > + struct scatterlist *sg; > + > + e->dataLen = bufflen; > + e->dataAddr = 0; > + if (bufflen == 0) > + return; > + > + sg = scsi_sglist(cmd); > + count = scsi_sg_count(cmd); > + if (count != 0) { > + int segs = scsi_dma_map(cmd); > + if (segs &gt...
2009 Oct 13
1
SCSI driver for VMware's virtual HBA - V6.
...data buffers for a command into PCI space and + * setup the scatter/gather list if needed. + */ +static void pvscsi_map_buffers(struct pvscsi_adapter *adapter, + struct pvscsi_ctx *ctx, struct scsi_cmnd *cmd, + struct PVSCSIRingReqDesc *e) +{ + unsigned count; + unsigned bufflen = scsi_bufflen(cmd); + struct scatterlist *sg; + + e->dataLen = bufflen; + e->dataAddr = 0; + if (bufflen == 0) + return; + + sg = scsi_sglist(cmd); + count = scsi_sg_count(cmd); + if (count != 0) { + int segs = scsi_dma_map(cmd); + if (segs > 1) { + pvscsi_create_sg(ctx, sg, segs); + + e->flag...
2009 Oct 13
1
SCSI driver for VMware's virtual HBA - V6.
...data buffers for a command into PCI space and + * setup the scatter/gather list if needed. + */ +static void pvscsi_map_buffers(struct pvscsi_adapter *adapter, + struct pvscsi_ctx *ctx, struct scsi_cmnd *cmd, + struct PVSCSIRingReqDesc *e) +{ + unsigned count; + unsigned bufflen = scsi_bufflen(cmd); + struct scatterlist *sg; + + e->dataLen = bufflen; + e->dataAddr = 0; + if (bufflen == 0) + return; + + sg = scsi_sglist(cmd); + count = scsi_sg_count(cmd); + if (count != 0) { + int segs = scsi_dma_map(cmd); + if (segs > 1) { + pvscsi_create_sg(ctx, sg, segs); + + e->flag...
2010 Dec 06
7
[PATCH 1/8] staging: hv: Convert camel case struct fields in vstorage.h to lowercase
From: Hank Janssen <hjanssen at microsoft.com> Convert camel case struct fields in vstorage.h to lowercase Signed-off-by: Abhishek Kane <v-abkane at microsoft.com> Signed-off-by: Haiyang Zhang <haiyangz at microsoft.com> Signed-off-by: Hank Janssen <hjanssen at microsoft.com> --- drivers/staging/hv/storvsc.c | 133 +++++++++++++++++++++--------------------
2010 Dec 06
7
[PATCH 1/8] staging: hv: Convert camel case struct fields in vstorage.h to lowercase
From: Hank Janssen <hjanssen at microsoft.com> Convert camel case struct fields in vstorage.h to lowercase Signed-off-by: Abhishek Kane <v-abkane at microsoft.com> Signed-off-by: Haiyang Zhang <haiyangz at microsoft.com> Signed-off-by: Hank Janssen <hjanssen at microsoft.com> --- drivers/staging/hv/storvsc.c | 133 +++++++++++++++++++++--------------------
2011 Aug 27
46
[PATCH 0000/0046] Staging: hv: Driver cleanup
Further cleanup of the hv drivers. 1) Cleanup reference counting. 2) Handle all block devices using the storvsc driver. I have modified the implementation here based on Christoph's feedback on my earlier implementation. 3) Fix bugs. 4) Accomodate some host side scsi emulation bugs. 5) In case of scsi errors off-line the device. This patch-set further reduces the size of
2011 Aug 27
46
[PATCH 0000/0046] Staging: hv: Driver cleanup
Further cleanup of the hv drivers. 1) Cleanup reference counting. 2) Handle all block devices using the storvsc driver. I have modified the implementation here based on Christoph's feedback on my earlier implementation. 3) Fix bugs. 4) Accomodate some host side scsi emulation bugs. 5) In case of scsi errors off-line the device. This patch-set further reduces the size of
2011 Jun 29
38
[PATCH 00/40] Staging: hv: Driver cleanup
Further cleanup of the hv drivers: 1) Cleanup the reference counting mess for both stor and net devices. 2) Handle all block devices using the storvsc driver. 3) Accomodate some host side scsi emulation bugs. 4) In case of scsi errors off-line the device. Regads, K. Y
2011 Jun 29
38
[PATCH 00/40] Staging: hv: Driver cleanup
Further cleanup of the hv drivers: 1) Cleanup the reference counting mess for both stor and net devices. 2) Handle all block devices using the storvsc driver. 3) Accomodate some host side scsi emulation bugs. 4) In case of scsi errors off-line the device. Regads, K. Y
2020 Oct 17
10
[RFC] treewide: cleanup unreachable breaks
...SS_0) return i + 1; } diff --git a/drivers/scsi/hptiop.c b/drivers/scsi/hptiop.c index 6a2561f26e38..db4c7a7ff4dd 100644 --- a/drivers/scsi/hptiop.c +++ b/drivers/scsi/hptiop.c @@ -756,11 +756,10 @@ static void hptiop_finish_scsi_req(struct hptiop_hba *hba, u32 tag, scsi_set_resid(scp, scsi_bufflen(scp) - le32_to_cpu(req->dataxfer_length)); scp->result = SAM_STAT_CHECK_CONDITION; memcpy(scp->sense_buffer, &req->sg_list, SCSI_SENSE_BUFFERSIZE); goto skip_resid; - break; default: scp->result = DRIVER_INVALID << 24 | DID_ABORT << 16; break; }...
2020 Oct 17
10
[RFC] treewide: cleanup unreachable breaks
...SS_0) return i + 1; } diff --git a/drivers/scsi/hptiop.c b/drivers/scsi/hptiop.c index 6a2561f26e38..db4c7a7ff4dd 100644 --- a/drivers/scsi/hptiop.c +++ b/drivers/scsi/hptiop.c @@ -756,11 +756,10 @@ static void hptiop_finish_scsi_req(struct hptiop_hba *hba, u32 tag, scsi_set_resid(scp, scsi_bufflen(scp) - le32_to_cpu(req->dataxfer_length)); scp->result = SAM_STAT_CHECK_CONDITION; memcpy(scp->sense_buffer, &req->sg_list, SCSI_SENSE_BUFFERSIZE); goto skip_resid; - break; default: scp->result = DRIVER_INVALID << 24 | DID_ABORT << 16; break; }...
2011 Jul 15
122
[PATCH 0000/0117] Staging: hv: Driver cleanup
Further cleanup of the hv drivers. Back in June I had sent two patch sets to address these issues. I have addressed the comments I got from the community on my earlier patches here: 1) Implement code for autoloading the vmbus drivers without using PCI or DMI signatures. I have implemented this based on Greg's feedback on my earlier implementation. 2) Cleanup error handling across
2011 Jul 15
122
[PATCH 0000/0117] Staging: hv: Driver cleanup
Further cleanup of the hv drivers. Back in June I had sent two patch sets to address these issues. I have addressed the comments I got from the community on my earlier patches here: 1) Implement code for autoloading the vmbus drivers without using PCI or DMI signatures. I have implemented this based on Greg's feedback on my earlier implementation. 2) Cleanup error handling across