In looking at a combination of figure 35 and figure 180 in
SAS2r14f, there is a potential that the first valid address frame is lost after
initialization.
During training, there are no ALIGNS inserted for physical link
rate tolerance matching. This means that there can be many more dwords received
than what the elasticity buffer can accommodate for a clock skew mismatch. At the
end of training, there are three identify frames sent and then a address frame may
be sent. All of these occur in less than the 512 bytes that determine when ALIGN
for clock skew management shall be inserted. The case exists where the elasticity
buffer is capable of holding the three IDENTIFY address frames but then overflows
during the first Address frame for a destination phy.
I do not have a proposed fix for this, but unless I have
missed something, this needs to be addressed.
Bill Martin
Emulex
Office of Technology
Industry Standards
916 772-3658
916 765-6875 (Cell)
bill.martin@emulex.com