On Fri, Sep 28, 2012 at 06:40:08AM -0600, Alex Williamson wrote: > On Fri, 2012-09-28 at 11:43 +0200, Joerg Roedel wrote:
> > I don't think so. The concept of RMRR is just not defined well enough > > (like the concept of unity mappings on the AMD side which is similar to > > RMRR). The definition says, that any memory region must be mapped at > > any time for the device. But that is not true (at least I have no > > counter-example yet). The right definition would be, that the RMRR > > regions are only necessary as long as the operating system does not > > control the particular device. And assigning a device to a guest also > > counts a 'taking control over the device'. > > I think HP folks would be very unhappy with that definition. As David > indicates, that's how things like USB use RMRR, but the actual > definition in the spec leaves much more room for abuse. Thanks, To my experience, for a hardware designer, existing software overrides any Spec because it is much worse to break existing software than it is to break a Spec :) So, unless we break existing hardware/firmware, I still suggest that we use the assumption that OS controlled devices do not need RMRR/unity-mapped regions anymore. Is HP doing anything in their firmware which would not work with that? For the USB controlers, they only generate DMA to the RMRR/unity-mapped region until the OS takes over control from the firmware. After the USB driver is initialized the RMRR region should not be necessary anymore. 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 _______________________________________________ iommu mailing list iommu@lists.linux-foundation.org https://lists.linuxfoundation.org/mailman/listinfo/iommu