On Tue, May 09, 2017 at 09:35:23PM +1000, Alexey Kardashevskiy wrote: > On 08/05/17 15:53, David Gibson wrote: > > On Fri, May 05, 2017 at 08:19:30PM +1000, Alexey Kardashevskiy wrote: > >> This defines new QOM object - IOMMUMemoryRegion - with MemoryRegion > >> as a parent. > >> > >> This moves IOMMU-related fields from MR to IOMMU MR. However to avoid > >> dymanic QOM casting in fast path (address_space_translate, etc), > >> this adds an @is_iommu boolean flag to MR and provides new helper to > >> do simple cast to IOMMU MR - memory_region_get_iommu. The flag > >> is set in the instance init callback. This defines > >> memory_region_is_iommu as memory_region_get_iommu()!=NULL. > >> > >> This switches MemoryRegion to IOMMUMemoryRegion in most places except > >> the ones where MemoryRegion may be an alias. > >> > >> This defines memory_region_init_iommu_type() to allow creating > >> IOMMUMemoryRegion subclasses. In order to support custom QOM type, > >> this splits memory_region_init() to object_initialize() + > >> memory_region_do_init. > >> > >> Signed-off-by: Alexey Kardashevskiy <a...@ozlabs.ru> > > > > Reviewed-by: David Gibson <da...@gibson.dropbear.id.au> > > > > With the caveat that this will conflict with Peter Xu's outstanding > > patches which adjust the semantics of the IOMMU translate function. > > Sigh... So I'll wait till that reaches upstream and repost.
No, that's fine - your patches are much simpler and closer to ready than Peter's, so I think you go first. -- David Gibson | I'll have my music baroque, and my code david AT gibson.dropbear.id.au | minimalist, thank you. NOT _the_ _other_ | _way_ _around_! http://www.ozlabs.org/~dgibson
signature.asc
Description: PGP signature