I'll have a look when I get a chance -----Original Message----- From: yangxingui <yangxingui@xxxxxxxxxx> Sent: Wednesday, March 12, 2025 9:45 AM To: John Garry <john.g.garry@xxxxxxxxxx>; liyihang9@xxxxxxxxxx; yanaijie@xxxxxxxxxx Cc: jejb@xxxxxxxxxxxxx; Martin Petersen <martin.petersen@xxxxxxxxxx>; linux-scsi@xxxxxxxxxxxxxxx; linux-kernel@xxxxxxxxxxxxxxx; linuxarm@xxxxxxxxxx; prime.zeng@xxxxxxxxxx; liuyonglong@xxxxxxxxxx; kangfenglong@xxxxxxxxxx; liyangyang20@xxxxxxxxxx; f.fangjian@xxxxxxxxxx; xiabing14@xxxxxxxxxxxxxx Subject: Re: [PATCH v3 1/3] scsi: hisi_sas: Enable force phy when SATA disk directly connected Hi, John On 2025/3/11 1:45, John Garry wrote: > 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? The current problem we are facing only involves directly attached devices. a new version based on your suggestion. Thanks, Xingui