Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]


Groups > linux.kernel > #1667792

[PATCH 6/7] iommu/amd: Free IOMMU resources when disabled on command line

From Joerg Roedel <joro@8bytes.org>
Newsgroups linux.kernel
Subject [PATCH 6/7] iommu/amd: Free IOMMU resources when disabled on command line
Date 2017-06-16 16:20 +0200
Message-ID <tT0gr-1a4-35@gated-at.bofh.it> (permalink)
References <tT0gp-1a4-3@gated-at.bofh.it>
Organization linux.* mail to news gateway

Show all headers | View raw


From: Joerg Roedel <jroedel@suse.de>

After we made sure that all IOMMUs have been disabled we
need to make sure that all resources we allocated are
released again.

Signed-off-by: Joerg Roedel <jroedel@suse.de>
---
 drivers/iommu/amd_iommu_init.c | 7 +++++++
 1 file changed, 7 insertions(+)

diff --git a/drivers/iommu/amd_iommu_init.c b/drivers/iommu/amd_iommu_init.c
index d04898c..eedd3d3 100644
--- a/drivers/iommu/amd_iommu_init.c
+++ b/drivers/iommu/amd_iommu_init.c
@@ -2428,6 +2428,13 @@ static int __init state_next(void)
 	case IOMMU_IVRS_DETECTED:
 		ret = early_amd_iommu_init();
 		init_state = ret ? IOMMU_INIT_ERROR : IOMMU_ACPI_FINISHED;
+		if (init_state == IOMMU_ACPI_FINISHED && amd_iommu_disabled) {
+			pr_info("AMD-Vi: AMD IOMMU disabled on kernel command-line\n");
+			free_dma_resources();
+			free_iommu_resources();
+			init_state = IOMMU_CMDLINE_DISABLED;
+			ret = -EINVAL;
+		}
 		break;
 	case IOMMU_ACPI_FINISHED:
 		early_enable_iommus();
-- 
2.7.4

Back to linux.kernel | Previous | NextPrevious in thread | Find similar | Unroll thread


Thread

[PATCH 0/7] iommu/amd: Disable previously enabled IOMMUs at boot Joerg Roedel <joro@8bytes.org> - 2017-06-16 16:20 +0200
  [PATCH 6/7] iommu/amd: Free IOMMU resources when disabled on command line Joerg Roedel <joro@8bytes.org> - 2017-06-16 16:20 +0200

csiph-web