Isaku Yamahata wrote:
> On Thu, Oct 23, 2008 at 10:31:20AM +0800, Xu, Anthony wrote:
>> Iommu_un/map_page does nothing for PV domain.
>> Why is there a race?
> Oh sorry. I'm not very familiar with iommu code (yet).
> My understanding is
>   iommu_domain_init() is called unconditionaly by arch_domain_create()
>   so that platform_ops is initialized.
>   iommu_(un)map_page() checks iommu_enabled and whether platform_ops
>   is initialized. Thus iommu_(un)map_page() manipulates iommu page
>   table even for PV domain.
> Clearly I'm missing something important. Could you enlighten me?

Acctually I missed something.
First, PV domain can use VTD in x86 side.
So before calling iommu_(un)map_page, Xen needs to check if it is needed.

 if ( iommu_enabled && (is_hvm_domain(d) || need_iommu(d)) )

I'll update the patch


Xen-ia64-devel mailing list

Reply via email to