Commit 2822e582 authored by Joerg Roedel's avatar Joerg Roedel
Browse files

iommu/amd: Do not use IOMMUv2 functionality when SME is active



When memory encryption is active the device is likely not in a direct
mapped domain. Forbid using IOMMUv2 functionality for now until finer
grained checks for this have been implemented.

Signed-off-by: default avatarJoerg Roedel <jroedel@suse.de>
Link: https://lore.kernel.org/r/20200824105415.21000-3-joro@8bytes.org


Signed-off-by: default avatarJoerg Roedel <jroedel@suse.de>
parent 7cad5548
Loading
Loading
Loading
Loading
+7 −0
Original line number Diff line number Diff line
@@ -737,6 +737,13 @@ int amd_iommu_init_device(struct pci_dev *pdev, int pasids)

	might_sleep();

	/*
	 * When memory encryption is active the device is likely not in a
	 * direct-mapped domain. Forbid using IOMMUv2 functionality for now.
	 */
	if (mem_encrypt_active())
		return -ENODEV;

	if (!amd_iommu_v2_supported())
		return -ENODEV;