The SCSI port driver cannot guarantee synchronization between DMA transfers and the Srb.DataBuffer that has been mapped for the miniport while the SRB is being processed. As a result, miniport drivers that use DMA should not:
The SCSI port driver ensures the contents of Srb.DataBuffer are synchronized with the DMA transfer after the request has been completed (provided the miniport has flushed the DMA channel).
SRB_FUNCTION_IO_CONTROL requests are set up by the SCSI port driver to transfer data from the adapter. The port driver does not copy the contents of Srb.DataBuffer to any pages that the system has remapped (pages are remapped below 16 MB so they are accessible by ISA devices).
As a result, SCSI miniport drivers should not DMA transfer data in Srb.DataBuffer directly to the adapter. Miniport drivers can transfer the data by copying the buffer’s contents into a section of non-cached extension and to the adapter from there.