QErr bit and Multi-Initiator
Charles Binford
chas at smtplink.wichitaks.ncr.com
Thu Aug 11 11:39:17 PDT 1994
I do not understand how QErr bit works in a multi-initiator environment. In
SCSI-2 (and I assume SCSI-3 wording is similiar) it says:
"A QErr bit of one specifies all remaining suspended I/O processes shall be
aborted after the contingent allegiance condition..... A unit attention
condition shall be generated for each initiator that had suspended I/O processes
aborted except for the initiator that had the contingent allegiance
condition...."
What I don't understand is what prevents two initiators from continuously
aborting each other's I/Os? Consider the following:
Initiator A Initiator B
----------- -----------
Send Tag 1
Send Tag 2
Send Tag 3
Check Tag 1
ReqSns
(the CA is now cleared. Tags 2 and 3 are aborted)
Send Tag 4
Send Tag 5
Check Tag 5
ReqSns (unit attention that Tag 3 had been aborted)
(the CA is now cleared. Tag 4 is aborted)
Send Tag 6
Send Tag 7
Check Tag 7
ReqSns (unit attention that Tag 4 had been aborted)
(the CA is now cleared, Tag 6 is aborted)
....
...
forever???
Am I missing something obvious?
Does SCSI *require* multi-initiators to have some external sychronization if
QErr is enabled?
Charles Binford
More information about the T10
mailing list