Re: Fix interrupt remapping hang if interrupt remapping disable inBIOS

From: Cyrill Gorcunov
Date: Mon Sep 07 2009 - 10:59:52 EST


[Youquan Song - Mon, Sep 07, 2009 at 10:13:13AM -0400]
...
| static int disable_intremap;
| static __init int setup_nointremap(char *str)
| @@ -607,9 +608,14 @@ end:
| int __init intr_remapping_supported(void)
| {
| struct dmar_drhd_unit *drhd;
| -
| + struct acpi_table_dmar *dmar;
| +
| if (disable_intremap)
| return 0;
| +
| + dmar = (struct acpi_table_dmar *)dmar_tbl;
| + if (!(dmar->flags & 0x1))
| + return 0;
|
| for_each_drhd_unit(drhd) {
| struct intel_iommu *iommu = drhd->iommu;

Hi Youquan,

perhaps we could move this test to helper function
in dmar.c instead of plain external variable test?

-- Cyrill
--
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/