Question:
Is there a limit on the length of an individual scatter/gather element?
Answer:
No. We are aware that some SCSI PIO drivers have a 64KB limitation on scatter/gather
elements. At present, OS/2 2.0 appears to remain within this limitation.
However, it is recommended that this restriction be lifted because there
is no guarantee that adapter device drivers with such a limitation will
be compatible with future OS/2 operating system releases.
Question:
Is there a limit on the number of elements in a scatter/gather list?
Answer:
No.
Question:
What is the meaning of the field:
ÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ
AdapterInfo->UnitInfo->MaxHWSGList
ÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ
Answer:
This is the maximum number of scatter/gather list entries your adapter hardware
can handle. The OS/2 operating system will ensure that the adapter device
driver is not required to split a sector across a MaxHWSGList boundary.
However, the adapter device driver is responsible for iterating an I/O
command because of limitations in its s/g support.
Question:
What about s/g lists associated with CDB PassThru commands?
Answer:
adapter device drivers are not required to iterate commands through the
CDB PassThru mechanism.
Commands received from SCSI.SYS device class drivers will require a minimum of 16 s/g elements. At present, the number of s/g elements required by device modules written to ASPI interfaces is not known. If the OS2SCSI or OS2ASPI device managers receive an s/g list that does not conform to the adapter device driver's s/g requirement, these device managers will reject the request.
Question:
What is the meaning of the field:
ÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ
AdapterInfo->UnitInfo->MaxCDBXferLen
ÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ
Answer:
This field is not the maximum CDB length. The purpose of this field
relates to the limitations on s/g list lengths and their effect on PassThru
commands.
For adapter device drivers written for adapters that have severe s/g list limitations or unusual s/g address limitations, the adapter device driver might emulate s/g functionality using an I/O buffer. In this case, the adapter device driver would inform the OS2SCSI or OS2ASPI device managers of the length of its emulation buffer by way of the above field. It is up to the adapter device driver to perform this emulation.
Question:
My adapter requires an s/g list format different from the one provided.
Do I need to allocate storage for separate lists?
Answer:
No. Provided that your transformations are reversible, you can reformat
the passed s/g list to what your adapter can accept. You must reverse the
reformatting prior to performing your notification call out.