Question regarding STP Wide Port arbitration rule

Teo, Daryl daryl.teo at
Wed Dec 3 18:11:15 PST 2008

* From the T10 Reflector (t10 at, posted by:
* "Teo, Daryl" <daryl.teo at>
I'm seeking clarification on a particular arbitration rule concerning wide
STP initiator and target ports. Section 7.18.5 (sas2r15) states that 
"While a wide STP initiator port is waiting for a response to a connection
request to an STP target port, a SAS phy in the STP initiator port shall not
reject an incoming connection request from that STP target port with
OPEN_REJECT (RETRY) because the SAS port containing that SAS phy needs an
outgoing connection request to be accepted."
"While a wide STP target port is waiting for a response to a connection
request or has established a connection to an STP initiator port, the wide
STP target port shall 
a) reject incoming connection requests from that STP initiator port with
Do the above paragraphs imply that if a phy in the STP initiator port and a
phy in the STP target port are simultaneously arbitrating on the same link,
both phys are expected to ignore the arbitration fairness rule as defined in
section 7.13.3? 
There are a couple of issues with the above scenario:
1) There is nothing defined in SL_CC1:ArbSel to SL_CC2:Selected state
transition (section for an STP initiator/target to ignore the
arbitration fairness check;
2) After transmitting the OPEN_REJECT, the target transitions to SL_CC0:Idle
state and would need to resend the OPEN Addr Frame to retry the connection
request. However, if the initiator detects a loss in arbitration and sends an
OPEN_ACCEPT while the target is in SL_CC0:Idle state, the target will miss
the OPEN_ACCEPT. This results in a situation where the target remains in
SL_CC1:ArbSel state (till Open timeout followed by Break timeout occurs) and
the initiator is stuck in SL_CC3:Connected state.
It seems that the description in those paragraphs will make sense if both
connection requests are occurring on different physical links.
Daryl Teo
Intel Corp
* For T10 Reflector information, send a message with
* 'info t10' (no quotes) in the message body to majordomo at

More information about the T10 mailing list