|
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] Re: [PATCH v6 4/8] iommu: make map and unmap take a page count, similar to flush
>> diff --git a/xen/include/xen/iommu.h b/xen/include/xen/iommu.h
>> index 1831dc66b0..13f68dc93d 100644
>> --- a/xen/include/xen/iommu.h
>> +++ b/xen/include/xen/iommu.h
>> @@ -146,23 +146,23 @@ enum
>> #define IOMMU_FLUSHF_modified (1u << _IOMMU_FLUSHF_modified)
>>
>> int __must_check iommu_map(struct domain *d, dfn_t dfn, mfn_t mfn,
>> - unsigned int page_order, unsigned int flags,
>> + unsigned long page_count, unsigned int flags,
>> unsigned int *flush_flags);
>> int __must_check iommu_unmap(struct domain *d, dfn_t dfn,
>> - unsigned int page_order,
>> + unsigned long page_count,
>> unsigned int *flush_flags);
>>
>> int __must_check iommu_legacy_map(struct domain *d, dfn_t dfn, mfn_t mfn,
>> - unsigned int page_order,
>> + unsigned long page_count,
>> unsigned int flags);
>> int __must_check iommu_legacy_unmap(struct domain *d, dfn_t dfn,
>> - unsigned int page_order);
>> + unsigned long page_count);
>>
>> int __must_check iommu_lookup_page(struct domain *d, dfn_t dfn, mfn_t *mfn,
>> unsigned int *flags);
>>
>> int __must_check iommu_iotlb_flush(struct domain *d, dfn_t dfn,
>> - unsigned int page_count,
>> + unsigned long page_count,
>> unsigned int flush_flags);
>> int __must_check iommu_iotlb_flush_all(struct domain *d,
>> unsigned int flush_flags);
>> @@ -281,7 +281,7 @@ struct iommu_ops {
>> void (*share_p2m)(struct domain *d);
>> void (*crash_shutdown)(void);
>> int __must_check (*iotlb_flush)(struct domain *d, dfn_t dfn,
>> - unsigned int page_count,
>> + unsigned long page_count,
>
> This change will require to change the arm smmu code to have the right type
> for page count:
> xen/drivers/passthrough/smmu.c:2536
> static int __must_check arm_smmu_iotlb_flush(struct domain *d, dfn_t dfn,
> unsigned int page_count,
> unsigned int flush_flags)
>
> Otherwise compilation is failing for arm.
>
> With that fixed i could compile and start an arm system with the complete
> serie (but not one with an arm SMMU).
I should have specified because my test system right now does not have an
SMMUv1.
Bertrand
|
![]() |
Lists.xenproject.org is hosted with RackSpace, monitoring our |