Messages in this thread | | | Subject | Re: [PATCH 8/8] scsi: libsas: support SATA phy link rate unmatch the pathway | From | John Garry <> | Date | Fri, 1 Jun 2018 11:13:39 +0100 |
| |
On 01/06/2018 02:21, Jason Yan wrote: > > > On 2018/6/1 0:05, John Garry wrote: >> On 29/05/2018 03:23, Jason Yan wrote: >>> If a SATA disk attached to a expander phy and it's linkrate is greater >>> than the expander host phy's linkrate, the disk will failed to discover. >>> The topology is like below: >>> >>> +----------+ +----------+ >>> | | | | >>> | |-- 3.0 G --| |-- 6.0 G -- SAS disk >>> | | | | >>> | |-- 3.0 G --| |-- 6.0 G -- SAS disk >>> |initiator | | | >>> | device |-- 3.0 G --| Expander |-- 6.0 G -- SAS disk >>> | | | | >>> | |-- 3.0 G --| |-- 6.0 G -- SATA disk -->failed >>> to connect >>> | | | | >>> | | | |-- 6.0 G -- SATA disk -->failed >>> to connect >>> | | | | >>> +----------+ +----------+ >>> >>> And when we check the sas protocal spec, this scenario is described as >>> this: >>> >>> 7.13 Rate matching >>> ...... >>> If an expander phy attached to a SATA phy is using a physical link rate >>> greater than the maximum connection rate supported by the pathway from >>> an STP initiator port, a management application client should use the >>> SMP PHY CONTROL function (see 10.4.3.10) to set the PROGRAMMED MAXIMUM >>> PHYSICAL LINK RATE field of the expander phy to the maximum connection >>> rate supported by the pathway from that STP initiator port. >>> >>> In order to support this scenario, checking the SATA disk's linkrate >>> to see if it is greater than any phy's linkrate it may pass through. >>> Remember the minimum linkrate of the pathway and set the SATA phy >>> linkrate to it using the SMP PHY CONTROL function. >> >> As we (re)discover the tree, can we keep track of the min pathway to the >> root PHY dynamically (per expander), and then take action for any SATA >> devices attached which have a negotiated linkrate greater (than the >> expanders min pathway)? This would be an alternate to your approach of >> finishing discovery and then checking the min pathway as a whole new >> step. >> > > Seems better, I will have a try to see if it works. Thanks.
Fine, it seems the tricky part here is to figure out when to issue the linkrate change request.
| |