提交 f58c8970 编写于 作者: Y Yihang Li 提交者: Martin K. Petersen

scsi: hisi_sas: Set a port invalid only if there are no devices attached when refreshing port id

Currently the driver sets the port invalid if one phy in the port is not
enabled, which may cause issues in expander situation. In directly attached
situation, if phy up doesn't occur in time when refreshing port id, the
port is incorrectly set to invalid which will also cause disk lost.

Therefore set a port invalid only if there are no devices attached to the
port.
Signed-off-by: NYihang Li <liyihang9@huawei.com>
Signed-off-by: NXiang Chen <chenxiang66@hisilicon.com>
Link: https://lore.kernel.org/r/1672805000-141102-3-git-send-email-chenxiang66@hisilicon.comSigned-off-by: NMartin K. Petersen <martin.petersen@oracle.com>
上级 037b4805
......@@ -1316,7 +1316,7 @@ static void hisi_sas_refresh_port_id(struct hisi_hba *hisi_hba)
device->linkrate = phy->sas_phy.linkrate;
hisi_hba->hw->setup_itct(hisi_hba, sas_dev);
} else
} else if (!port->port_attached)
port->id = 0xff;
}
}
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册