Re: [PATCH 1/2] qla2xxx: Fix device staying in blocked state

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On Tue, 2019-04-23 at 14:52 -0700, Himanshu Madhani wrote:
> From: Quinn Tran <qtran@xxxxxxxxxxx>
> 
> This patch fixes issue reported by some of the customers,
> who discovered that after cable pull scenario the devices
> disappear and path seems to remain in blocked state. Once
> the device reappears, driver does not seem to update path
> to online. This issue appears because of the defer flag
> creating race condition where the same session reappears.
> This patch fixes this issue by indicating SCSI-ML of device
> lost when qlt_free_session_done() is called from qlt_unreg_sess().
> 
> Fixes: 41dc529a4602a ("qla2xxx: Improve RSCN handling in driver")
> Signed-off-by: Quinn Tran <qtran@xxxxxxxxxxx>
> Cc: stable@xxxxxxxxxxxxxxx #4.19
> Signed-off-by: Himanshu Madhani <hmadhani@xxxxxxxxxxx>
> ---
>  drivers/scsi/qla2xxx/qla_target.c | 4 ++--
>  1 file changed, 2 insertions(+), 2 deletions(-)
> 
> diff --git a/drivers/scsi/qla2xxx/qla_target.c b/drivers/scsi/qla2xxx/qla_target.c
> index 57cdd762230d..fc8914dd9dde 100644
> --- a/drivers/scsi/qla2xxx/qla_target.c
> +++ b/drivers/scsi/qla2xxx/qla_target.c
> @@ -982,6 +982,8 @@ void qlt_free_session_done(struct work_struct *work)
>  		sess->send_els_logo);
>  
>  	if (!IS_SW_RESV_ADDR(sess->d_id)) {
> +		qla2x00_mark_device_lost(vha, sess, 0, 0);
> +
>  		if (sess->send_els_logo) {
>  			qlt_port_logo_t logo;
>  
> @@ -1163,8 +1165,6 @@ void qlt_unreg_sess(struct fc_port *sess)
>  	if (sess->se_sess)
>  		vha->hw->tgt.tgt_ops->clear_nacl_from_fcport_map(sess);
>  
> -	qla2x00_mark_device_lost(vha, sess, 0, 0);
> -
>  	sess->deleted = QLA_SESS_DELETION_IN_PROGRESS;
>  	sess->disc_state = DSC_DELETE_PEND;
>  	sess->last_rscn_gen = sess->rscn_gen;

Reviewed-by: Ewan D. Milne <emilne@xxxxxxxxxx>




[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Index of Archives]     [SCSI Target Devel]     [Linux SCSI Target Infrastructure]     [Kernel Newbies]     [IDE]     [Security]     [Git]     [Netfilter]     [Bugtraq]     [Yosemite News]     [MIPS Linux]     [ARM Linux]     [Linux Security]     [Linux RAID]     [Linux ATA RAID]     [Linux IIO]     [Samba]     [Device Mapper]

  Powered by Linux