Messages in this thread | | | Date | Thu, 26 Jan 2012 19:51:01 +0100 | From | Joerg Roedel <> | Subject | Re: [PATCH 2/5] iommu/amd: Implement DOMAIN_ATTR_GEOMETRY attribute |
| |
On Thu, Jan 26, 2012 at 12:42:10PM -0600, Scott Wood wrote: > On 01/26/2012 12:31 PM, Joerg Roedel wrote: > > The force_aperture flag indicated whether DMA is only allowed between > > aperture_start and apertuer_end or if DMA is allowed outside of this > > range too (unmapped in this case). > > > > The AMD GART for example would set this flag to false because it does > > not enforce DMA to be in the aperture-range. > > Why is this not an AMD GART specific attribute? Is there any feature > reporting mechanism by which a user would know if that flag is supported?
Because this is a flag that makes sense for all IOMMU. Every IOMMU either allows DMA outside its aperture or it doesn't.
Another reason why it must be in the generic struct is the intended generic dma-ops layer on-top. This code can decide on this flag wheter a address needs to be remapped at all.
> If it must be in the generic struct, it would be nice to invert the > polarity so that the default (after zeroing) is something that should be > more widely supportable, and less likely to create unintended identity > mappings.
Setting this flag wrong does not create unintended identity mappings.
> How in general are available attributes and restrictions on possible > values to be communicated to users of the API?
The possible attributes can be found in inlude/linux/iommu.h. But I don't understand what you mean by 'restrictions on possible values'. The geometry attribute is filled by the IOMMU driver dependent on the hardware capabilities. There are no limits from the iommu-code side.
Joerg
-- AMD Operating System Research Center
Advanced Micro Devices GmbH Einsteinring 24 85609 Dornach General Managers: Alberto Bozzo Registration: Dornach, Landkr. Muenchen; Registerger. Muenchen, HRB Nr. 43632
| |