James Bottomley wrote:
On Fri, 2007-05-11 at 15:15 -0400, Jeff Garzik wrote:
James Bottomley wrote:
Right at the moment, we're planning to clean up the way SCSI drivers
process commands. The proposals are essentially:
1. Get rid of the now unnecessary map_single path (every command is
either zero transfer or scatter/gather)
2. use accessors to manipulate the SG lists (mainly so that we can
alter the implementation without affecting the drivers)
It strikes me that in all of this, we could also consider doing the DMA
mapping inside the mid layer (instead of in every driver). This is
essentially what libata is already doing ... leading to confusion in
SCSI drivers that use libata for SATA.
My eyes are crossed :) How does doing DMA mapping in the mid layer lead
to confusion in SCSI drivers that use libata for SATA? Are you talking
about aic94xx and ipr only, or other drivers?
Those are the only two that use libata for SATA, yes.
aic94xx is horrible in this regard ... it has to try to distinguish STP
commands that come from libsas (and thus aren't mapped) from ones that
come from libata which are ... and it still doesn't get it entirely
right.
I would lean towards fixing libata to -not- DMA-map for those drivers.
Splitting up DMA mapping is ugly.
Jeff
-
To unsubscribe from this list: send the line "unsubscribe linux-scsi" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html