RE: [PATCH] [SCSI] LIBSAS: fix libsas link error issue

Jack Wang
2011-06-16T06:12:54Z

> >> > [Jack Wang]
> >> >It's the same, sas_ex_get_linkrate use DISCOVER response as linkrate.
> >> But the function have problem, actually, the error statement is:
> >> child->linkrate = min(parent_phy->linkrate, child->max_linkrate);
> >> its mean like this:
> >> child->linkrate = min(child_phy->linkrate,
> >> max(parent->max_linkrate,child_phy->linkrate));
> >> and if parent->max_linkrate(3Gbps) is less than
> child_phy->linkrate(6Gbps),
> >> the statement will be change this:
> >> child->linkrate = child_phy->linkrate, forget the parent linkrate.
> >[Jack Wang]
> >I don't think the statement below is error:
> >child->linkrate = min(parent_phy->linkrate, child->max_linkrate);
> >parent_phy->linkrate is came from sas_set_ex_phy which will set the
linkrate
> >to negotiated logical linkrate. For your eg: you topo like this:
> >hba(3G)---expander1(6G)---expander2(6G):
>
> Yes, you can test like this.
> >Then expander1's linkrate will set to 3G, and expander2's linkrate will
set
> >to 6G, that is correct.
> yes
> > But the connection rate will be 3G from hba to
> >expander2.
> How to configure the connection rate?
> Now, MVSAS driver get 6G from sas_ex_get_linkrate function, and set
linkrate
> of OPEN address frame to the value. right?
>
> --
[Jack Wang]
Connection rate is auto, link layer will insert deletable primitives to do
rate matching (sas2r15 7.14).

Yes, you should set the linkrate to that value .
> To unsubscribe from this list: send the line "unsubscribe linux-scsi" in
> the body of a message to majordomo@vger.kernel.org
> More majordomo info at http://vger.kernel.org/majordomo-info.html