Message ID | 20210819091913.94436-2-hare@suse.de (mailing list archive) |
---|---|
State | Accepted |
Headers | show |
Series | qla2xxx: Fixes for SCSI EH rework | expand |
Hannes, > -----Original Message----- > From: Hannes Reinecke <hare@suse.de> > Sent: Thursday, August 19, 2021 2:49 PM > To: Martin K. Petersen <martin.petersen@oracle.com> > Cc: Christoph Hellwig <hch@lst.de>; James Bottomley > <james.bottomley@hansenpartnership.com>; Nilesh Javali > <njavali@marvell.com>; linux-scsi@vger.kernel.org; Hannes Reinecke > <hare@suse.de> > Subject: [EXT] [PATCH 1/3] qla2xxx: Do not call fc_block_scsi_eh() during bus > reset > > External Email > > ---------------------------------------------------------------------- > When calling bus reset the driver will be doing a full SAN resync > anyway, so there is no need to wait for any pending RSCNs; they'll > be re-issued during resync anyway. > > Signed-off-by: Hannes Reinecke <hare@suse.de> > Cc: Nilesh Javali <njavali@marvell.com> > --- > drivers/scsi/qla2xxx/qla_os.c | 10 ---------- > 1 file changed, 10 deletions(-) > > diff --git a/drivers/scsi/qla2xxx/qla_os.c b/drivers/scsi/qla2xxx/qla_os.c > index 868037c7d608..54254bd3a7d7 100644 > --- a/drivers/scsi/qla2xxx/qla_os.c > +++ b/drivers/scsi/qla2xxx/qla_os.c > @@ -1499,7 +1499,6 @@ static int > qla2xxx_eh_bus_reset(struct scsi_cmnd *cmd) > { > scsi_qla_host_t *vha = shost_priv(cmd->device->host); > - fc_port_t *fcport = (struct fc_port *) cmd->device->hostdata; > int ret = FAILED; > unsigned int id; > uint64_t lun; > @@ -1515,15 +1514,6 @@ qla2xxx_eh_bus_reset(struct scsi_cmnd *cmd) > id = cmd->device->id; > lun = cmd->device->lun; > > - if (!fcport) { > - return ret; > - } > - > - ret = fc_block_scsi_eh(cmd); > - if (ret != 0) > - return ret; > - ret = FAILED; > - > if (qla2x00_chip_is_down(vha)) > return ret; > > -- > 2.29.2 Thanks for the patches. Reviewed-by: Nilesh Javali <njavali@marvell.com>
Hannes, > When calling bus reset the driver will be doing a full SAN resync > anyway, so there is no need to wait for any pending RSCNs; they'll be > re-issued during resync anyway. Applied to 5.15/scsi-staging, thanks!
diff --git a/drivers/scsi/qla2xxx/qla_os.c b/drivers/scsi/qla2xxx/qla_os.c index 868037c7d608..54254bd3a7d7 100644 --- a/drivers/scsi/qla2xxx/qla_os.c +++ b/drivers/scsi/qla2xxx/qla_os.c @@ -1499,7 +1499,6 @@ static int qla2xxx_eh_bus_reset(struct scsi_cmnd *cmd) { scsi_qla_host_t *vha = shost_priv(cmd->device->host); - fc_port_t *fcport = (struct fc_port *) cmd->device->hostdata; int ret = FAILED; unsigned int id; uint64_t lun; @@ -1515,15 +1514,6 @@ qla2xxx_eh_bus_reset(struct scsi_cmnd *cmd) id = cmd->device->id; lun = cmd->device->lun; - if (!fcport) { - return ret; - } - - ret = fc_block_scsi_eh(cmd); - if (ret != 0) - return ret; - ret = FAILED; - if (qla2x00_chip_is_down(vha)) return ret;
When calling bus reset the driver will be doing a full SAN resync anyway, so there is no need to wait for any pending RSCNs; they'll be re-issued during resync anyway. Signed-off-by: Hannes Reinecke <hare@suse.de> Cc: Nilesh Javali <njavali@marvell.com> --- drivers/scsi/qla2xxx/qla_os.c | 10 ---------- 1 file changed, 10 deletions(-)