On Tue, 2008-12-02 at 22:22 +0800, Han, Weidong wrote:
> Signed-off-by: Weidong Han <[EMAIL PROTECTED]>
> ---
>  drivers/pci/intel-iommu.c |  104 
> ++++++++++++++++++++++++++++++++++++++++++++-
>  1 files changed, 103 insertions(+), 1 deletions(-)
> 
> diff --git a/drivers/pci/intel-iommu.c b/drivers/pci/intel-iommu.c
> index b00a8f2..e96b3bc 100644
> --- a/drivers/pci/intel-iommu.c
> +++ b/drivers/pci/intel-iommu.c
> @@ -947,6 +947,7 @@ static int iommu_init_domains(struct intel_iommu *iommu)
>  
> 
>  static void domain_exit(struct dmar_domain *domain);
> +static void vm_domain_exit(struct dmar_domain *domain);
>  
>  void free_dmar_iommu(struct intel_iommu *iommu)
>  {
> @@ -957,8 +958,13 @@ void free_dmar_iommu(struct intel_iommu *iommu)
>       for (; i < cap_ndoms(iommu->cap); ) {
>               domain = iommu->domains[i];
>               clear_bit(i, iommu->domain_ids);
> -             if (--domain->iommu_count == 0)
> +
> +             if (domain->flags & DOMAIN_FLAG_VIRTUAL_MACHINE) {
> +                     if (--domain->iommu_count == 0)
> +                             vm_domain_exit(domain);
> +             } else
>                       domain_exit(domain);
> +

Again, these new functions are copies of existing code with minor
modifications. I'd much rather see the existing code refactored and then
modified to handle the DOMAIN_FLAG_VIRTUAL_MACHINE case.

Cheers,
Mark.

--
To unsubscribe from this list: send the line "unsubscribe kvm" in
the body of a message to [EMAIL PROTECTED]
More majordomo info at  http://vger.kernel.org/majordomo-info.html

Reply via email to