Author: bonefish Date: 2010-06-21 18:19:49 +0200 (Mon, 21 Jun 2010) New Revision: 37199 Changeset: http://dev.haiku-os.org/changeset/37199/haiku Modified: haiku/trunk/src/add-ons/kernel/generic/scsi_periph/io.cpp Log: read_write(): Consider a request created from an io_operation DMA safe. This saves some checking in the bus manager. Modified: haiku/trunk/src/add-ons/kernel/generic/scsi_periph/io.cpp =================================================================== --- haiku/trunk/src/add-ons/kernel/generic/scsi_periph/io.cpp 2010-06-21 16:14:31 UTC (rev 37198) +++ haiku/trunk/src/add-ons/kernel/generic/scsi_periph/io.cpp 2010-06-21 16:19:49 UTC (rev 37199) @@ -123,6 +123,11 @@ request->flags = isWrite ? SCSI_DIR_OUT : SCSI_DIR_IN; + // io_operations are generated by a DMAResource and thus contain DMA + // safe physical vectors + if (operation != NULL) + request->flags |= SCSI_DMA_SAFE; + // make sure we avoid 10 byte commands if they aren't supported if (!device->rw10_enabled || device->preferred_ccb_size == 6) { // restricting transfer is OK - the block manager will