[RFC 1/2] iommu/dma: Restrict IOVAs to physical memory layout

Stuart Yoder stuart.yoder at nxp.com
Fri Jul 1 09:03:07 PDT 2016



> -----Original Message-----
> From: Robin Murphy <robin.murphy at arm.com>
> Date: Tue, Jun 28, 2016 at 11:18 AM
> Subject: [RFC 1/2] iommu/dma: Restrict IOVAs to physical memory layout
> To: iommu at lists.linux-foundation.org, linux-arm-kernel at lists.infradead.org
> 
> 
> Certain peripherals may be bestowed with knowledge of the physical
> memory map of the system in which they live, and refuse to handle
> addresses that they do not think are memory, which causes issues when
> remapping to arbitrary IOVAs. Sidestep the issue by restricting IOVA
> domains to only allocate addresses within ranges which match the
> physical memory layout.
> 
> Signed-off-by: Robin Murphy <robin.murphy at arm.com>
> ---
> 
> Posting this as an RFC because it's something I've been having to use
> on Juno for all the PCI IOMMU development - it's pretty horrible, but I
> can't easily think of a nicer solution...

Maybe I'm not getting the implications of this looking at the patch 
in isolation, but how will this impact systems that have devices
limited to 32-bit addressing?

In our memory map we have physical memory regions at:
0x00_8000_0000
0x80_8000_0000

Will devices with a 32-bit DMA mask still get 32-bit IOVAs?

Thanks,
Stuart



More information about the linux-arm-kernel mailing list