Thread (27 messages) 27 messages, 4 authors, 2018-08-16

[PATCH v3 0/6] add non-strict mode support for arm-smmu-v3

From: Will Deacon <hidden>
Date: 2018-07-27 09:38:01
Also in: linux-iommu, lkml

On Fri, Jul 27, 2018 at 10:49:59AM +0800, Leizhen (ThunderTown) wrote:
On 2018/7/26 22:16, Robin Murphy wrote:
quoted
On 2018-07-26 4:44 AM, Leizhen (ThunderTown) wrote:
quoted
Passthrough is not enough to support VFIO, and virtualization need
the later.
Huh? The whole point of passthrough mode is that the IOMMU can still be
used for VFIO, but without imposing the overhead of dynamic mapping on
host DMA.
I said that from my experience. Userspace do not known the PA, so I think
the user can not fill dma_map.iova correctly.

	/* Allocate some space and setup a DMA mapping */
	dma_map.vaddr = (__u64)mmap(0, 0x1000, PROT_READ | PROT_WRITE,
			     MAP_PRIVATE | MAP_ANONYMOUS, 0, 0);
	dma_map.size = 0x1000;
	dma_map.iova = 0x2f00000000UL;						/* user specified */
	dma_map.flags = VFIO_DMA_MAP_FLAG_READ | VFIO_DMA_MAP_FLAG_WRITE;

	ioctl(container, VFIO_IOMMU_MAP_DMA, &dma_map);
Hmm, I'm pretty sure that's not the case. When passthrough is configured
via iommu.passthrough, it only applies to the default domain and therefore
won't affect the unmanaged domain that VFIO manages explicitly. So VFIO
will continue to use translation and userspace can't pass whatever it likes
for the iova.

Will
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help