[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [Xen-devel] [PATCH v2 00/13] "Non-shared" IOMMU support on ARM

On 31/07/17 06:57, Tian, Kevin wrote:
From: Oleksandr Tyshchenko
Sent: Wednesday, July 26, 2017 1:27 AM

From: Oleksandr Tyshchenko <oleksandr_tyshchenko@xxxxxxxx>

Hi, all.

The purpose of this patch series is to create a base for porting
any "Non-shared" IOMMUs to Xen on ARM. Saying "Non-shared" IOMMU I
the IOMMU that can't share the page table with the CPU.

Is "non-shared" IOMMU a standard terminology in ARM side? I quickly
searched to find it mostly used in this thread...

On the other hand, all IOMMUs support a basic DMA remapping
mechanism with page table not shared with CPU. Then some IOMMUs
may optional support Shared Virtual Memory (SVM) through page
sharing with CPU. Then I'm not sure why need to highlight the
"non-shared" manner in this thread, instead of just saying
IPMMU-VMSA support...

This is not entirely true. You can share the page-table with the IOMMU as long as the page-table are the same. This may still involve some TLB flush on the IOMMU side, but you don't have allocate twice the page-table. Therefore you save memory.

This is actually the case of SMMUv{1,2}, we share the page table but still have to do the TLB flush and potential clean the page entry table.


Julien Grall

Xen-devel mailing list



Lists.xenproject.org is hosted with RackSpace, monitoring our
servers 24x7x365 and backed by RackSpace's Fanatical Support®.