[RFC 1/2] iommu/dma: Restrict IOVAs to physical memory layout
From: Stuart Yoder <hidden>
Date: 2016-07-01 16:03:07
Also in:
linux-iommu
-----Original Message----- From: Robin Murphy <robin.murphy@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@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