[haiku-commits] r37199 - haiku/trunk/src/add-ons/kernel/generic/scsi_periph

  • From: ingo_weinhold@xxxxxx
  • To: haiku-commits@xxxxxxxxxxxxx
  • Date: Mon, 21 Jun 2010 18:19:50 +0200 (CEST)

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


Other related posts:

  • » [haiku-commits] r37199 - haiku/trunk/src/add-ons/kernel/generic/scsi_periph - ingo_weinhold