Public review comments resolution

dallas at zk3.dec.com dallas at zk3.dec.com
Mon May 22 12:07:36 PDT 1995




					    Document Number:
					    X3T10/95-206r1

To:  John Lohmeyer
     Chairperson, X3T10 
     Symbios Logic Inc.  
     1635 Aeroplaza Drive
     Colorado Springs, Colorado 80916



Subject:        Responses to public review comments on CAM

The public review comments from Lawrence Livermore National Laboratory
have been resolved to the satisfaction of Lawrence Livermore National
Laboratory.  The technical comments have been downgraded to editorial
comments by agreement with the editor and Lawrence Livermore National
Laboratory.  The following are the responses to Lawrence Livermore
National Laboratory public review comments on CAM.


Sincerely,



William D. Dallas Technical Editor

Digital Equipment Corporation 
110 Spit Brook Road Nashua, NH. 03060 
MS.  ZK3-3/T79

Phone (603) 881-2508 
Email  dallas at zk3.dec.com 


Format of Comments:

     #xxx (?) Comment on y.y.y

where

     xxx is the comment number,

     ? is the type (E: Editorial, T: Technical), and

     y.y.y is the referenced section number.

Format of Responses:

Rejected, Accepted, or Accepted Partially - Text

Responses:

#001 (E) Comment on list of Tables in Table of Contents

Should Table 18 be listed twice?

Rejected - Revision 12 did not list table twice.

Tables 19 and 20 are out of order.

Accepted - Document corrected.

#002 (E) Comment on 1, first paragraph, first sentence

Change "SCSI Small" to "the Small".

Accepted - Document corrected.

#003 (E) Comment on 3.1.1

As defined, "block" seems to be a noun instead of a verb.  Is that the
intent?

Accepted - Stronger wording added.

Was:  block: This defines an action to prevent access, (e.g., busy).

Now:  block: This defines an action to prevent access, (e.g., to
obstruct the action of or the continuation of a process thread).

#004 (E) Comment on 3.1.7

Move the right parenthesis to follow "queue" instead of "freeze".

Accepted - Document corrected.

#005 (E) Comment on 3.1.11

Insert "that" before "depends".

Accepted - Document corrected.

#006 (E) Comment on 3.1

A definition of "path" seems warranted.  Having the definition point to
clause 9.1.5 seems wise.

Accepted - Document corrected.

New wording:  path: This term describes the address of the XPT or a
SIM/HBA SCSI bus combination.

#007 (E) Comment on 3.1.14

Change "between" to "among" before "vendors."

Accepted - Document corrected.

#008 (E) Comment on 3

A clause listing mnemonics and what they stand for would be useful.

Rejected -  The adding of a mnemonics clause is not warranted or
needed.

#009 (E) Comment on 5, second paragraph, second sentence

Delete the sentence, or replace it with one extolling the benefits of
providing a common way to provide access to SCSI peripherals.

Accepted - Sentence deleted.

#010 (T) Comment on 5.1

If the CAM document should say that only one port in a CAM environment
can be on a given bus, this clause is one of the best places to say
it.  Clause 9.1.5 is another good place.  Since CAM-3 probably will not
have such an assumption or requirement, the rest of the CAM document
should minimize dependence on such an assumption.

It seems preferable that CAM make no such statement or assumption.

Rejected - The document clearly states in a number of places that a
SIM/HBA combination can have a number of SCSI buses but that each SCSI
bus has it's own bus number (Path ID).  The editor has strengthened the
definition of a HBA

#011 (E) Comment on 5.1, Figure 1

Consider showing ports on HBAs.

Rejected - Figure 1 shows the environment not the relationship between
the HBAs and the SCSI buses or the peripheral drivers and the Logical
units.

#012 (E) Comment on 5.2, item j)

Change "pass" to "passing".

Accepted - Document corrected.

#013 (E) Comment on 5.3, item e)

Make "driver" plural.

Accepted - Document corrected.

#014 (E) Comment on 5.4, item d)

After "Manage", delete "of".

Accepted - Document corrected.

#015 (E) Comment on 6.2, paragraph under XPT, second sentence

Make "responsibility" plural.

Accepted - Document corrected.

#016 (E) Comment on 6.4, third paragraph, second sentence

 What are the officially blessed spelling and pronunciation:
     "A XPT" or "An XPT"?

Rejected - The use of "A XPT" or "An XPT" are both correct and the
usage depends on the context of the sentence.

#017 (E) Comment on 6.4, fifth paragraph, third sentence

Is UNIX still a trademark of AT&T, or did AT&T sell the trademark when
they sold the rights to UNIX?

Accepted - Document corrected.

New wording:  One example of a universal operating system is UNIX (a
registered trademark of X/Open Ltd.) and as described in this standard,
software developed for a UNIVOS could be compatible within a Unix
system.

#018 (E) Comment on 6.4, sixth paragraph, first sentence

Should "Operating" be included inside the parentheses following
"LANOS"?

Accepted - Document corrected.

#019 (E) Comment on 6.4, item d) in list of requirements

The current words seem convoluted.  Consider: "Allow the calling driver
or program to interpret sense data returned by SCSI devices."

Accepted - Document corrected.

Old Wording:  Interpretation of sense data returned by SCSI devices by
the calling driver or program;

New Wording:  Allow the calling peripheral driver or program to
interpret sense data returned by SCSI devices;

#020 (E) Comment on 6.4, item g) in list of requirements

Does "determine" mean "learn" or does "determine" mean "control".  The
word "determine" is quite ambiguous here, and should be replaced with
an unambiguous term.

A global electronic search for other ambiguous uses of "determine" may
be worth while.

Accepted - Document corrected.

Determine, determines and determined deleted from document and replaced
with ascertain, ascertains and ascertained.

#021 (E) Comment on 7.3.2, first paragraph, last sentence

Insert blanks after "9," and "10,".

Accepted - Document corrected.

#022 (E) Comment on 7.3.2, second paragraph, first sentence

Change "using 1 of" to "using one of".

Accepted - Document corrected.

#023 (E) Comment on 7.3.2, paragraph in last bullet

In "of an completed", change "an" to "a".

Accepted - Document corrected.

#024 (E) Comment on 7.4, fourth paragraph

In "Unit may keep", change "may" to "to".

Accepted - Document corrected.

#025 (E) Comment on 7.4.2.1, first paragraph, last sentence

A period is needed after the sentence.

Accepted - Document corrected.

#026 (E) Comment on 7.4.2.2, second paragraph, first sentence

Delete "is" from "driver is shall".

Accepted - Document corrected.

#027 (E) Comment on 7.4.2.3, first paragraph, first sentence

In "a EXECUTE", change "a" to "an".

Accepted - Document corrected.

#028 (E) Comment on 7.4.2.3, first paragraph, second sentence

Delete "is" from "... queue is shall ...".

Accepted - Document corrected.

#029 (E) Comment on 7.4.2.3, fourth paragraph, first sentence

In "When a SIMs Logical Unit's", change "SIMs" to "SIM's"
(possessive).

Accepted - Document corrected.

#030 (E) Comment on 7.4.2.3, last paragraph, first sentence

Replace "indicating" with "an indication of".

Accepted - Document corrected.

#031 (T) Comment on 7.5, second paragraph

In step a), "to the reset bus" should be "for the port on the reset
bus" or "for the reset port".

In steps a) and b), "for this bus" should be "for this port".

In step c), path_id should be "port that was reset" or "port attached
to bus that was reset".

In step d), "for the bus" should be "for the port".

Rejected - SCSI-2 does not have the concept of "ports". The usage of
"bus" is correct.

#032 (E) Comment on 7.5, third paragraph, first bullet

Change "shall ensure that" to "shall check whether".

Accepted - Document corrected.

#033 (T) Comment on 7.5, third paragraph, third bullet

Change "detection" to "detecting".

Accepted - Document corrected.

In step b), "bus" probably should be "port".

Rejected - SCSI-2 does not have the concept of "ports". The usage of
"bus" is correct.

#034 (E) Comment on 7.5, last paragraph, first sentence and first
bullet

Are "SCSI BUS DEVICE RESET" and "SCSI DEVICE RESET" supposed to be
different (only one has "BUS") or supposed to be the same?

Accepted - Should be "SCSI BUS DEVICE RESET", document corrected.

#035 (E) Comment on 7.5, last paragraph, first bullet

Append "ly" to the word "successful".

Accepted - Document corrected.

#036 (T) Comment on 7.5, last paragraph

In step a), should "bus" be "path" or "port attached to the bus"?

Rejected - The use of bus is correct.

In step b), should "SIM/HBA for this bus" be "SIM/HBA for this
target"?  If "target" is not correct, should "bus" be "port"?

Accepted - The use of target is correct not bus.

In step c), should path_id be set to "port used to issue the SCSI ...
RESET"?

Accepted partially New wording:  bus that issued the SCSI BUS DEVICE
RESET message,

 In step d), should "bus" be "path" or "port attached to the bus"?

Rejected - The use of bus is correct.

#037 (E) Comment on 7.6, third paragraph, second sentence

The second sentence might be clearer if replaced by: "For registration
with Logical Units, the following Asynchronous Events are possible:".

Rejected - The proposed wording changes sentence context.

#038 (E) Comment on 7.6, third and fourth paragraph

For each list of possible events, the last event listed should be ended
with a period instead of a semicolon.

Accepted - Document corrected.

#039 (E) Comment on 7.6, fourth paragraph, first sentence

Change "is" to "are" before "the following".

Accepted - Document corrected.

#040 (E) Comment on 7.6, fifth paragraph, last sentence

Delete "a" from "The use of a wildcards".

Accepted - Document corrected.

#041 (E) Comment on 7.6

In the paragraph that starts "The peripheral driver can deregister ...
", the end of the first sentence should be "registered values", so
append "ed" to "register".

Accepted - Document corrected.

#042 (E) Comment on 7.6

In the paragraph that starts "The XPT shall be responsible for ensuring
... serial fashion", the last sentence is incomplete.  Before "the SIM"
insert "in" or "within" or rewrite the sentence to state that the SIM
is responsible for serialization.

Accepted - Document corrected.

New wording:  In this case the SIM shall be responsible for
serialization.

#043 (E) Comment on 7.7, second paragraph, second sentence

Before "specified", "is" should be "are".

Accepted - Document corrected.

#044 (E) Comment on 7.8, second and third paragraphs

In the first sentence of each, "it's" should be "its" (possessive).

Accepted - Document corrected.

#045 (T) Comment on 7.8

The next-to-last paragraph, which starts with "When the XPT is called
it will update ...", should be moved so it occurs as part of the
xpt_bus_register() function, and before any discussion of
xpt_bus_deregister().

Accepted - Document corrected.

Probably in that paragraph "the XPT is called" should be replaced by
"xpt_bus_register is called" to reduce confusion as to what is called.

Accepted - Document corrected.

Possibly a paragraph should be added to say what xpt_bus_deregister
shall do when it is called.

Accepted - Document corrected.

#046 (E) Comment on 8.1.6.1, case b), second sentence

The word "it's" should be "its" (possessive).

Accepted - Document corrected.


#047 (T) Comment on 8.1.6.1

In the descriptions of xpt_init() and xpt_action(CCB *), the
descriptions appear to fail to discuss the values returned when the
function returns.  Probably the term "CAM Status" should be replaced by
"return value".

Accepted - Document corrected.


#048 (T) Comment on 8.1.7

The return values for sim_init() and sim_action(CCB *) are never
described -- or, more likely, they are called CAM Status instead of
return values.  The document should be clear what is returned from
these function calls.

Accepted - Document corrected.  Old wording:  The argument is the Path
Id assigned to the SIM and the CAM Status is either success or
failure.

New wording:  The argument is the Path ID assigned to the SIM and the
returned value is either success or failure.

#049 (E) Comment on 9, first paragraph after table 2

The character before "i.e." should be a left parenthesis.

Accepted - Document corrected.

#050 (E) Comment on 9, second paragraph after table 2

In "vary between operating", change "between" to "among".

Accepted - Document corrected.

#051 (E) Comment on 9, paragraph above table 3

Is the first line of this paragraph supposed to be a separate
paragraph?  If so, insert a blank line.


Accepted - Document corrected.

#052 (T) Comment on 9.1.4, Table 5

The reserved range 1B-33h should be 1B-32h.

Accepted - Document corrected.

#053 (E) Comment on 9.1.4, status 38h

Should "... range of the SCSI bus" be "... range of the SIM/HBA"?

Accepted - Document corrected.

#054 (T) Comment on 9.1.5

If the CAM document should say that only one port in a CAM environment
can be on a given bus, this clause is one of the best places to say
it.  Clause 5.1 is another good place.  Since CAM-3 probably will not
have such an assumption or requirement, the rest of the CAM document
should minimize dependence on such an assumption.

It seems preferable that CAM make no such statement or assumption.

Rejected - The use of the term "port" is incorrect for SCSI-2 and this
clause has been updated to delete this usage.

Old wording:  The Path ID specifies the SCSI port on the installed HBA
to which the request is addressed.  Path IDs are assigned by the XPT,
begin with zero, and need not be consecutive.  The Path ID of FFh is
assigned for the XPT.  An HBA may have more than one SCSI port.  A SIM
may support more than one HBA.

New wording:  The Path ID specifies the SCSI bus on the installed HBA
to which the request is addressed. Path IDs are assigned by the XPT,
begin with zero, and need not be consecutive.  The Path ID of Ff is
assigned for the XPT.  A HBA may have more than one SCSI bus.  A SIM
may support more than one HBA.

#055 (E) Comment on 9.2.2, 9.2.3, 9.2.4, 9.2.7 and 9.2.8

 In many of the bullets listing CAM Status values, "indicates" is
 followed by an unneeded comma.  This occurs 3 times in 9.2.2, 3 times
in 9.2.3, 1 time in 9.2.4, 2 times in 9.2.7, and 2 times in 9.2.8.

Accepted - Document corrected.

#056 (T) Comment on 9.2.3, first paragraph, first sentence

In "number of HBAs installed", "HBAs" should be ports.  (See 9.1.5.)

Probably there should be text to mention that there can be multiple
SIMs, each with multiple HBAs, each with multiple SCSI ports, and that
the XPT is responsible for assigning a path ID for each of the ports.
Perhaps a pointer to 9.1.5 would suffice.

Accepted partially - The use of the term "ports" is not correct and
buses should be used. It is felt that this is not a technical comment.

Old wording:  This function shall return information on the installed
addressed HBA hardware,  or the number of HBAs installed.  To obtain
further information on any other HBAs attached,  this function can be
issued for each HBA.  If the Path ID field of the CCB has a value of Ff
(the XPT Path ID), then the only fields that shall be valid upon return
to the caller is the highest Path ID Assigned field and the Version
Number field.  The highest Path ID assigned field shall not be valid if
the Path ID field in the CCB contains a value other than FF.

New wording:  This function shall return information on the installed
addressed HBA/SCSI bus(es) hardware, or the XPT.  To obtain further
information on any other HBA(s)/SCSI bus(es) attached, this function
can be issued for each assigned Path ID.  If the Path ID field of the
CCB has a value of Ff (the XPT Path ID), then the only fields that
shall be valid upon return to the caller is the Highest Path ID
Assigned field and the Version Number field.  The highest Path ID
assigned field shall not be valid if the Path ID field in the CCB
contains a value other than FF.

#057 (T) Comment on 9.2.3, first paragraph below table 8

In the parentheses, "SCSI buses" should be "SCSI ports".

Rejected - SCSI buses the correct usage.

#058 (T) Comment on 9.2.3, second paragraph below table 8

In the second paragraph below table 8, it's not clear how the revision
number for a standard would be determined.  (Annex C has the value
corresponding to revision 11, but is not normative.  And the revision
number for the standard clearly could change.)

Accepted  - Document corrected.

New wording:  The letter suffix usage in the CAM revision numbers
denotes editorial changes in the document and shall not be used in
representing the CAM revision number (e.g., CAM revision 12a is
represented in the Version Number field as 4Ch).

The current CAM revision number is 12b.

#059 (E) Comment on 9.2.3, last paragraph

In the second bullet, "nolonger" should be two words.

Accepted - Document corrected.

#060 (E) Comment on 9.2.4, first paragraph

The first sentence is awkward since it is hard to figure out what "for
the selected Logical Unit" refers to.

Accepted - Document corrected.

Old wording:  This function is provided so that the peripheral driver
can decrement a SIM queue frozen count or determine the SIM queue
frozen count without modification for the selected Logical Unit.

New wording:  This function is provided so that the peripheral driver
can decrement a SIM queue frozen count or determine the SIM queue
frozen count without modification for the addressed Logical Unit.

#061 (E) Comment on 9.2.4, first paragraph

Start the second sentence with "Determining" rather than "To
determine".

Accepted - Document corrected.

#062 (E) Comment on 9.2.4, second paragraph

In the first sentence, change "determine" to "be determined".

Accepted - Document corrected.

#063 (E) Comment on 9.2.4, second paragraph

In each bullet, insert "if the" before "CAM Flag".

Accepted - Document corrected.

In each bullet, insert "is" between "bit" and "set".

Accepted - Document corrected.

In each bullet, replace "places" with "shall place".

Accepted - Document corrected.

In the second bullet, replace "decrements" with "shall decrement".

Accepted - Document corrected.

#064 (E) Comment on 9.2.5 and 9.12.6, first paragraph below table

 A sentence (fifth in 9.2.5, third in 9.2.6) begins with "Further
 more", which should be a single word.

Accepted - Document corrected.

#065 (E) Comment on 9.3.1, fourth paragraph

In "CCB may be a one", change "a" to "in".

Accepted - Document corrected.

#066 (E) Comment on 9.3.4, second paragraph after table 17

In "CCB may be a one", change "a" to "in".

Accepted - Document corrected.

#067 (E) Comment on 10

It would be useful to point to the tables illustrating the CCBs.  It
would be especially helpful to point to the Execute SCSI I/O table.

Accepted - Document corrected.

#068 (T) Comment on 10.1

Should a description of the Autosense Residual Length field be added?
If so, should two's-complement be mentioned (see Annex C)?

Accepted - Document corrected.

New wording:  Autosense Residual Length This field contains the
difference in twos complement form of the number of autosense data
bytes transferred by the HBA compared with the number of autosense
bytes requested by the CCB.  This is calculated by the total number of
autosense bytes requested to be transferred by the CCB minus the actual
number of autosense bytes transferred by the HBA.

#069 (E) Comment on 10.1.2, Table 18, part 1

In the subtable for bits 3 and 2, in the line for bit 3 = 0 and bit 2 =
1, "Cam" should be "CAM".  Possibly a global electronic search of the
document would find more such cases.

Accepted - Document corrected.

#070 (E) Comment on 10.1.2.1, description of bit 4, second sentence

In "list of addresses and length", make "length" plural.

Accepted - Document corrected.

#071 (E) Comment on 10.1.2.4, description of bit 0, second sentence

Delete the second "to" from "to automatically to".

Accepted - Document corrected.

#072 (E) Comment on 10.1.2.5, description of bit 5

Insert "that" before "the Host Target Mode".

Accepted - Document corrected.

#073 (T) Comment on 10.1.8

Must the message buffer be able to hold more than one message?  If so,
how are the boundaries between messages specified?  If not, consider
rewording 10.1.8 to state that multiple messages are impossible or are
outside the scope or are vendor unique, or whatever.

Rejected - A pointer to Clause 11.2.3 has been added that details the
use of the field.

#074 (E) Comment on 10.1.9, first sentence

Insert "a" before "buffer".

Accepted - Document corrected.

#075 (E) Comment on 10.2

Should the CAM status "SCSI device not installed" be added to the list
of possible status values?

Rejected - The CAM Status of "SCSI device not installed" is for the GET
DEVICE TYPE CCB.



#076 (E) Comment on 10.3, probably the third paragraph

In the last sentence, "CCBs" should be "CCB's" (possessive).

Accepted - Document corrected.

#077 (E) Comment on 10.3, third-from-last paragraph (driver shall)

In the last bullet, change the verb "is was" to "was" or "is".

Accepted - Document corrected.

#078 (E) Comment on 10.3, next-to-last paragraph (driver may)

In the last bullet, "with in" should be one word, "within".

Accepted - Document corrected.

#079 (E) Comment on 10.3, last paragraph (SIM/HBA shall)

In the second bullet, "a" should be inserted before "LINKED" in both
places, and "the" should be inserted before the first "CCB".

Accepted - Document corrected.

#080 (E) Comment on 10.3, last paragraph

In the fifth bullet, delete "shall" and place a comma after
"completes".

Accepted - Document corrected.

#081 (E) Comment on 10.3, last paragraph

In the sixth bullet, place a comma after "broken", change the verb
"callback" to "call back", and insert "driver" after "peripheral".

If the verb "callback" should be split into two words, an electronic
global search should help.

Accepted except for the splitting of the word "callback".  The use of
the term "callback" is a normal software term indicating a software
action.

#082 (T) Comment on 11, first paragraph, first sentence

After "specified SCSI", "bus" should be "port".  (See 9.1.5.)

Rejected - The use of SCSI bus is correct.

#083 (E) Comment on 11.1, seventh paragraph, first sentence

Consider changing "once for each command received" to "once when the
command is received".

Rejected - Changes context of the sentence,  the sentence clearly
states "for each command received" as callback occurs.  If the sentence
is changed it implies that only a single command can be received.

#084 (E) Comment on 11.2

In the list of messages to be handled transparently by the SIM/HBA, two
have the parenthetical remark "for specified conditions".  Where are
the specifications for the conditions?

Accepted - Document corrected.

New wording:  (for specified conditions in Clauses 11.2 through 11.2.5)

#085 (E) Comment on 11.2.1

It might be helpful to create three subclauses.  Possibilities are
11.2.1.1 (Enabling and Disabling LUNs); 11.2.1.2 (Initializing and
Maintaining Target CCBs), 11.2.1.3 (Receiving CDBs for non-enabled
LUNs).

If this is done, the seventh and eighth paragraphs after Table 22
(which discuss VU CDBs and disabling LUNs) should be in 11.2.1.1, and
the list of CAM Status values should be in 11.2.1.1.

Rejected - It is felt that the document is clear on these subjects.


#086 (T) Comment on 11.2.1, first paragraph, first sentence

The end of the sentence, "for the HBA", should probably be "for the
SCSI port."  (See 9.1.5.)

Rejected - The use of SCSI bus is correct.

#087 (E) Comment on 11.2.1, Table 22

If Table 22 will be used to describe lists of IMMEDIATE NOTIFY CCBs,
then "TARGET" should be deleted from the title of the table.

In the title, probably "LIST" should be "List" and "TARGET" should be
"Target" if it is retained.

Accepted - Document corrected.

#088 (T) Comment on 11.2.1, second paragraph after Table 22

"SCSI bus specified" should be "SCSI port specified".  (See 9.1.5.)

Rejected - The use of SCSI bus is correct.

#089 (T) Comment on 11.2.1, second paragraph after Table 22

Should this paragraph specify that the driver set the CAM Status value
to "Request Completed by target peripheral driver", as is shown in
B.1.2?

Rejected - The text is correct but the Annex is wrong.  Since the Annex
is informative this is not a technical comment but the Annex has been
corrected.

#090 (E) Comment on 11.2.1, fifth paragraph after Table 22

If the intent of the second bullet is to require that the values of CAM
flags in each Target CCB shall be set to the values of the flags in the
ENABLE LUN CCB, then the wording should be more clear, perhaps: "CAM
flags shall be set to the values of the CAM Flags in the ENABLE LUN
CCB".

Accepted - Document corrected.

Old wording:  CAM Flags shall be the same as those in the ENABLE LUN
CCB

New wording:  CAM Flags shall be set to the values of the CAM Flags in
the ENABLE LUN CCB.

#091 (T) Comment on 11.2.1

Text should be added to specify whether the SIM/HBA is expected to free
Target CCBs when a specific LUN is disabled or whether the driver is
responsible for the CCBs after the LUN is disabled.  The eighth
paragraph following Table 22 (the paragraph that begins "To disable the
selection of a specific LUN ...) may be one good place for such text.

Accepted - Document corrected.

New wording:  Upon disabling the specified LUN, the target peripheral
driver may free all allocated Target CCBs that were associated with the
enabled LUN.

New paragraph in Clause 9 after paragraph 4.

A peripheral driver, the XPT, or a SIM that allocates CCB(s) shall be
responsible for freeing those CCBs it has allocated after the
allocating entity is finished with the CCB(s).  A peripheral driver,
the XPT, or a SIM shall not free any CCB that it has not allocated.  A
peripheral driver, the XPT, or a SIM shall not free a CCB that has been
sent to xpt_action() and has not completed (see Clause 7.3 for further
information on CCB completion).  A peripheral driver, the XPT, or a SIM
shall not free a CCB more then once per allocation of that CCB and
shall be responsible for keeping track of the CCB(s) it is using in a
vendor unique manner.

#092 (E) Comment on 11.2.2, fourth paragraph

Consider adding a new sentence after the second sentence, perhaps:
"Otherwise, the SIM/HBA shall select a CCB with the TARGET CCB
Available flag set."

Accepted - Document corrected.

#093 (E) Comment on 11.2.3, fourth paragraph, first sentence

"Data Valid bit" should be "Data Buffer Valid bit", according to Table
18.

Accepted - Document corrected.

#094 (E) Comment on 11.2.3, fourth paragraph, third sentence

Insert "be" between "shall" and "interpreted".

Accepted - Document corrected.

#095 (T) Comment on 11.2.3, fourth paragraph

Should it be an error for the Data Buffer Valid bit to be set and for
bits 7 and 6 both to be set to indicate "No data transfer"?

Accepted - Document corrected.

New wording:  The SIM shall reject any CCB with the Data Buffer Valid
bit set and the CAM Direction flags indicating No data transfer or
Reserved with a CAM Status of Invalid Request.

#096 (E) Comment on 11.2.4, first five paragraphs

Each paragraph should end with a period, not a semicolon.

Accepted - Document corrected.

#097 (E) Comment on 11.2.4, first paragraph (ABORT message)

In the first sentence, "ABORT" and "initiator" should each be preceded
by "an" rather than "a".  In the second bullet, "I/O" should be
preceded by "an" rather than "a".

Accepted - Document corrected.

#098 (E) Comment on 11.2.4, second paragraph (BUS DEVICE RESET)

In the first sentence, "initiator" should be preceded by "an" rather
than "a".

Accepted - Document corrected.

#099 (T) Comment on 11.2.4, second paragraph (BUS DEVICE RESET)

Assuming that a BUS DEVICE RESET message is directed to a device rather
than to a LUN, it seems the first sentence should be rewritten perhaps
as follows: "When the SIM/HBA receives a BUS DEVICE RESET message from
an initiator, it shall perform the following actions for each
phase-cognizant LUN that uses the port over which the message was
received:".

Accepted partially.

New wording:  When the SIM/HBA receives a BUS DEVICE RESET message from
an initiator, it shall perform the following actions for each enabled
Phase-Cognizant LUN that uses the SCSI bus over which the message was
received:

#100 (E) Comment on 11.2.4, second paragraph (BUS DEVICE RESET)

The second bullet seems to have two independent ideas.

Probably the second bullet should discuss only the asynchronous event
callback.

The material in parentheses should become a separate bullet, with
parentheses and "e.g." deleted.

Accepted - Document corrected.

#101 (T) Comment on 11.2.4, third paragraph (TERMINATE I/O)

The first outermost bullet applies when the SIM/HBA has no EXECUTE
TARGET I/O CCBs. The bullet specifies disconnecting (conditionally) and
rejecting the next EXECUTE TARGET I/O CCB.

The third outermost bullet seems to discuss an almost identical case,
except the SIM/HBA has a CCB that is so close to being finished that
its processing should complete normally.  It would seem that this
bullet should also specify disconnecting (again conditionally) and
rejecting the next EXECUTE TARGET I/O CCB, at least if the I/O process
still exists after the CCB is completed.  Presently it does not do so.

Rejected - The reason for this behavior is that all processing has been
completed for this I/O process except for the COMMAND COMPLETE
message.  The SIM/HBA then sends the COMMAND COMPLETE message to
complete the I/O process.

The peripheral driver has indicated by sending this EXECUTE TARGET I/O
CCB that this is the last one for the I/O process with the Status
Buffer Valid bit set.  The peripheral driver only needs to know about
the previous cases where it must get re-involved with the I/O process.

#102 (E) Comment on 11.2.4, third paragraph (TERMINATE I/O)

In the first sentence, "initiator" should be preceded by "an" rather
than "a".

In the second outermost bullet, "that" should precede "have a CAM
Status".

In the first sub-bullet under the second outermost bullet, insert "is"
after "bus" and before "allowed".

Accepted - Document corrected.

#103 (E) Comment on 11.2.4, fourth paragraph (INIT DETECTED ERROR)

In the first sentence, "INITIATOR" and "initiator" should each be
preceded by "an" rather than "a".

In the first bullet, "I/O" should be preceded by "an" rather than "a".

In the second outermost bullet, "that" should precede "have a CAM
Status".

In the first sub-bullet under the second outermost bullet, insert "is"
after "bus" and before "allowed".

Accepted - Document corrected.

#104 (E) Comment on 11.2.4, fifth paragraph (BUS RESET)

The first bullet seems to have two independent ideas.

Probably the first bullet should discuss only the asynchronous event
callback.

The material in parentheses should become a separate bullet, with
parentheses and "e.g." deleted.

Accepted - Document corrected.

#105 (E) Comment on 11.2.4, last paragraph, last sentence

Change "drivers" to "driver's" (possessive).

Accepted - Document corrected.

#106 (E) Comment on 11.3.3, first paragraph, fourth sentence

Preceding "DISABLE", "an" should be "a".

Accepted - Document corrected.

#107 (E) Comment on 11.3.3, sixth paragraph, first two sentences

These sentences appear to say the same thing, but differ enough that
it's not clear.  If they are saying the same thing, please delete one
of them.

Rejected - The sentences are similar but have different thoughts.

#108 (E) Comment on 11.3.3.1.1

In this clause (in contrast to 11.3.3.1.2, 11.3.3.1.3.x, 11.3.3.1.4,
and 11.3.3.1,5) most of the steps begin with "The SIM/HBA shall ...".
If 11.3.3.1.1 is to keep its current style, then step A) should also
start with "The SIM/HBA shall ..." and the text before step A) should
end with a period instead of a semicolon.

Note: It would probably be better if clauses 11.3.3.1.2 through
11.3.3.1.5 were more like 11.3.3.1.1 in this respect.  Several of the
steps are complex enough that lists of complete sentences are more
manageable than sentences that contain entire lists.  (The comments on
those clauses are written assuming the later clauses will *not* be made
like 11.3.3.1.1, however.)

Accepted partially - The phase "The SIM/HBA shall ..." has been deleted
and the period added.

#109 (E) Comment on 11.3.3.1.1, step A)

Probably "pathid" should be "path ID".

Accepted - Document corrected.

#110 (T) Comment on various including 11.3.3.1.1, step A)

Taking into account the possibility of multiple ports on the same bus,
the path ID should be set to identify the port, rather than the bus.
Consider replacing "the bus number of this bus" with something like
"the specifier of the SCSI port".

Whatever is done should be done also in 11.3.3.1.2.1 B); 11.3.3.1.3.2
C); 11.3.3.1.3.3 B); 11.3.3.1.3.5 D); and 11.3.3.1.4 A).

Rejected - The use of bus is correct.

#111 (T) Comment on 11.3.3.1.1, step A)

If reasonable, a global check of the document should be made to look
for other places where a path ID is said to identify a bus.  (Clause
9.1.5 is assumed to be correct.)  If CAM expects only one port of a CAM
environment model (Figure 1) is on a particular bus, that should be
stated, preferably only once.  That minimizes future changes needed in
CAM if later versions allow for multiple ports on the same bus or same
SCSI domain.

Rejected - The use of bus is correct.

#112 (E) Comment on various including 11.3.3.1.1, step E)

Before "unique," change "an" to "a".  Change "CCBs" to "CCB's" since it
is possessive.

Make similar changes in 11.3.3.1.2.1 D), 11.3.3.1.3.2 F), 11.3.3.1.3.3
E), 11.3.3.1.3.5 E), 11.3.3.1.4 C), and 11.3.3.1.5 C).

Accepted - Document corrected.

#113 (E) Comment on various including 11.3.3.1.1, step F)

Consider changing the verb "callback" (one word) to "call back" (two
words).

Rejected - For reasons stated before.

Before "IMMEDIATE," the word "available" should be deleted.

Make similar changes in 11.3.3.1.2.1 G), 11.3.3.1.3.2 H), 11.3.3.1.3.3
G), 11.3.3.1.4 D), and 11.3.3.1.5 F).

Accepted - Document corrected.

#114 (E) Comment on 11.3.3.1.1, next to last paragraph

Before "NOTIFY," "an" should be "a".

Accepted - Document corrected.

#115 (E) Comment on 11.3.3.1.2, first paragraph

For clarity, append "via the IMMEDIATE NOTIFY CCB" at the end of the
sentence.

Accepted - Document corrected.

#116 (E) Comment on various including 11.3.3.1.2.1, step G)

Consider deleting "The SIM/HBA shall" from the beginning of each of the
first two sentences and capitalizing the following word.

Make similar changes in 11.3.3.1.3.2 H), 11.3.3.1.3.3 G), 11.3.3.1.4
D), and the one sentence in 11.3.3.1.5 F).

Accepted - Document corrected.

#117 (T) Comment on various including 11.3.3.1.2.1

Consider adding text at the end of the clause to specify what the Host
Target Mode peripheral driver shall do to complete processing.

Consider similarly adding text at the end of 11.3.3.1.3.2,
11.3.3.1.3.3, and 11.3.3.1.4 (probably nothing to be done in this last
case).

Rejected - It is specified by SCSI-2 and in various place in the
document (e.g., an ABORT message terminates the I/O process).

#118 (E) Comment on 11.3.3.1.3.2, steps F) and G)

Consider deleting "The SIM/HBA shall" from the beginning of the first
sentence and capitalizing the following word.

Accepted - Document corrected.

#119 (E) Comment on 11.3.3.1.3.2, step G), second sentence

Delete "is" from before "found".  Change "CCBs" to "CCB's"
(possessive).

Accepted - Document corrected.

#120 (E) Comment on 11.3.3.1.3.3, step E)

Consider deleting "The SIM/HBA shall" from the beginning of the first
sentence and capitalizing the following word.

Accepted - Document corrected.

#121 (E) Comment on 11.3.3.1.3.5, step A)

Consider deleting "the SIM/HBA shall" from the first sentence.

Accepted - Document corrected.

#122 (E) Comment on 11.3.3.1.3.5, step E)

Consider deleting "The SIM/HBA shall" from the beginning of the first
sentence and capitalizing the following word.

Accepted - Document corrected.

#123 (E) Comment on 11.3.3.1.3.5, step H)

The first sentence should end with a period, not with a comma (not sure
if I have a dirty copy).

Accepted - Document corrected..

#124 (E) Comment on 11.3.3.1.4, step C)

Consider deleting "The SIM/HBA shall" from the beginning of the first
sentence and capitalizing the following word.

Accepted - Document corrected.

#125 (E) Comment on 11.3.3.1.4, step E)

Delete the second instance of "events".

Accepted - Document corrected.

#126 (T) Comment on 11.3.3.1.5, step A)

The words "the bus number of this HBA" are inappropriate, since an HBA
can have multiple ports, and each port would have its own path ID.
There is a possible complication if a LUN was used with more than one
port on the failed HBA.  If a LUN were used with only one port, then
replacement text might be "the specifier of the SCSI port used with
this LUN."

Accepted Partially - The use of "ports" is not correct for SCSI-2;

New wording:  Set the Path ID of an IMMEDIATE NOTIFY CCB to the XPT
assigned SCSI bus number.  Set the Target ID of the HBA for this SCSI
bus, and the LUN to the LUN number being reported.

#127 (E) Comment on 11.3.3.1.5, step C)

Consider deleting "The SIM/HBA shall" from the beginning of the first
sentence and capitalizing the following word.

Accepted - Document corrected.

#128 (T) Comment on 11.3.4, first paragraph after Table 24

The first paragraph discusses possible CAM Status values when a driver
passes IMMEDIATE NOTIFY CCBs to a SIM/HBA.  Does the document specify
any circumstance when a driver passes such CCBs to a SIM/HBA other than
for the purpose of providing or adding to a list of such CCBs?  If
there is no other circumstance, why would a driver provide any of those
status values?

Probably this paragraph should be deleted or else text added somewhere
to explain a circumstance where passage of such CCBs with such status
values makes sense.

Rejected - The CAM Status values are the result of some action by the
SIM/HBA throughout the document and this case is no exception. When the
peripheral driver sends a CCB the CAM Status is Request in Progress and
action of the SIM/HBA results in a different CAM Status.

Clarification has been added to the document as follows:  The following
are the only possible CAM Status values for the IMMEDIATE NOTIFY CCB
passed to the SIM/HBA from the Host Target Mode peripheral driver
(e.g., rejected by the SIM/HBA):

The following are the only possible CAM Status values for the IMMEDIATE
NOTIFY CCB passed from the SIM/HBA to the Host Target Mode peripheral
driver (e.g., event notification by the SIM/HBA):

#129 (T) Comment on 11.3.5, second paragraph after Table 25

The paragraph discusses possible CAM Status values for a NOTIFY ACK CCB
passed from the SIM/HBA to the driver.  Does the document specify any
circumstance where a NOTIFY ACK is passed from SIM/HBA to driver?  If
not, either delete this paragraph or add text somewhere explaining the
circumstances.

Rejected - Revision 12 has the CCB going from the peripheral driver to
the SIM/HBA which is correct.

#130 (T) Comment on 11.3.5, second paragraph after Table 25

The paragraph discusses possible CAM Status values for a NOTIFY ACK CCB
passed from the SIM/HBA to the driver but does not list any possible
values.  If the paragraph is not deleted, values should be listed.

Accepted partially - The sentence has been deleted but since there were
no CAM Status values listed there are no possible CAM Statuses. This is
an editorial not technical comment.

#131 (E) Comment on 11.3.5, last paragraph

In "is delivered buy", "is" should be "are" and "buy" should be "by".

Accepted - Document corrected.

#132 (E) Comment on 11.3.6, Step D) 4) a) for drivers

Change "Length, shall" to "Length.  These fields shall" to be
consistent with step D) 5) a).

Accepted - Document corrected.

#133 (E) Comment on 11.3.6, step D) 5) e) for drivers

The first sentence ends with two periods.  Delete the extra.

Accepted - Document corrected.

#134 (E) Comment on 11.3.6, step D) 6) for drivers

In the last sentence, change "is greater" to "larger".

Accepted - Document corrected.

New wording:

If a vendor unique command CDB is larger than the CDB field for the
Accept Target I/O, then the CDB field shall contain a pointer to a
buffer of sufficient length.


#135 (E) Comment on 11.3.6, paragraph for SIM/HBA

In the paragraph that starts "When the SIM/HBA receives ...", insert
"a" after "receives".

Accepted - Document corrected.

#136 (E) Comment on 11.3.7

For the CAM status value "Cannot Provide Requested Capability," for
reason C) the text is not indented consistently with A) and B).

Rejected - Rev. 12 is indented correctly.

#137 (T) Comment on 11.3.7

The descriptions of the fields "Pointer to Target CCB list" and
"Pointer to Immediate Notify CCB list" both fail to describe the format
of a list.  A pointer to Table 22 is nearly sufficient.  The title of
Table 22 appears inappropriate for a list of Notify CCBs.  Perhaps the
title of Table 22 should be simply "CCB List".

Accepted - Document corrected.

#138 (T) Comment on 11.3.8.2, step A)

Change "not set" to "set" following "If the disconnect privilege bit
is".  (Currently step A is inconsistent with text in 11.2.2 on page 55
and 11.2.4 on page 58).

Rejected - The text is referring to the DiscPriv bit in the  IDENTIFY
message, the text has been corrected to reflect the bit name.

New wording:  If the DiscPriv bit is not set in the IDENTIFY message
and the Disconnect Mandatory bit was set in the target mode specific
CAM Flags field of the ENABLE LUN CCB, then the SIM shall go to BUS
FREE.

#139 (E) Comment on 11.3.8.2, step A)

In the note, clause 11.3.3 seems to be a poor cross-reference.  Clauses
11.2.2 and 11.2.4 seem to have clearer text.

The solution is probably to put clear text into 11.3.3 or some other
place and have the note reference the clear text.

Rejected - Clauses 11.2.2 and 11.2.4 are for phase-cognizant mode
only.


#140 (E) Comment on 11.3.8.2, step F)

The first sentence of this step seems to specify the same action that
step A) would already have performed.  Should this sentence be
deleted?  Should step A) be deleted?

Rejected - Both steps are distinct.

#141 (T) Comment on 11.3.8.2, step G)

"CDB completion" should be "CDB received".

Accepted - Document corrected.

Changed the document where appropriate to "CDB Received Completion
Function".


#142 (T) Comment on 11.3.8.3

In the title of this clause and in the first sentence, "CDB completion"
should be "CDB received" in both places.  In the title, capitalize
"Received".

Rejected - The term "CDB completion" is correct since a total CDB may
not be received.


#143 (E) Comment on 11.3.8.3

In step A), it may be helpful to spell out how to fill in some of the
fields, particularly the callback completion function.  Perhaps after
"the callback completion function" add (which shall be the Host Target
Mode peripheral driver's Continue Target I/O callback completion
function)".

Rejected - Throughout the document the explanation of  callback
completion functions and other fields are done.

#144 (T) Comment on 11.3.8.3

After step A), consider inserting text to say that, whether the Accept
Target I/O CCB is re-used or not, the SIM/HBA does not use it again
until it is reissued by the driver.

Rejected - The SIM/HBA does not use any CCB again after the callback
unless stated otherwise.

#145 (E) Comment on 11.3.8.4, step G) 2)

The sentence should end with one period, not two.

Accepted - Document corrected.

#146 (E) Comment on 11.3.8.4, step G) 4)

After "the CCB", change "has" to "have".

Accepted - Document corrected.

#147 (T) Comment on 11.3.8.6

In step B) for command reception errors, the words "in incoming the
CDB" do not make sense.  Probably the two middle words were
transposed.

Accepted - Document corrected, the words were transposed.

Even with that correction, it is not clear from the text whether these
words are intended to cover the cases of a CDB length error or of an
unsupported command Group code.  If both of these cases are intended to
be covered, then perhaps the words "If the condition was an error in
incoming the CDB" should all be simply deleted, since this set of steps
already assumes some kind of error in the CDB or its reception.

Accepted - Sentence reworded.

New Wording:  Form the SCSI-2 required 18 bytes of correct SCSI sense
data and place it in the ACCEPT TARGET I/O CCB sense buffer.

#148 (E) Comment on 11.3.8.6

In the paragraph that starts "If the SIM/HBA detects Data phase, ...",
delete "or" before "Message Phase" and delete the comma that follows
"errors".

Accepted - Document corrected.


#149 (E) Comment on 11.3.8.6

There are two paragraphs that begin "The Host Target Mode peripheral
driver shall be ...".  In each of these, insert "for" before "the
creation" and insert "of the" after "preservation".

Accepted - Document corrected.

#150 (E) Comment on 11.3.8.7

In the second bullet under "initial connection," change "messages" to
"message" (singular) and change "has" to "have" (plural).

Accepted partially - The term "Queue Tag messages" is plural as defined
by SCSI-2.

New wording:  The IDENTIFY message and the Queue Tag messages have been
processed for this connection without error with the ATN signal false.

#151 (T) Comment on 11.3.9 and 11.3.10, Tables 27 and 28

In each table, the autosense residual length field should be "1", not
"2".

Accepted - Document corrected.

#152 (E) Comment on 11.3.11, step A) for a driver

Delete the comma.

Accepted - Document corrected.

#153 (E) Comment on 11.3.11, step D) for a driver

Inside the parentheses, change "if" to "of".

Accepted - Document corrected.

#154 (T) Comment on 11.3.11, step C) for a SIM

Either in this step or in a new step, state that the ENABLE LUN CCB
shall be returned with a CAM Status of Request Completed without
Error.

Accepted - This is not a technical comment.

New wording:  Upon successful completion of the disable for the Host
Target Mode LUN (indicated by a CAM Status of Request Completed without
Error) the Host Target Mode peripheral driver shall own all IMMEDIATE
NOTIFY CCBs it sent to the SIM/HBA.

#155 (E) Comment on 11.3.12

Clause 11.3.2.1 step A) 6) talks about "registered" LUNs whereas clause
11.3.2.2 step A) 6) talks about "enabled" LUNs.  The same word should
be used in both places.  Probably "enabled" is better.

Accepted - Document corrected.

#156 (E) Comment on 11.3.12.2

In step A) 1) b) "SIM" should be "SIM/HBA".  (Like in 11.3.2.1.)


Accepted - Document corrected.

#157 (E) Comment on 11.3.12.2

In step A) 5) change "an" to "a" before "NOTIFY".  (Like in 11.3.2.1.)

Accepted - Document corrected.  #158 (E) Comment on 11.3.12.2

In step A) 6), insert "be" into "shall cleared".  (Like in 11.3.2.1.)

Accepted - Document corrected.

#159 (E) Comment on 11.3.13, last paragraph

Case C should be "All other commands" (plural).

Accepted - Document corrected.

#160 (T) Comment on 12

It is unclear how engines are told to process data.  The last
paragraph, which talks about the destination data length, destination
data maximum length, and source residual length, implies that EXECUTE
ENGINE CCBs are used.  By contrast, the second and third paragraphs
imply that data is first submitted by entirely unspecified means, only
after which the EXECUTE ENGINE REQUEST CCB is used for actual
transmission.

However, if EXECUTE ENGINE CCBs can be used both to submit data to an
engine and also to tell the SIM/HBA to send processed data, there
should be a way to specify which of these uses is intended.

The CAM document should be more explicit either on how EXECUTE ENGINE
CCBs are filled in for the two different purposes, or else on the fact
that the document describes only one of these purposes.

Accepted - The use of EXECUTE ENGINE CCBs is wrong, the correct usage
should be EXECUTE SCSI I/O REQUEST CCB.

New wording:  One use of engines is to compress data.  In this mode, a
device driver first submits data to the engine using the EXECUTE ENGINE
REQUEST CCB.  Once the engine has completed processing the data, an
EXECUTE SCSI I/O REQUEST CCB then can be built for the compressed data
and sent to an SIM/HBA.

The engine model allows for the addressing of buffer memory located on
the HBA.  The buffer addressing appears to the host as contiguous
space.  Using this model, it is possible to submit multiple EXECUTE
ENGINE REQUEST CCBs until the engine buffer is full.  Once the full
condition is met, an EXECUTE SCSI I/O REQUEST CCB then can be built for
the data and sent to an SIM/HBA.


#161 (T) Comment on 12.1, Table 29

The table should specify the size of the CCB Length as "2".

Accepted - Document corrected.

#162 (E) Comment on 12 and 12.2

Clause 12 mentions "EXECUTE ENGINE REQUEST CCB" twice.  Clause 12.2
(third paragraph) mentions "execute engine CCB" once.  Table 30 is
headed "EXECUTE ENGINE CCB".

These should be consistent as to whether "request" is present or not.

These should be usually consistent regarding whether all upper case,
all lower case, or first letter upper case should be used.

Accepted - Document corrected.

#163 (E) Comment on Annex A

The title should start "Annex", not "ANNEX".

Accepted - Document corrected.

#164 (E) Comment on Annex B, first sentence

Change clause "17" to "11".

Accepted - Document corrected.

#165 (T) Comment on Annex B.1.1 and B.1.2

Clause B.1.2 (two times out of three) and B.1.1 (zero times out of one)
shows the driver setting targetCCB.camStatus.  For consistency, either
delete the two or add two more.

Accepted - Document corrected.

#166 (E) Comment on Annex B.1.1

The first assignment should be to "target1CCB" rather than
"targetCCB1", for consistency with the rest of B.1.1 and B.1.2.

Accepted - Document corrected.

#167 (E) Comment on Annex B.1.1

Following the note, "3nable" should be corrected.

Rejected - Rev. 12 does not contain these errors.

#168 (E) Comment on Annex B.1.1 and B.1.2

For the third from last statement in each of these clauses, "enableCb"
should be "enableCCB".

Rejected - Rev. 12 does not contain these errors.

#169 (E) Comment on Annex B.1.2

In the assignment immediately above the Note, "[n]" should be "[n-1]".

Accepted - Document corrected.  #170 (T) Comment on Annex B.1.3

If camStatus should be set in B.1.1 and B.1.2, probably it should be
set in B.1.3.

Rejected - CAM Status should not be set by peripheral driver.

#171 (E) Comment on Annex C, second sentence

The sentence, which starts with "The contents ...", should be deleted
or updated for a real standard.

Accepted - Document corrected.

New wording:  This  Annex contains an example of definitions and data
structures for the CAM Subsystem interface.  The contents of this
example should match the data structures and constants that are
specified in this standard.

#172 (T) Comment on Annex C

There appear to be no definitions for the IMMEDIATE NOTIFY CCB and the
NOTIFY ACKNOWLEDGE CCB.

Accepted - Document corrected.

#173 (T) Comment on Annex C

The definition of structure ccb_en_lun lacks the pointer and count for
the IMMEDIATE NOTIFY CCBs and the SIM private area.

Accepted - Document corrected.

#174 (E) Comment on Annex C

The Defines for the CAM Flags field in the CCB header appear to be
specific to one endian vs. the other.  Consider changing the
definitions to be a byte each rather than 32 bits, or consider adding a
comment that these definitions may have to change for some
architectures.

Rejected - This is an example (informative) and is not considered  part
of the standard.


#175 (T) Comment on Annex C

The define for the CAM Flag with value 0x00010000 (perhaps
CAM_SG_List_Phys) is missing.  Consider adding it.

Accepted - Document corrected.

#176 (E) Comment on Annex C

The last two defines belong with the Phase cognizant mode flags and
should not be separated.  Consider moving them.

Accepted - Document corrected.

#177 (E) Comment on Annex C

In the comments of the last three defines for asynch callback CCB
fields, "A" should be "An".  For example, "A unsolicited" should be "An
unsolicited".

Accepted - Document corrected.

#178 (E) Comment on Annex C

In the third define for engine inquiry, "lossly" should be corrected.

Accepted - Document corrected.

#179 (T) Comment on Annex C

The defines for engine inquiry algorithms all have value 0x00.  The
last three should be corrected to 0x01, 0x02, and 0x03 respectively.

Accepted - Document corrected.

#180 (E) Comment on Annex C

If the list of CCB definitions changes (e.g., add IMMED NOTIFY or
NOTIFY ACK), the definition of ccb_size_union should change to match.

Accepted - Document corrected.

GENERAL COMMENTS

General comments are those that are not easily limited to a single
clause.

#181 (E) Alignment of clause titles

In the Table of Contents, most clause numbers appear to be followed by
two blanks but some are followed by one.  Clause numbers apparently
followed by a single blank are 1, 2, 4, 5.2, 6, 6.3, 6.4, 7, 7.4.1,
7.4.2.1, 7.5, 8.2.1 through 8.2.5, 9.2.1, 9.2.6, 10.1, 10.1.2.5,
10.1.7, 10.1.20, and all of clause 11 except for 11.3.3.1.3.4 and
clause 11 itself.  Number 10.2 appears to be followed by 3 blanks.  The
clause headings appear to have the same number of blanks where they
appear in the body of the document.  It seems preferable to use the
same number of blanks consistently.

Accepted - Document corrected.

#182 (E) Alignment of clause titles

There are no clauses B.2 or 11.3.3.1.2.2, so there should not be
clauses numbered B.1 or 11.3.3.1.2.1.

Accepted partially - The deletion of the B.1 clause accepted but the
deletion of the separate mandatory ABORT message handling
(11.3.3.1.2.1) is rejected.  The editor feels that while there are not
further number clauses (11.3.3.1.2.2) this clause does warrant a
separate and distinct subclause.

#183 (E) Comment on word usage

In general, "shall be responsible for <verb>ing" can be replaced with
"shall <verb>".

Rejected - The use of "shall be responsible for <verb>ing" clarifies
what section of CAM is required to fulfill certain requirements (e.g.,
SIM/HBA or the peripheral driver).

#184 (E) "NULL" vs. "zero" for pointers

In the third and second from last paragraphs of 11.3.6 (steps E) and F)
that a SIM/HBA performs upon receipt of a Host Target Mode ENABLE LUN
CCB), usually a pointer is checked to see if it is non NULL.  However,
in the first line of step E), "non zero" is used instead.

In 11.3.7, when the pointer to Target CCB list field is described, for
a disable LUN request this field shall be "zero".

If it makes a difference whether NULL or zero is used for pointers,
probably the document should be electronically scanned to check for
cases where "zero" or "NULL" is used incorrectly.

Accepted - Document corrected to replace zero pointer fields with
null.


#185 (E) Formatting and punctuation

There were instances, not noted above, of unneeded or missing commas,
of extra blanks, of missing blank lines, and of extra blank lines.

Accepted - Document scanned for the above corrections and updated where
appropriate.

#186 (E) Comma-delimited lists

Sometimes the document has lists such as "A, B and C" with no comma
after B.  An example is in 3.1.14  Other times, there is a comma after
"B", for example the end of the first paragraph in 7.3.2.  Consistency
would be desirable.

Accepted partially - Where multiple word lists are encountered (e.g.,
software peripheral device drivers, the transport, and the software
interface modules) commas have been added for clarity.  Single word
lists (e.g., dog, cat and mouse) do not need the comma for clarity.


#187 (E) Comment on 5.1, first paragraph, third sentence

The new comma after "peripheral drivers" is not needed.

Accepted - Document corrected.

#188 (E) Comment on 9.1.4, 10.2, and possibly elsewhere

Consider changing references to "CAM-2" to say "CAM-3" or consider
saying "future versions of CAM".  The cases I've noticed are in notes
that apply to CAM status 1Ah, but a global search may be warranted, and
different changes may be appropriate depending on the context.

Accepted - Document corrected.

New wording:

"future versions of CAM"

#189 (E) Comment on 7.8, following typedef of CAM_SIM_ENTRY

In the first sentence, "calls" should be "call" -- "... the XPT shall
update ... and call ...".

Accepted - Document corrected.

#190 (E) Comment on 8.1.6.1, under a) xpt_init()

The red-lined document appears to have three paragraphs under a) long
xpt_init().  The last two appear to be nearly redundant.  The third,
which discusses CAM status, seems incorrect and should be removed.

Rejected - Wordperfect error, not in non marked document.

#191 (E) Comment on 9.2.3, first paragraph

In the second sentence, consider replacing "other HBAs" with "HBA/SCSI
bus(es)".  Regarding "other", it is not clear what this word means.
(Does the caller want "further" information on unaddressed HBAs?)

Accepted - Document corrected.

New wording:  To obtain further information on specific HBA(s)/SCSI
bus(es) attached, this function can be issued for each assigned Path
ID.

In the third sentence, "... only fields ... is ..." should be "... only
fields ... are ...", since two fields are valid.

Accepted - Document corrected.

#192 (E) Comment on 11.3.8.2, step A)

I originally completely misunderstood the intent of step A.   I did not
realize that step A discusses a situation where the SIM shall not
proceed with the remaining steps.  I've said orally that it is
desirable to be very clear whenever performing a step means that
processing is done and/or later steps are to be skipped.

This may apply to other places in the document also.

Accepted - Document corrected.

Changes:

Deleted "otherwise" where appropriate from the document.

The document is clear in the needed steps for error condition handling
through the use of pointers in the text and notes.

#193 (E) Comment on 12

I like the new text.  Here are a few nits.  (Note: 12.1 and 12.2 seem
fine.)  Should the title of clause 12 be "HBA engines" or "SIM/HBA
engines"?

Rejected:  The use of HBA is specifically referring to an hardware
adaptor functionality not contain in the SIM.

In paragraph 1, sentence 1, should "an HBA" be "a SIM/HBA"?

Rejected:  The use of HBA is specifically referring to an hardware
adaptor functionality not contain in the SIM.

In paragraph 1, last sentence, in "an peripheral HBA" should "an" be
"a" and should HBA" be "SIM/HBA"?

Accepted - Document corrected.

New wording:  "a peripheral HBA"

In the last sentence of paragraph 2, in "an SIM/HBA" should "an" be
"a"?

Accepted - Document corrected.  The text is referring to the SIM/HBA
combination.

New wording:  "a SIM/HBA"

In paragraph 3, should the first sentence end with "HBA" or "SIM/HBA"?

Rejected:  The use of HBA is specifically referring to an hardware
adaptor functionality not contain in the SIM.

In the last sentence of paragraph 3, in "an SIM/HBA" should "an" be
"a"?

Accepted - Document corrected.

New wording:  "a SIM/HBA"

#194 (E) Comment on 11.3.3.1.5, step E)

Consider deleting "The SIM/HBA shall" from the beginning of the
sentence and capitalizing the following word.

Accepted - Document corrected.











More information about the T10 mailing list