Re: [PATCH v3 1/3] scsi: hisi_sas: Enable force phy when SATA disk directly connected

From: John Garry
Date: Mon Mar 10 2025 - 13:47:02 EST


On 10/03/2025 13:09, yangxingui wrote:
On 2025/2/25 16:19, John Garry wrote:
On 25/02/2025 01:48, yangxingui wrote:


pm8001 sends sas_notify_port_event(sas_phy, PORTE_LINK_RESET_ERR,) link reset errors - can you consider doing that in hisi_sas_update_port_id() when you find an inconstant port id?
Currently during phyup, the hw port id may change, and the corresponding hisi_sas_port.id and the port id in itct are not updated synchronously. The problem caused is not a link error, so we don't need deform port, just update the port id when phyup.

Sure, but I am just trying to keep this simple. If you deform and reform the port - and so lose and find the disk (which does the itct config) - will that solve the problem?

We found that we need to perform lose and find for all devices on the port including the local phy and the remote phy. This process still requires traversing the phy information corresponding to all devices to reset and it is also necessary to consider that there is a race between device removal and the current process.  it looks similar to solution of update port id directly. And there will be the problem mentioned above. e.g, during error handling, the recovery state will last for more than 15 seconds, affecting the performance of other disks on the same host.

How do you even detect the port id inconsistency for the device attached at the remote phy? For this series, you could detect it at the phy up/down handler for the directly attached device - how would it be triggered for the remote phy?

John