Re: How to ensure that different peripherals getting different IOVA address in kernel?

From: Robin Murphy
Date: Wed Sep 23 2015 - 08:08:35 EST


On 23/09/15 02:55, chenfeng wrote:
Hi all,

In IOMMU architecture , how to make two different peripherals share the same page table ?

In other words , is there a mechanism or structure to make two peripherals get completely different address.

eg:

peri-Aãperi-B and peri-C share the same iova address 0-1G for some performance requests.

So the A,B,C need to use the same IOVA generator to ensure this,but I don't find an architecture to make this.

This is what IOMMU domains are all about: devices in one domain are isolated from devices in different domains, so all you need to do is make sure all devices that want to share buffers are attached to the same domain, then they will all share that domain's IOVA space.

Robin.


Any help will be appreciated.

Puck



--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/