Displaying 20 results from an estimated 20 matches for "scsi_sg_count".
2010 Aug 03
1
[PATCH 2/6] staging: hv: Fixed lockup problem with bounce_buffer scatter list
...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_cmnd *scmnd,
scsi_...
2010 Aug 03
1
[PATCH 2/6] staging: hv: Fixed lockup problem with bounce_buffer scatter list
...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_cmnd *scmnd,
scsi_...
2010 Aug 31
2
[PATCH 2/5] staging: hv: Fixed lockup problem with bounce_buffer scatter list - RESEND
...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_cmnd *scmnd,
scsi_...
2010 Aug 31
2
[PATCH 2/5] staging: hv: Fixed lockup problem with bounce_buffer scatter list - RESEND
...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_cmnd *scmnd,
scsi_...
2010 Aug 05
1
[PATCH 2/5] staging: hv: Fixed lockup problem with bounce_buffer scatter list
...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_cmnd *scmnd,
scsi_...
2010 Aug 05
1
[PATCH 2/5] staging: hv: Fixed lockup problem with bounce_buffer scatter list
...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_cmnd *scmnd,
scsi_...
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
2014 Apr 07
3
[PATCH 6/6] virtio-scsi: Enable DIF/DIX modes in SCSI host LLD
...t virtscsi_queuecommand(struct virtio_scsi *vscsi,
> struct virtio_scsi_vq *req_vq,
> struct scsi_cmnd *sc)
> {
> struct virtio_scsi_cmd *cmd;
> - int ret;
> + int ret, req_size;
>
> struct Scsi_Host *shost = virtio_scsi_host(vscsi->vdev);
> BUG_ON(scsi_sg_count(sc) > shost->sg_tablesize);
> @@ -515,22 +548,20 @@ static int virtscsi_queuecommand(struct virtio_scsi *vscsi,
>
> memset(cmd, 0, sizeof(*cmd));
> cmd->sc = sc;
> - cmd->req.cmd = (struct virtio_scsi_cmd_req){
> - .lun[0] = 1,
> - .lun[1] = sc->device-&g...
2014 Apr 07
3
[PATCH 6/6] virtio-scsi: Enable DIF/DIX modes in SCSI host LLD
...t virtscsi_queuecommand(struct virtio_scsi *vscsi,
> struct virtio_scsi_vq *req_vq,
> struct scsi_cmnd *sc)
> {
> struct virtio_scsi_cmd *cmd;
> - int ret;
> + int ret, req_size;
>
> struct Scsi_Host *shost = virtio_scsi_host(vscsi->vdev);
> BUG_ON(scsi_sg_count(sc) > shost->sg_tablesize);
> @@ -515,22 +548,20 @@ static int virtscsi_queuecommand(struct virtio_scsi *vscsi,
>
> memset(cmd, 0, sizeof(*cmd));
> cmd->sc = sc;
> - cmd->req.cmd = (struct virtio_scsi_cmd_req){
> - .lun[0] = 1,
> - .lun[1] = sc->device-&g...
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
2009 Sep 30
1
SCSI driver for VMware's virtual HBA - V5.
...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->flags |= PVSCSI_FLAG_CMD_WITH_SG_LIST;
> + ctx->sglPA = pci_map_single(adapter->dev, ctx->sgl,
> + SGL_SIZE, PCI_...
2009 Sep 30
1
SCSI driver for VMware's virtual HBA - V5.
...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->flags |= PVSCSI_FLAG_CMD_WITH_SG_LIST;
> + ctx->sglPA = pci_map_single(adapter->dev, ctx->sgl,
> + SGL_SIZE, PCI_...
2009 Oct 13
1
SCSI driver for VMware's virtual HBA - V6.
...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->flags |= PVSCSI_FLAG_CMD_WITH_SG_LIST;
+ ctx->sglPA = pci_map_single(adapter->dev, ctx->sgl,
+ SGL_SIZE, PCI_DMA_TODEVICE);
+ e->dataAddr = ctx-...
2009 Oct 13
1
SCSI driver for VMware's virtual HBA - V6.
...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->flags |= PVSCSI_FLAG_CMD_WITH_SG_LIST;
+ ctx->sglPA = pci_map_single(adapter->dev, ctx->sgl,
+ SGL_SIZE, PCI_DMA_TODEVICE);
+ e->dataAddr = ctx-...
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 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