The request (and SCSI command) tag is the tag number assigned
by the generic block-tagging code, not the SCSI-II tag messages.
Those are represented by the device flags 'tagged_supported',
'simple_tags', and 'ordered_tags'.
(The SCSI midlayer doesn't use HEAD_OF_QUEUE tags).
So fixup vmw_pvscsi to assign the correct tag type.

Signed-off-by: Hannes Reinecke <h...@suse.de>
---
 drivers/scsi/vmw_pvscsi.c | 5 ++---
 1 file changed, 2 insertions(+), 3 deletions(-)

diff --git a/drivers/scsi/vmw_pvscsi.c b/drivers/scsi/vmw_pvscsi.c
index 598f65e..d18df8c 100644
--- a/drivers/scsi/vmw_pvscsi.c
+++ b/drivers/scsi/vmw_pvscsi.c
@@ -724,9 +724,8 @@ static int pvscsi_queue_ring(struct pvscsi_adapter *adapter,
 
        e->tag = SIMPLE_QUEUE_TAG;
        if (sdev->tagged_supported &&
-           (cmd->tag == HEAD_OF_QUEUE_TAG ||
-            cmd->tag == ORDERED_QUEUE_TAG))
-               e->tag = cmd->tag;
+           sdev->ordered_tags)
+               e->tag = ORDERED_QUEUE_TAG;
 
        if (cmd->sc_data_direction == DMA_FROM_DEVICE)
                e->flags = PVSCSI_FLAG_CMD_DIR_TOHOST;
-- 
1.8.5.2

--
To unsubscribe from this list: send the line "unsubscribe linux-scsi" in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html

Reply via email to