Current kernel enable interrupt remapping only when all the vt-d unit support
interrupt remapping. So it is reasonable we should also disallow enabling
intr-remapping if there any io-apics that are not listed under vt-d units.
Otherwise we can run into issues.
Acked-by: Suresh Siddha <[email protected]>
Signed-off-by: Youquan Song <[email protected]>
---
diff --git a/drivers/pci/dmar.c b/drivers/pci/dmar.c
index 7b287cb..a8a4383 100644
--- a/drivers/pci/dmar.c
+++ b/drivers/pci/dmar.c
@@ -570,9 +570,6 @@ int __init dmar_table_init(void)
printk(KERN_INFO PREFIX "No ATSR found\n");
#endif
-#ifdef CONFIG_INTR_REMAP
- parse_ioapics_under_ir();
-#endif
return 0;
}
diff --git a/drivers/pci/intr_remapping.c b/drivers/pci/intr_remapping.c
index 4f5b871..ebfa47b 100644
--- a/drivers/pci/intr_remapping.c
+++ b/drivers/pci/intr_remapping.c
@@ -626,6 +626,11 @@ int __init enable_intr_remapping(int eim)
struct dmar_drhd_unit *drhd;
int setup = 0;
+ if (parse_ioapics_under_ir() != 1) {
+ printk(KERN_INFO "Not enable interrupt remapping\n");
+ return -1;
+ }
+
for_each_drhd_unit(drhd) {
struct intel_iommu *iommu = drhd->iommu;
On Mon, 2009-09-07 at 07:58 -0700, Song, Youquan wrote:
> Current kernel enable interrupt remapping only when all the vt-d unit support
> interrupt remapping. So it is reasonable we should also disallow enabling
> intr-remapping if there any io-apics that are not listed under vt-d units.
> Otherwise we can run into issues.
>
> Acked-by: Suresh Siddha <[email protected]>
> Signed-off-by: Youquan Song <[email protected]>
> ---
>
> diff --git a/drivers/pci/dmar.c b/drivers/pci/dmar.c
> index 7b287cb..a8a4383 100644
> --- a/drivers/pci/dmar.c
> +++ b/drivers/pci/dmar.c
> @@ -570,9 +570,6 @@ int __init dmar_table_init(void)
> printk(KERN_INFO PREFIX "No ATSR found\n");
> #endif
>
> -#ifdef CONFIG_INTR_REMAP
> - parse_ioapics_under_ir();
> -#endif
> return 0;
> }
>
> diff --git a/drivers/pci/intr_remapping.c b/drivers/pci/intr_remapping.c
> index 4f5b871..ebfa47b 100644
> --- a/drivers/pci/intr_remapping.c
> +++ b/drivers/pci/intr_remapping.c
> @@ -626,6 +626,11 @@ int __init enable_intr_remapping(int eim)
> struct dmar_drhd_unit *drhd;
> int setup = 0;
>
> + if (parse_ioapics_under_ir() != 1) {
> + printk(KERN_INFO "Not enable interrupt remapping\n");
> + return -1;
> + }
> +
> for_each_drhd_unit(drhd) {
> struct intel_iommu *iommu = drhd->iommu;
>
David, Can you also pick this up please?
thanks,
suresh
This patch also is promising to go to 2.6.32.
Thanks & Regards,
Song Youquan
Intel SSG/SSD/OTC
MOB: 13681289076
TEL: 010-82171326
INET: 8-758-1326
LOC: Raycom 5W027
> -----Original Message-----
> From: Siddha, Suresh B
> Sent: 2009??9??10?? 5:43
> To: Song, Youquan
> Cc: [email protected]; [email protected]; [email protected];
> [email protected]; [email protected]
> Subject: Re: [PATCH] interrupt remapping: Disallow interrupt
> remapping if not all ioapic under interrupt remapping
>
> On Mon, 2009-09-07 at 07:58 -0700, Song, Youquan wrote:
> > Current kernel enable interrupt remapping only when all the
> vt-d unit support
> > interrupt remapping. So it is reasonable we should also
> disallow enabling
> > intr-remapping if there any io-apics that are not listed
> under vt-d units.
> > Otherwise we can run into issues.
> >
> > Acked-by: Suresh Siddha <[email protected]>
> > Signed-off-by: Youquan Song <[email protected]>
> > ---
> >
> > diff --git a/drivers/pci/dmar.c b/drivers/pci/dmar.c
> > index 7b287cb..a8a4383 100644
> > --- a/drivers/pci/dmar.c
> > +++ b/drivers/pci/dmar.c
> > @@ -570,9 +570,6 @@ int __init dmar_table_init(void)
> > printk(KERN_INFO PREFIX "No ATSR found\n");
> > #endif
> >
> > -#ifdef CONFIG_INTR_REMAP
> > - parse_ioapics_under_ir();
> > -#endif
> > return 0;
> > }
> >
> > diff --git a/drivers/pci/intr_remapping.c
> b/drivers/pci/intr_remapping.c
> > index 4f5b871..ebfa47b 100644
> > --- a/drivers/pci/intr_remapping.c
> > +++ b/drivers/pci/intr_remapping.c
> > @@ -626,6 +626,11 @@ int __init enable_intr_remapping(int eim)
> > struct dmar_drhd_unit *drhd;
> > int setup = 0;
> >
> > + if (parse_ioapics_under_ir() != 1) {
> > + printk(KERN_INFO "Not enable interrupt remapping\n");
> > + return -1;
> > + }
> > +
> > for_each_drhd_unit(drhd) {
> > struct intel_iommu *iommu = drhd->iommu;
> >
>
> David, Can you also pick this up please?
>
> thanks,
> suresh
>
> ????{.n?+???????+%?????ݶ??w??{.n?+????{??G?????{ay?ʇڙ?,j??f???h?????????z_??(?階?ݢj"???m??????G????????????&???~???iO???z??v?^?m????????????I?
On Sat, 2009-09-19 at 20:37 -0400, Youquan,Song wrote:
> Change the patch title to short one.
> David, Couly you please also pick this up? Sorry, if you have done.
http://git.infradead.org/iommu-2.6.git?commit=e936d0773df
I changed the title when I committed it.
--
David Woodhouse Open Source Technology Centre
[email protected] Intel Corporation
On Wed, Sep 09, 2009 at 02:42:55PM -0700, Suresh Siddha wrote:
> On Mon, 2009-09-07 at 07:58 -0700, Song, Youquan wrote:
> > Current kernel enable interrupt remapping only when all the vt-d unit support
> > interrupt remapping. So it is reasonable we should also disallow enabling
> > intr-remapping if there any io-apics that are not listed under vt-d units.
> > Otherwise we can run into issues.
> >
> > Acked-by: Suresh Siddha <[email protected]>
> > Signed-off-by: Youquan Song <[email protected]>
> > ---
> >
> > diff --git a/drivers/pci/dmar.c b/drivers/pci/dmar.c
> > index 7b287cb..a8a4383 100644
> > --- a/drivers/pci/dmar.c
> > +++ b/drivers/pci/dmar.c
> > @@ -570,9 +570,6 @@ int __init dmar_table_init(void)
> > printk(KERN_INFO PREFIX "No ATSR found\n");
> > #endif
> >
> > -#ifdef CONFIG_INTR_REMAP
> > - parse_ioapics_under_ir();
> > -#endif
> > return 0;
> > }
> >
> > diff --git a/drivers/pci/intr_remapping.c b/drivers/pci/intr_remapping.c
> > index 4f5b871..ebfa47b 100644
> > --- a/drivers/pci/intr_remapping.c
> > +++ b/drivers/pci/intr_remapping.c
> > @@ -626,6 +626,11 @@ int __init enable_intr_remapping(int eim)
> > struct dmar_drhd_unit *drhd;
> > int setup = 0;
> >
> > + if (parse_ioapics_under_ir() != 1) {
> > + printk(KERN_INFO "Not enable interrupt remapping\n");
> > + return -1;
> > + }
> > +
> > for_each_drhd_unit(drhd) {
> > struct intel_iommu *iommu = drhd->iommu;
> >
>
> David, Can you also pick this up please?
>
> thanks,
> suresh
Change the patch title to short one.
David, Couly you please also pick this up? Sorry, if you have done.
Thanks.
>
> --
> To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
> the body of a message to [email protected]
> More majordomo info at http://vger.kernel.org/majordomo-info.html
> Please read the FAQ at http://www.tux.org/lkml/
>
On Sat, Sep 19, 2009 at 10:07:01AM -0700, David Woodhouse wrote:
> On Sat, 2009-09-19 at 20:37 -0400, Youquan,Song wrote:
> > Change the patch title to short one.
> > David, Couly you please also pick this up? Sorry, if you have done.
>
> http://git.infradead.org/iommu-2.6.git?commit=e936d0773df
>
> I changed the title when I committed it.
>
Fine, your title is better than mine. Thanks.