On 03/19/2013 07:48 PM, H. Peter Anvin wrote:
> On 03/19/2013 06:28 PM, Matthew Garrett wrote:
>> Mm. The question is whether we can reliably determine the ranges a device
>> should be able to access without having to trust userspace (and, ideally,
>> without having to worry about whether iommu vendors have done their job).
>> It's pretty important for PCI passthrough, so we do need to care.
>
> It is actually very simple: the device should be able to DMA into/out of:
>
> 1. pinned pages
> 2. owned by the process controlling the device
>
> ... and nothing else.
>
The "pinning" process needs to involve a call to the kernel to process
the page for DMA (pinning the page and opening it in the iommu) and
return a transaction address, of course.
I think we have the interface for that in vfio, but I haven't followed
that work.
-hpa
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to [email protected]
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/