Re: IOMMU keeping mapping over long period of time

From: Benjamin Herrenschmidt
Date: Thu Oct 20 2011 - 04:02:16 EST


On Tue, 2011-10-18 at 11:48 -0400, Jerome Glisse wrote:
> Hi,
>
> For GPU we are entertaining the idea of keeping pci/dma mapping of page
> around for the whole life span of GPU object (which can be as long as
> the computer uptime). Here we are talking about possibly several GB of
> data.
>
> GPU for which we are interested have dma mask of 40bits at least, thus
> they can work with high mem page. My main concern is when an iommu is
> active, such amount of continuously mapped page might exhaust the iommu
> address space. My understanding is that Intel & AMD iommu are capable of
> growing their address space but is it somethings we can rely on ?

This will be problematic on other platforms. Also keep in mind that
objects mapped in the iommu can no longer be swapped out.

It might be useful to have a more 'lazy' mechanism where objects are
kept mapped but with a callback to unmap them in case of iommu pressure.

The problem of course with such a scheme is that it requires iommu
object tracking and horrible locking issues.

Ben.


--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/