From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from eggs.gnu.org ([2001:4830:134:3::10]:52195) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1bMXSn-0004ZB-Tl for qemu-devel@nongnu.org; Mon, 11 Jul 2016 05:25:18 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1bMXSj-0005wh-L9 for qemu-devel@nongnu.org; Mon, 11 Jul 2016 05:25:16 -0400 Received: from mx1.redhat.com ([209.132.183.28]:50874) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1bMXSj-0005wa-Ct for qemu-devel@nongnu.org; Mon, 11 Jul 2016 05:25:13 -0400 Date: Mon, 11 Jul 2016 17:25:07 +0800 From: Peter Xu Message-ID: <20160711092507.GG3204@pxdev.xzpeter.org> References: <1467706769-12505-1-git-send-email-peterx@redhat.com> <1467706769-12505-5-git-send-email-peterx@redhat.com> <5780B278.7020001@web.de> <20160711053219.GB3204@pxdev.xzpeter.org> <20160711064904.GC3204@pxdev.xzpeter.org> <20160711074153.GD3204@pxdev.xzpeter.org> MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Disposition: inline In-Reply-To: Subject: Re: [Qemu-devel] [PATCH v11 04/28] x86-iommu: q35: generalize find_add_as() List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , To: David Kiarie Cc: Jan Kiszka , QEMU Developers , imammedo@redhat.com, rth@twiddle.net, Eduardo Habkost , jasowang@redhat.com, Marcel Apfelbaum , "Michael S. Tsirkin" , pbonzini@redhat.com, rkrcmar@redhat.com, Alex Williamson , wexu@redhat.com On Mon, Jul 11, 2016 at 12:11:10PM +0300, David Kiarie wrote: > On Mon, Jul 11, 2016 at 10:41 AM, Peter Xu wrote: > > On Mon, Jul 11, 2016 at 10:16:11AM +0300, David Kiarie wrote: > >> On Mon, Jul 11, 2016 at 9:49 AM, Peter Xu wrote: > >> > On Mon, Jul 11, 2016 at 08:46:12AM +0300, David Kiarie wrote: > >> >> On Mon, Jul 11, 2016 at 8:32 AM, Peter Xu wrote: > >> >> > On Sat, Jul 09, 2016 at 10:14:48AM +0200, Jan Kiszka wrote: > >> >> >> On 2016-07-05 10:19, Peter Xu wrote: > >> >> >> > Remove VT-d calls in common q35 codes. Instead, we provide a general > >> >> >> > find_add_as() for x86-iommu type. > >> >> >> > > >> >> >> > Signed-off-by: Peter Xu > >> >> >> > --- > >> >> >> > hw/i386/intel_iommu.c | 15 ++++++++------- > >> >> >> > include/hw/i386/intel_iommu.h | 5 ----- > >> >> >> > include/hw/i386/x86-iommu.h | 3 +++ > >> >> >> > 3 files changed, 11 insertions(+), 12 deletions(-) > >> >> >> > >> >> >> You claim to remove something from "common q35 code", but I don't see > >> >> >> changes to it. Instead, the patch introduces a method that seems to > >> >> >> remain unused outside the implementing class (I just grep'ed your tree). > >> >> >> Anything missing? > >> >> > > >> >> > Right. The commit message lost its point after I did the rebase to > >> >> > Marcel's "-device intel_iommu" patches... Thanks for pointing it out. > >> >> > >> >> I think Jan is mainly asking about where the method 'find_add_as()' is > >> >> being used. Unless I'm too missing something It doesn't seem to be > >> >> used anywhere outside the implementing class. > >> > >> Hi > >> > > >> > This patch can be dropped. I was just not sure whether it's the > >> > correct time to do that. Anyway, we may still need one more patch to > >> > cleanup this in the future, as I have mentioned in the previous email. > >> > >> I think there is a misunderstanding here. > >> > >> We (me and Jan) are basically asking did you plan to use "find_add_as" > >> somewhere and may be missed it ? Why does x86-iommu class need > >> "find_add_as" ? > >> The reason is I'm not able to receive IOAPIC > >> interrupts with AMD IOMMU basing my work on your code. We thought > >> you'd clarify on where "find_add_as" is used or how you plan to use > >> it. > > > > As mentioned in previous email, before Marcel's patches, > > vtd_host_dma_iommu() was named q35_host_dma_iommu(). > > Okay, that solves it - _before_ the adoption of '-device iommu' so > you're right, this is not needed anymore. Right. Actually we should still keep several lines in this patch: diff --git a/include/hw/i386/intel_iommu.h b/include/hw/i386/intel_iommu.h index 0794309..e36b896 100644 --- a/include/hw/i386/intel_iommu.h +++ b/include/hw/i386/intel_iommu.h @@ -125,9 +125,4 @@ struct IntelIOMMUState { VTDBus *vtd_as_by_bus_num[VTD_PCI_BUS_MAX]; /* VTDBus objects indexed by bus number */ }; -/* Find the VTD Address space associated with the given bus pointer, - * create a new one if none exists - */ -VTDAddressSpace *vtd_find_add_as(IntelIOMMUState *s, PCIBus *bus, int devfn); - #endif Since vtd_find_add_as() is now no longer needed to be exported. However I plan to do this in standalone patch after this series, as it's not related to current patch any more. Thanks, -- peterx