Issue in sas_ex_discover_dev() for multiple level of SAS expanders in a domain

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Hi,

There is an issue in the function sas_ex_discover_dev() when I have multiple SAS expanders chained under one SAS port on SAS controller.

In this function, we first check whether the PHY’s attached_sas_address is already present in the SAS domain, and then check if this PHY belongs to an existing port on this SAS expander.
I think this has an issue if this SAS expander use a wide port connecting a downstream SAS expander.
This is because if the PHY belongs to an existing port on this SAS expander, the attached SAS address of this port must already be present in the domain and it results in disabling that port.
I don’t think that is what we expect.

In old release (4.x), at the end of this function, it would make addition sas_ex_join_wide_port() call for any possibly PHYs that could be added into the SAS port.
This will make subsequent PHYs (other than the first PHY of that port) being marked to DISCOVERED so that this function would not be invoked on those subsequent PHYs (in that port).
But potential question here is we didn’t configure the per-PHY routing table for those PHYs.
As I don’t have such SAS expander on hand, I am not sure what’s impact (maybe just performance/bandwidth impact).
But at least, it didn’t impact the functionality of that port.

But in v5.3 or later release, that part of code was removed (in the commit a1b6fb947f923).
And this caused this problem occurred (downstream port of that SAS expander was disabled and all downstream SAS devices were removed from the domain).

Regards.
Eric Li

SPE, DellEMC
3/F KIC 1, 252# Songhu Road, YangPu District, SHANGHAI
+86-21-6036-4384


Internal Use - Confidential




[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Index of Archives]     [SCSI Target Devel]     [Linux SCSI Target Infrastructure]     [Kernel Newbies]     [IDE]     [Security]     [Git]     [Netfilter]     [Bugtraq]     [Yosemite News]     [MIPS Linux]     [ARM Linux]     [Linux Security]     [Linux RAID]     [Linux ATA RAID]     [Linux IIO]     [Samba]     [Device Mapper]

  Powered by Linux