[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <20090501000509.GA20743@linux-os.sc.intel.com>
Date: Thu, 30 Apr 2009 17:05:10 -0700
From: Fenghua Yu <fenghua.yu@...el.com>
To: Andrew Morton <akpm@...ux-foundation.org>,
Randy Dunlap <rdunlap@...otime.net>
Cc: "Yu, Fenghua" <fenghua.yu@...el.com>,
"dwmw2@...radead.org" <dwmw2@...radead.org>,
"mingo@...e.hu" <mingo@...e.hu>,
"torvalds@...ux-foundation.org" <torvalds@...ux-foundation.org>,
"Han, Weidong" <weidong.han@...el.com>,
"linux-kernel@...r.kernel.org" <linux-kernel@...r.kernel.org>,
"iommu@...ts.linux-foundation.org" <iommu@...ts.linux-foundation.org>
Subject: Re: [PATCH] Intel IOMMU Pass Through Support
On Thu, Apr 30, 2009 at 04:37:52PM -0700, Randy Dunlap wrote:
> Andrew Morton wrote:
> > On Wed, 15 Apr 2009 17:19:57 -0700
> > Fenghua Yu <fenghua.yu@...el.com> wrote:
> >
> >> The patch adds kernel parameter intel_iommu=pt to set up pass through mode in
> >> context mapping entry. This disables DMAR in linux kernel; but KVM still runs on
> >> VT-d and interrupt remapping still works.
> >>
> >> In this mode, kernel uses swiotlb for DMA API functions but other VT-d
> >> functionalities are enabled for KVM. KVM always uses multi level translation
> >> page table in VT-d. By default, pass though mode is disabled in kernel.
> >>
> >> This is useful when people don't want to enable VT-d DMAR in kernel but still
> >> want to use KVM and interrupt remapping for reasons like DMAR performance
> >> concern or debug purpose.
> >>
> >
> > The patch is now in linux-next and broke my build.
> >
> > arch/x86/built-in.o: In function `iommu_setup':
> > arch/x86/kernel/pci-dma.c:215: undefined reference to `iommu_pass_through'
> > arch/x86/built-in.o: In function `pci_swiotlb_init':
> > arch/x86/kernel/pci-swiotlb.c:74: undefined reference to `iommu_pass_through'
> >
> > Because iommu_pass_through is defined in drivers/pci/intel-iommu.c and
> >
> > # CONFIG_DMAR is not set
> >
> > I'll need to cook up some local hack to work around that.
> >
>
> Patch just went to linux-next mailing list (but should have also
> gone to lkml):
>
> http://marc.info/?l=linux-next&m=124113213400748&w=2
That's right. I just posted this patch to fix the compiling errors.
>
>
> >
> > Also, the patch in linux-next (but not the one which I'm replying to
> > here does:
> >
> > : --- a/arch/x86/kernel/pci-dma.c
> > : +++ b/arch/x86/kernel/pci-dma.c
> > : @@ -160,6 +160,8 @@ again:
> > : return page_address(page);
> > : }
> > :
> > : +extern int iommu_pass_through;
> > : +
> >
> > Which is wrong and unnecessary - the variable was already declared in a
> > header file.
> >
> > scripts/checkpatch.pl would have warned you about this error, but
> > apparently neither you nor the people who reviewed or merged the patch
> > bother to use it.
Actually checkpatch.pl doesn't report anything wrong with this statement.
The following patch removes this statement on the top of linux-next.
Signed-off-by: Fenghua Yu <fenghua.yu@...el.com>
---
pci-dma.c | 2 --
1 files changed, 2 deletions(-)
diff --git a/arch/x86/kernel/pci-dma.c b/arch/x86/kernel/pci-dma.c
index 8cad0d8..049005e 100644
--- a/arch/x86/kernel/pci-dma.c
+++ b/arch/x86/kernel/pci-dma.c
@@ -160,8 +162,6 @@ again:
return page_address(page);
}
-extern int iommu_pass_through;
-
/*
* See <Documentation/x86_64/boot-options.txt> for the iommu kernel parameter
* documentation.
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@...r.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/
Powered by blists - more mailing lists