On 25/07/19 19:02, Steffen Maier wrote:
> 
> 9e5470fe2d61 ("scsi: virtio_scsi: implement request batching")
> 8930a6c20791 ("scsi: core: add support for request batching")
> 
> REBOOT into kernel with above commits reverted and now multipath
> assembly works again:

Can you try applying only this from these two commits:

diff --git a/drivers/scsi/scsi_lib.c b/drivers/scsi/scsi_lib.c
index 601b9f1de267..eb4e67d02bfe 100644
--- a/drivers/scsi/scsi_lib.c
+++ b/drivers/scsi/scsi_lib.c
@@ -1673,10 +1673,11 @@  static blk_status_t scsi_queue_rq(struct blk_mq_hw_ctx 
*hctx,
                blk_mq_start_request(req);
        }
 
+       cmd->flags &= SCMD_PRESERVED_FLAGS;
        if (sdev->simple_tags)
                cmd->flags |= SCMD_TAGGED;
-       else
-               cmd->flags &= ~SCMD_TAGGED;
+       if (bd->last)
+               cmd->flags |= SCMD_LAST;
 
        scsi_init_cmd_errh(cmd);
        cmd->scsi_done = scsi_mq_done;
diff --git a/include/scsi/scsi_cmnd.h b/include/scsi/scsi_cmnd.h
index 76ed5e4acd38..91bd749a02f7 100644
--- a/include/scsi/scsi_cmnd.h
+++ b/include/scsi/scsi_cmnd.h
@@ -57,6 +57,7 @@  struct scsi_pointer {
 #define SCMD_TAGGED            (1 << 0)
 #define SCMD_UNCHECKED_ISA_DMA (1 << 1)
 #define SCMD_INITIALIZED       (1 << 2)
+#define SCMD_LAST              (1 << 3)
 /* flags preserved across unprep / reprep */
 #define SCMD_PRESERVED_FLAGS   (SCMD_UNCHECKED_ISA_DMA | SCMD_INITIALIZED)
 

?  These should be the only changes visible to the zfcp driver.

Thanks,

Paolo

Reply via email to