On 2016-06-15 19:07, David Kiarie wrote: > On Wed, Jun 15, 2016 at 5:26 PM, Eduardo Habkost <ehabk...@redhat.com> wrote: >> On Wed, Jun 15, 2016 at 03:21:48PM +0300, David Kiarie wrote: >>> Hi all, >>> >>> This patchset adds basic AMD IOMMU emulation support to Qemu. >>> >>> Changes since V11 >>> -AMD IOMMU is not started with -device amd-iommu (with a dependency on >>> Marcel's patches). >>> -IOMMU commands are represented using bitfields which is less error >>> prone and more readable[Peter] >>> -Changed from debug fprintfs to tracing[Jan] >> >> What were the issues that required the sysbus+PCI code you sent >> previously? How did you address them in this series? > > Short answer: Those issues are not present in this patch. > > Long answer: The sysbus + PCI code is necessary for interrupt > remapping to be implemented(it could also be done without sysbus + PCI > code but that wouldn't be in line with the Intel IOMMU interrupt > remapping code, which is already on the list). The idea is that X86 > IOMMUs should have a base class that implements common code. It was > decided that this class should be a SysBusDev(which works perfectly > with Intel IOMMU) but not with AMD IOMMU which has PCI properties. I > had to find a way to provide for the PCI properties once I inherit > from Intel IOMMU. > > In this patchset, I have not inherited from the base class(it's not > merged yet) and even if it was merged I'd prefer to only use the > SysBus + PCI code when necessary(when I work on interrupt remapping) > so as to avoid delaying this patchset further.
We specifically came to the conclusion that it is better to evolve the commodities between both IOMMU implementations (will be mostly about interrupt remapping) in-tree rather than in separate patch sets outside the mainline. Jan
signature.asc
Description: OpenPGP digital signature