[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <e95993da-db88-5db2-0aa8-f0c7589ce902@huawei.com>
Date: Tue, 27 Feb 2024 17:42:41 +0800
From: yangxingui <yangxingui@...wei.com>
To: John Garry <john.g.garry@...cle.com>, Jason Yan <yanaijie@...wei.com>,
<jejb@...ux.ibm.com>, <martin.petersen@...cle.com>,
<damien.lemoal@...nsource.wdc.com>
CC: <linux-scsi@...r.kernel.org>, <linux-kernel@...r.kernel.org>,
<linuxarm@...wei.com>, <prime.zeng@...ilicon.com>,
<chenxiang66@...ilicon.com>, <kangfenglong@...wei.com>
Subject: Re: [PATCH] scsi: libsas: Fix disk not being scanned in after being
removed
Hi John,
On 2024/2/27 17:06, John Garry wrote:
> On 27/02/2024 07:16, Jason Yan wrote:
>>>>
>>>> Can we directly set phy->negotiated_linkrate = SAS_PHY_DISABLED
>>>> here? For an empty PHY the other variables means nothing, so why
>>>> bother get and update them?
>>> The value of the negotiated link rate has two possible values in
>>> the current processing branch: SAS_LINK_RATE_UNKNOWN and
>>> SAS_PHY_DISABLED, and both come from disc_resp. If we do not use
>>> disc_resp, but set a fixed value SAS_PHY_DISABLED for it, it may not
>>> be appropriate.
>
> But we know that the phy is disabled, right? It's our phy, isn't it?
Yes, just like the previous submission, if we disable phy ourselves
through the sysfs node, we can configure the negotiation rate to
SAS_PHY_DISABLED by setting phy->phy->enable to 0. It might be better to
use sas_set_ex_phy() as you described before, it will refresh other phy
information synchronously, such as sas_address, device_type,
target_protocols, etc. If we only update the negotiation rate and
maintain the old information, is it because it is special? Is it better
to update phy information uniformly?
Thanks,
Xingui
Powered by blists - more mailing lists