Re: [PATCH] interrupt remapping: Disallow interrupt remapping ifnot all ioapic under interrupt remapping

From: Suresh Siddha
Date: Wed Sep 09 2009 - 17:43:45 EST


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 <suresh.b.siddha@xxxxxxxxx>
> Signed-off-by: Youquan Song <youquan.song@xxxxxxxxx>
> ---
>
> 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

--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/