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.


-- 
Alexey

Attachment: signature.asc
Description: OpenPGP digital signature

Reply via email to