Linux SCSI subsystem development
 help / color / mirror / Atom feed
From: John Garry <john.g.garry@oracle.com>
To: yangxingui <yangxingui@huawei.com>,
	yanaijie@huawei.com, jejb@linux.ibm.com,
	martin.petersen@oracle.com
Cc: linux-scsi@vger.kernel.org, linux-kernel@vger.kernel.org,
	linuxarm@huawei.com, liyihang9@h-partners.com,
	liuyonglong@huawei.com, kangfenglong@huawei.com
Subject: Re: [PATCH v2 0/3] scsi: libsas: handle linkrate change in sas_rediscover_dev
Date: Thu, 14 May 2026 10:35:26 +0100	[thread overview]
Message-ID: <c4e4c99f-a13c-4e28-8650-48be1f96d7cf@oracle.com> (raw)
In-Reply-To: <391ec8d3-3bf7-16fc-774a-96c917c67d56@huawei.com>

On 13/05/2026 09:14, yangxingui wrote:
> 
> 
> 
> On 2026/5/13 15:29, John Garry wrote:
>> On 13/05/2026 03:16, Xingui Yang wrote:
>>> When a device attached to an expander phy experiences a linkrate change
>>> (e.g., due to cable reconnection or negotiation), the current code in
>>> sas_rediscover_dev() treats it as "broadcast flutter" and takes no 
>>> action
>>> if the SAS address and device type remain unchanged.
>>
>> Can sas_rediscover_dev() check the linkrate (vs expected) to 
>> understand that this flutter has renegotiated the linkrate and then 
>> consider it not just a flutter?
> 
> Hi, John
> Theoretically, it is possible. As early as 2019, Jason attempted to 
> propose the solution you mentioned. He conducted a relatively 
> comprehensive assessment for flutter, including scenarios where the SAS 
> address changes or the ATA ID changes. However, in actual use, such 
> situations almost never occur unless there is an extremely short time 
> window during which the drive is swapped or a new SATA drive is 
> replaced. Because this solution is associated with other modifications 
> and may have significant impacts, it has not been adopted.
> 
> https://urldefense.com/v3/__https://lore.kernel.org/linux- 
> scsi/20190130082412.9357-6-yanaijie@huawei.com/__;!!ACWV5N9M2RV99hQ! 
> K7CIIOxMVXErIMxcZlvm10YX3EVqp0rhSbh_ARyqnaFDmtaqqJtoLTJQui0- 
> Ox_URh97f8oyREG8htBVo2aC3Ew$
> Currently, scenarios involving changes in linkrate are relatively more 
> common, and such situations can be easily reproduced by manually 
> adjusting the linkrate by sysfs. Therefore, a less impactful synchronous 
> update solution was adopted.
> 

What Jason did was to check if same device for flutter, which is not 
really the same thing as what you want.

I just don't like these special case callbacks which you propose, as 
they seem fragile and too specialized.

Is it possible to just check the linkrate and mark the device as gone 
and rediscover when this flutter occurs occurs?



  reply	other threads:[~2026-05-14  9:35 UTC|newest]

Thread overview: 11+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2026-05-13  2:16 [PATCH v2 0/3] scsi: libsas: handle linkrate change in sas_rediscover_dev Xingui Yang
2026-05-13  2:16 ` [PATCH v2 1/3] scsi: libsas: refactor sas_ex_to_ata() using new helper sas_ex_to_dev() Xingui Yang
2026-05-13  6:18   ` Jason Yan
2026-05-13  2:16 ` [PATCH v2 2/3] scsi: libsas: add lldd_dev_info_update callback for device info changes Xingui Yang
2026-05-13  6:22   ` Jason Yan
2026-05-13  2:16 ` [PATCH v2 3/3] scsi: hisi_sas: add support for dev info update notification Xingui Yang
2026-05-13  6:23   ` Jason Yan
2026-05-13  7:29 ` [PATCH v2 0/3] scsi: libsas: handle linkrate change in sas_rediscover_dev John Garry
2026-05-13  8:14   ` yangxingui
2026-05-14  9:35     ` John Garry [this message]
2026-05-14 13:00       ` yangxingui

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=c4e4c99f-a13c-4e28-8650-48be1f96d7cf@oracle.com \
    --to=john.g.garry@oracle.com \
    --cc=jejb@linux.ibm.com \
    --cc=kangfenglong@huawei.com \
    --cc=linux-kernel@vger.kernel.org \
    --cc=linux-scsi@vger.kernel.org \
    --cc=linuxarm@huawei.com \
    --cc=liuyonglong@huawei.com \
    --cc=liyihang9@h-partners.com \
    --cc=martin.petersen@oracle.com \
    --cc=yanaijie@huawei.com \
    --cc=yangxingui@huawei.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox