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