diff options
| author | Linus Torvalds <torvalds@linux-foundation.org> | 2017-02-22 21:11:18 -0500 |
|---|---|---|
| committer | Linus Torvalds <torvalds@linux-foundation.org> | 2017-02-22 21:11:18 -0500 |
| commit | 5066e4a34081dd82fb625f2f382bfa29ca421a3f (patch) | |
| tree | 9c622bb39bd6d5edd42e56dfe5c0778d1216c72d | |
| parent | b4642c109f9bbf62b2ee10babf5c4221c48480aa (diff) | |
| parent | c37a01779b3954d9c8f9ac4f663a03c11f69fded (diff) | |
Merge tag 'iommu-fix-v4.11-rc0' of git://git.kernel.org/pub/scm/linux/kernel/git/joro/iommu
Pull IOMMU fix from Joerg Roedel:
"Fix a boot crash caused by the VT-d driver when booted with IOMMU
disabled. This was introduced with the recent IOMMU changes"
* tag 'iommu-fix-v4.11-rc0' of git://git.kernel.org/pub/scm/linux/kernel/git/joro/iommu:
iommu/vt-d: Fix crash on boot when DMAR is disabled
| -rw-r--r-- | drivers/iommu/dmar.c | 6 |
1 files changed, 4 insertions, 2 deletions
diff --git a/drivers/iommu/dmar.c b/drivers/iommu/dmar.c index d9c0decfc91a..36e3f430d265 100644 --- a/drivers/iommu/dmar.c +++ b/drivers/iommu/dmar.c | |||
| @@ -1108,8 +1108,10 @@ error: | |||
| 1108 | 1108 | ||
| 1109 | static void free_iommu(struct intel_iommu *iommu) | 1109 | static void free_iommu(struct intel_iommu *iommu) |
| 1110 | { | 1110 | { |
| 1111 | iommu_device_sysfs_remove(&iommu->iommu); | 1111 | if (intel_iommu_enabled) { |
| 1112 | iommu_device_unregister(&iommu->iommu); | 1112 | iommu_device_unregister(&iommu->iommu); |
| 1113 | iommu_device_sysfs_remove(&iommu->iommu); | ||
| 1114 | } | ||
| 1113 | 1115 | ||
| 1114 | if (iommu->irq) { | 1116 | if (iommu->irq) { |
| 1115 | if (iommu->pr_irq) { | 1117 | if (iommu->pr_irq) { |
