[openib-general] Re: [PATCH 5 of 13] ipath - use proper address translation routine

Arjan van de Ven arjan at infradead.org
Mon May 1 12:20:00 PDT 2006


On Mon, 2006-05-01 at 12:00 -0700, Roland Dreier wrote:
>     Arjan> do you really NEED the vaddr?  (most of the time linux
>     Arjan> drivers don't need it, while other OSes do) If you really
>     Arjan> need it you should grab it at dma_map time ...  (and
>     Arjan> realize that it's not kernel addressable per se ;)
> 
> Yes, they need some kind of vaddr.
> 
> It's kind of a layering problem.  The IB stack assumes that IB devices
> have a DMA engine that deals with bus addresses.  But the ipath driver
> has to simulate this by using a memcpy on the CPU to move data to the
> PCI device.
> 
> I really don't know what the right solution is.  Maybe having some way
> to override the dma mapping operations so that the ipath driver can
> keep the info it needs?

sounds like you need to redesign your layering ;)
In linux it's common to have the lowest level driver do the mapping
(even when the mid layer will provide the most commonly used helper to
do it for the common case)...





More information about the general mailing list