On Fri, Dec 16, 2005 at 09:38:51AM -0500, James Lentini wrote:
> ian> Question 1: How to distinguish a address that the adapter can use 
> ian> from that the adapter cannot use? Could you give an example? I am 
> ian> really not very familiar with the I/O address details.
> 
> Take a look at Documentation/IO-mapping.txt in the Linux source tree.

While IO-mapping.txt gives a nice introduction into the topic
of "bus addresses", the answer to the question lies in
Documentation/DMA-API.txt. IO devices can only use "bus addresses"
that are handed back by the interfaces described in DMA-API.txt.
For OpenIB, ULPs (e.g. SDP or IPoIB) are responsible for properly
mapping and unmapping for DMA use.

While many architectures don't use IOMMU (and thus have 1:1
between host physical:bus address), virtualization seems to be
forcing the issue in the "near" future. All DMA access will need
to be enforced to isolate virtualized guests. This is something
some platforms with IOMMUs enforce today (e.g. Sparc64, PPC64 and PA-RISC).

hth,
grant
_______________________________________________
openib-general mailing list
[email protected]
http://openib.org/mailman/listinfo/openib-general

To unsubscribe, please visit http://openib.org/mailman/listinfo/openib-general

Reply via email to