Hi,

 

I have an SAS error recovery use case which can not

Solve by myself after reading the SAS-1.1 specification Rev 9e.

 

The use case scenario starts when the Device Server detects

A Data Offset Error (assume that the first of two data

Frames is dropped/lost) during a Write command.

 

As stated in the spec, the Device Server sets the appropriate

SCSI error message in the SSP_RESPONSE frame and sends

It to the initiator.

 

Ex)

 

Initiator                                                  Target

 

---------------SSP_Command(WRITE)------------à

 

ß-----------------------------ACK-------------------------

 

ß----------------------------SSP_XFR_RDY----------

 

---------------------------------ACK-----------------------à

 

--------------SSP_DATA-1-------------à DROPPED/LOST

 

--------------SSP-DATA-2------------------------------à      Data Offset Error is detected

 

ß------------------------------ACK-2-----------------------

 

ß-----------SSP_RESPONSE(DATA_OFFSET_ERROR)

 

 

QUESTION-1: Can SSP_RESPONSE be sent in the same connection

Or does it need to open a new connection?

 

QUESTION-2: If SSP_RESPONSE is received when ACK-TOV is still

Running, is the ACK_TOV timer supposed to be cancelled? If so, can someone

Refer me to the place in the SAS spec where this is mentioned.

 

QUESTION-3: Does closing a connection force cancelling of all

Active timers, such as, ACK_TOV timer?

 

QUESTION-4: does SAS spec mention about how ACK_TOV,

DONE_TOV, AND BREAK_TOV timers interact e.g. priority, preemption?