From mboxrd@z Thu Jan 1 00:00:00 1970 From: Joerg Roedel Subject: Re: [PATCH 08/13] allocation and free functions of virtual machine domain Date: Fri, 5 Dec 2008 00:17:06 +0100 Message-ID: <20081204231706.GO29705@8bytes.org> References: <715D42877B251141A38726ABF5CABF2C018BF0598E@pdsmsx503.ccr.corp.intel.com> <1228410780.3732.143.camel@blaa> Mime-Version: 1.0 Content-Type: text/plain; charset=us-ascii Cc: "Han, Weidong" , "Yu, Fenghua" , "Woodhouse, David" , "'kvm@vger.kernel.org'" , 'Jesse Barnes' , "'iommu@lists.linux-foundation.org'" , 'Avi Kivity' To: Mark McLoughlin Return-path: Received: from 8bytes.org ([88.198.83.132]:34407 "EHLO 8bytes.org" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1754971AbYLDXRJ (ORCPT ); Thu, 4 Dec 2008 18:17:09 -0500 Content-Disposition: inline In-Reply-To: <1228410780.3732.143.camel@blaa> Sender: kvm-owner@vger.kernel.org List-ID: On Thu, Dec 04, 2008 at 05:13:00PM +0000, Mark McLoughlin wrote: > On Tue, 2008-12-02 at 22:22 +0800, Han, Weidong wrote: > > Signed-off-by: Weidong Han > > --- > > 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. Hey Mark, can your objections be fixed by follow-up patches bei Han or is anything critical in it? My AMD IOMMU patches for KVM support depend on these patches and everything they are changed I have to rebase by work. So I would prefer if Han can fix the issues found by follow-up patches :) Joerg