Re: [PATCH 5/8] pm80xx: Remove unnecessary phy disconnect while link error

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

 



On 07/29/2015 08:27 AM, Viswas.G@xxxxxxxx wrote:
> From: Viswas G <Viswas.G@xxxxxxxx>
> 
> If the link error happens, we don't need to disconnect the phy,
> which will remove the drive. Instead acknowledging the controller
> and logging the error will be enough.
> 
> Signed-off-by: Viswas G <Viswas.G@xxxxxxxx>
> Signed-off-by: Suresh Thiagarajan <Suresh.Thiagarajan@xxxxxxxx> 
> ---
>  drivers/scsi/pm8001/pm80xx_hwi.c |   12 ------------
>  1 files changed, 0 insertions(+), 12 deletions(-)
> 
> diff --git a/drivers/scsi/pm8001/pm80xx_hwi.c b/drivers/scsi/pm8001/pm80xx_hwi.c
> index dced9f7..3d8b4ae 100644
> --- a/drivers/scsi/pm8001/pm80xx_hwi.c
> +++ b/drivers/scsi/pm8001/pm80xx_hwi.c
> @@ -3176,9 +3176,6 @@ static int mpi_hw_event(struct pm8001_hba_info *pm8001_ha, void *piomb)
>  			pm8001_printk("HW_EVENT_LINK_ERR_INVALID_DWORD\n"));
>  		pm80xx_hw_event_ack_req(pm8001_ha, 0,
>  			HW_EVENT_LINK_ERR_INVALID_DWORD, port_id, phy_id, 0, 0);
> -		sas_phy_disconnected(sas_phy);
> -		phy->phy_attached = 0;
> -		sas_ha->notify_port_event(sas_phy, PORTE_LINK_RESET_ERR);
>  		break;
>  	case HW_EVENT_LINK_ERR_DISPARITY_ERROR:
>  		PM8001_MSG_DBG(pm8001_ha,
> @@ -3186,9 +3183,6 @@ static int mpi_hw_event(struct pm8001_hba_info *pm8001_ha, void *piomb)
>  		pm80xx_hw_event_ack_req(pm8001_ha, 0,
>  			HW_EVENT_LINK_ERR_DISPARITY_ERROR,
>  			port_id, phy_id, 0, 0);
> -		sas_phy_disconnected(sas_phy);
> -		phy->phy_attached = 0;
> -		sas_ha->notify_port_event(sas_phy, PORTE_LINK_RESET_ERR);
>  		break;
>  	case HW_EVENT_LINK_ERR_CODE_VIOLATION:
>  		PM8001_MSG_DBG(pm8001_ha,
> @@ -3196,9 +3190,6 @@ static int mpi_hw_event(struct pm8001_hba_info *pm8001_ha, void *piomb)
>  		pm80xx_hw_event_ack_req(pm8001_ha, 0,
>  			HW_EVENT_LINK_ERR_CODE_VIOLATION,
>  			port_id, phy_id, 0, 0);
> -		sas_phy_disconnected(sas_phy);
> -		phy->phy_attached = 0;
> -		sas_ha->notify_port_event(sas_phy, PORTE_LINK_RESET_ERR);
>  		break;
>  	case HW_EVENT_LINK_ERR_LOSS_OF_DWORD_SYNCH:
>  		PM8001_MSG_DBG(pm8001_ha, pm8001_printk(
> @@ -3206,9 +3197,6 @@ static int mpi_hw_event(struct pm8001_hba_info *pm8001_ha, void *piomb)
>  		pm80xx_hw_event_ack_req(pm8001_ha, 0,
>  			HW_EVENT_LINK_ERR_LOSS_OF_DWORD_SYNCH,
>  			port_id, phy_id, 0, 0);
> -		sas_phy_disconnected(sas_phy);
> -		phy->phy_attached = 0;
> -		sas_ha->notify_port_event(sas_phy, PORTE_LINK_RESET_ERR);
>  		break;
>  	case HW_EVENT_MALFUNCTION:
>  		PM8001_MSG_DBG(pm8001_ha,
> 
So what happens with the port, then?
Will you be getting another event when the port finally disconnects?
If not, how to you remove the port after a link failure?

Cheers,

Hannes
-- 
Dr. Hannes Reinecke		               zSeries & Storage
hare@xxxxxxx			               +49 911 74053 688
SUSE LINUX GmbH, Maxfeldstr. 5, 90409 Nürnberg
GF: F. Imendörffer, J. Smithard, J. Guild, D. Upmanyu, G. Norton
HRB 21284 (AG Nürnberg)
--
To unsubscribe from this list: send the line "unsubscribe linux-scsi" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html



[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