Typo in latest spec SPL3R04 for Persistent Connections - 1 message with two sources

Penokie, George George.Penokie at lsi.com
Thu Sep 19 07:53:28 PDT 2013


Formatted message: <a href="http://www.t10.org/cgi-bin/ac.pl?t=r&f=r1309190_f.htm">HTML-formatted message</a>

Craig,
Persistent Connection () is not a message it is a confirmation that is sent
to the port layer. There are many confirmations that are same that come from
different states and state machines that are the same.
As for the Persistent Connection () confirmation here is the issue that
adding it to the SL_CC2:Connected state from proposal 13-158.
There are two cases in where the initial EXTEND_CONNECTION from the target
could get lost or corrupted that would cause the handshake to not complete.
a) If the target's EM1 receives a Persistent Connection (Transmit) the target
will transmit the EXTEND_CONNECTION and then wait for an EXTEND_CONNECTION to
be received. If the
EXTEND_CONNECTION is never received, then EM1 never sends a Persistent
Connection Established (Enable) to the port layer and there is no transition
out of EM1. Assuming the port layer
does not initialize to the persistent connection being enabled then it should
have the persistent connection disabled.
b) If the initiator's EM1 receives a Persistent Connection (Wait) the
initiator will wait unit it gets the EXTEND_CONNECTION. When the
EXTEND_CONNECTION is received the initiator will transmit an
EXTEND_CONNECTION and send a Persistent Connection Established (Enable) to
the port layer. At that point there is also a transition to EM2. If, for some
reason, the target never receives the EXTEND_CONNECTION its EM1 will never
send an Persistent Connection Established (Enable) to the port layer nor will
there be a transition to its EM2. The result is the target will not send any
EXTEND_CONNECTIONs. This will cause the initiator's EM2 to timeout resulting
in a an Persistent Connection Established (Disable) to the port layer.
So assuming the port layer defaults to persistent connections disabled there
should be no hangs. However, one should never make assumptions about the
creativity of those reading standards.
Bye for now,
George Penokie
LSI Corporation
3033 41 St NW
Rochester , MN 55901
507-328-9017
george.penokie at lsi.com
From: Craig Stoops [mailto:Craig.Stoops at synopsys.com]
Sent: Wednesday, September 18, 2013 8:26 PM
To: Penokie, George; t10 at t10.org
Cc: Voorhees, Bill
Subject: Typo in latest spec SPL3R04 for Persistent Connections - 1 message
with two sources
Hi George,
It was brought to my attention that in the SPL3R04 that the some new language
was added to the SLCC however the message is now generated by both the SLCC
and the EM. Previous proposals only have the message coming from the EM. The
SLCC sends the Persistent Connection () message to the EM, and the EM does
the rest.
The PL should be assuming that unless it has received a message from the EM,
that no PC has been established. So the need for the SLCC to send "disabled"
is not needed, it's obvious that no PC has been enabled as far as the PL is
concerned on a new connection.
Most importantly though, there should only be 1 source of the message, and I
believe the proposals were correct that it should come from the EM. The
source should the solely the EM or solely the SLCC, not a mix. There is no
other messages in the architecture that have two sources.
Craig
6.16.4.5.1 State description
<snipet>
a) an Extend Connection (Transmit) argument, then this state shall:
A) send a Persistent Connection (Transmit) message to the SSP_EM link layer
state machine (see
6.18.9.12); and
B) send a Persistent Connection Established (Disabled) confirmation to the
port layer.;
b) an Extend Connection (Wait) argument, then this state shall:
A) send a Persistent Connection (Wait) message to the SSP_EM link layer state
machine (see
6.18.9.12); and
B) send a Persistent Connection Established (Disabled) confirmation to the
port layer;
6.18.9.12.2 SSP_EM1:Establish state
This state establishes a persistent connection (see 6.18.1).
If this state receives a Persistent Connection (Transmit) message, then this
state:
a) shall send a Transmit EXTEND_CONNECTION message to the SSP transmitter;
and
b) if this state receives an EXTEND_CONNECTION Received message, then this
state shall send a
Persistent Connection Established (Enabled) confirmation to the port layer.
If this state receives a Persistent Connection (Wait) message and receives an
EXTEND_CONNECTION
Received message, then this state shall:
a) send a Transmit EXTEND_CONNECTION message to the SSP transmitter; and
b) send a Persistent Connection Established (Enabled) confirmation to the
port layer.
If this state receives a Persistent Connection (Off) message, then this state
shall:
a) ignore EXTEND_CONNECTION Received messages; and
b) send a Persistent Connection Established (Disabled) confirmation to the
port layer.



More information about the T10 mailing list