2012-01-20 02:29:56 +00:00
|
|
|
From 602e1f209dd983e40d989e871cd253e8187899b8 Mon Sep 17 00:00:00 2001
|
2010-07-29 23:46:31 +00:00
|
|
|
From: drago01 <drago01@gmail.com>
|
2012-01-20 02:29:56 +00:00
|
|
|
Date: Wed, 26 Oct 2011 13:37:27 -0400
|
|
|
|
Subject: [PATCH] Default to igfx_off
|
2010-07-29 23:46:31 +00:00
|
|
|
|
|
|
|
This option seems to causes way to many issues, it is
|
|
|
|
being investigated by Intel's chipset team for months now and
|
|
|
|
we still don't have any outcome.
|
|
|
|
|
|
|
|
The results so far are "black screen when starting X",
|
|
|
|
"system hangs when using GL", "system does not resume".
|
|
|
|
|
|
|
|
The patch adds an intel_iommu=igfx_on option, which makes it opt in,
|
|
|
|
rather than opt out.
|
|
|
|
|
|
|
|
Signed-off-by: Adel Gadllah <adel.gadllah@gmail.com>
|
|
|
|
Reviewed-by: Adam Jackson <ajax@redhat.com>
|
|
|
|
---
|
|
|
|
Documentation/kernel-parameters.txt | 11 +++++------
|
2012-01-20 02:29:56 +00:00
|
|
|
drivers/iommu/intel-iommu.c | 9 +++++----
|
2010-07-29 23:46:31 +00:00
|
|
|
2 files changed, 10 insertions(+), 10 deletions(-)
|
|
|
|
|
|
|
|
diff --git a/Documentation/kernel-parameters.txt b/Documentation/kernel-parameters.txt
|
2012-01-20 02:29:56 +00:00
|
|
|
index 81c287f..ee5693b 100644
|
2010-07-29 23:46:31 +00:00
|
|
|
--- a/Documentation/kernel-parameters.txt
|
|
|
|
+++ b/Documentation/kernel-parameters.txt
|
2012-01-20 02:29:56 +00:00
|
|
|
@@ -1014,12 +1014,11 @@ bytes respectively. Such letter suffixes can also be entirely omitted.
|
2010-07-29 23:46:31 +00:00
|
|
|
Enable intel iommu driver.
|
|
|
|
off
|
|
|
|
Disable intel iommu driver.
|
|
|
|
- igfx_off [Default Off]
|
|
|
|
- By default, gfx is mapped as normal device. If a gfx
|
|
|
|
- device has a dedicated DMAR unit, the DMAR unit is
|
|
|
|
- bypassed by not enabling DMAR with this option. In
|
|
|
|
- this case, gfx device will use physical address for
|
|
|
|
- DMA.
|
|
|
|
+ igfx_on [Default Off]
|
|
|
|
+ By default, the gfx's DMAR unit is bypassed by not enabling
|
|
|
|
+ DMAR with this option. So the gfx device will use physical
|
|
|
|
+ address for DMA. When this option is enabled it the gfx is
|
|
|
|
+ mapped as normal device.
|
|
|
|
forcedac [x86_64]
|
|
|
|
With this option iommu will not optimize to look
|
2012-01-20 02:29:56 +00:00
|
|
|
for io virtual address below 32-bit forcing dual
|
|
|
|
diff --git a/drivers/iommu/intel-iommu.c b/drivers/iommu/intel-iommu.c
|
|
|
|
index bdc447f..240db6b 100644
|
2011-08-16 14:32:18 +00:00
|
|
|
--- a/drivers/iommu/intel-iommu.c
|
|
|
|
+++ b/drivers/iommu/intel-iommu.c
|
2012-01-20 02:29:56 +00:00
|
|
|
@@ -408,7 +408,8 @@ int dmar_disabled = 1;
|
|
|
|
int intel_iommu_enabled = 0;
|
|
|
|
EXPORT_SYMBOL_GPL(intel_iommu_enabled);
|
|
|
|
|
2010-07-29 23:46:31 +00:00
|
|
|
-static int dmar_map_gfx = 1;
|
|
|
|
+/* disabled by default; causes way too many issues */
|
|
|
|
+static int dmar_map_gfx = 0;
|
|
|
|
static int dmar_forcedac;
|
|
|
|
static int intel_iommu_strict;
|
2012-01-20 02:29:56 +00:00
|
|
|
static int intel_iommu_superpage = 1;
|
|
|
|
@@ -433,10 +434,10 @@ static int __init intel_iommu_setup(char *str)
|
2010-07-29 23:46:31 +00:00
|
|
|
} else if (!strncmp(str, "off", 3)) {
|
|
|
|
dmar_disabled = 1;
|
|
|
|
printk(KERN_INFO "Intel-IOMMU: disabled\n");
|
|
|
|
- } else if (!strncmp(str, "igfx_off", 8)) {
|
|
|
|
- dmar_map_gfx = 0;
|
|
|
|
+ } else if (!strncmp(str, "igfx_on", 7)) {
|
|
|
|
+ dmar_map_gfx = 1;
|
|
|
|
printk(KERN_INFO
|
|
|
|
- "Intel-IOMMU: disable GFX device mapping\n");
|
|
|
|
+ "Intel-IOMMU: enabled GFX device mapping\n");
|
|
|
|
} else if (!strncmp(str, "forcedac", 8)) {
|
|
|
|
printk(KERN_INFO
|
|
|
|
"Intel-IOMMU: Forcing DAC for PCI devices\n");
|
|
|
|
--
|
2012-01-20 02:29:56 +00:00
|
|
|
1.7.7.4
|
2010-07-29 23:46:31 +00:00
|
|
|
|