iommu.lists.linux-foundation.org archive mirror
 help / color / mirror / Atom feed
From: Joerg Roedel <joro@8bytes.org>
To: Joerg Roedel <joro@8bytes.org>
Cc: fenghua.yu@intel.com, tony.luck@intel.com,
	linux-ia64@vger.kernel.org, corbet@lwn.net,
	Joerg Roedel <jroedel@suse.de>,
	x86@kernel.org, linux-doc@vger.kernel.org,
	linux-kernel@vger.kernel.org, iommu@lists.linux-foundation.org,
	mingo@redhat.com, bp@alien8.de, Thomas.Lendacky@amd.com,
	hpa@zytor.com, tglx@linutronix.de
Subject: [PATCH 10/11] iommu: Disable passthrough mode when SME is active
Date: Mon, 19 Aug 2019 15:22:55 +0200	[thread overview]
Message-ID: <20190819132256.14436-11-joro@8bytes.org> (raw)
In-Reply-To: <20190819132256.14436-1-joro@8bytes.org>

From: Joerg Roedel <jroedel@suse.de>

Using Passthrough mode when SME is active causes certain
devices to use the SWIOTLB bounce buffer. The bounce buffer
code has an upper limit of 256kb for the size of DMA
allocations, which is too small for certain devices and
causes them to fail.

With this patch we enable IOMMU by default when SME is
active in the system, making the default configuration work
for more systems than it does now.

Users that don't want IOMMUs to be enabled still can disable
them with kernel parameters.

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

diff --git a/drivers/iommu/iommu.c b/drivers/iommu/iommu.c
index 01759d4ac70b..ec18c9630e93 100644
--- a/drivers/iommu/iommu.c
+++ b/drivers/iommu/iommu.c
@@ -119,6 +119,11 @@ static int __init iommu_subsys_init(void)
 			iommu_set_default_passthrough(false);
 		else
 			iommu_set_default_translated(false);
+
+		if (iommu_default_passthrough() && sme_active()) {
+			pr_info("SME detected - Disabling default IOMMU Passthrough\n");
+			iommu_set_default_translated(false);
+		}
 	}
 
 	pr_info("Default domain type: %s %s\n",
-- 
2.16.4

_______________________________________________
iommu mailing list
iommu@lists.linux-foundation.org
https://lists.linuxfoundation.org/mailman/listinfo/iommu

  parent reply	other threads:[~2019-08-19 13:23 UTC|newest]

Thread overview: 15+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2019-08-19 13:22 [PATCH 00/11 v3] Cleanup IOMMU passthrough setting (and disable IOMMU Passthrough when SME is active) Joerg Roedel
2019-08-19 13:22 ` [PATCH 01/11] iommu: Remember when default domain type was set on kernel command line Joerg Roedel
2019-08-19 13:22 ` [PATCH 02/11] iommu: Add helpers to set/get default domain type Joerg Roedel
2019-08-19 13:22 ` [PATCH 03/11] iommu: Use Functions to set default domain type in iommu_set_def_domain_type() Joerg Roedel
2019-08-19 13:22 ` [PATCH 04/11] iommu/amd: Request passthrough mode from IOMMU core Joerg Roedel
2019-08-19 13:22 ` [PATCH 05/11] iommu/vt-d: " Joerg Roedel
2019-08-19 13:22 ` [PATCH 06/11] x86/dma: Get rid of iommu_pass_through Joerg Roedel
2019-08-20 11:17   ` Borislav Petkov
2019-08-19 13:22 ` [PATCH 07/11] ia64: " Joerg Roedel
2019-08-19 13:22 ` [PATCH 08/11] iommu: Print default domain type on boot Joerg Roedel
2019-08-19 13:22 ` [PATCH 09/11] iommu: Set default domain type at runtime Joerg Roedel
2019-08-19 13:22 ` Joerg Roedel [this message]
2019-08-20 21:18   ` [PATCH 10/11] iommu: Disable passthrough mode when SME is active Lendacky, Thomas
2019-08-19 13:22 ` [PATCH 11/11] Documentation: Update Documentation for iommu.passthrough Joerg Roedel
2019-08-23  8:12 ` [PATCH 00/11 v3] Cleanup IOMMU passthrough setting (and disable IOMMU Passthrough when SME is active) Joerg Roedel

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20190819132256.14436-11-joro@8bytes.org \
    --to=joro@8bytes.org \
    --cc=Thomas.Lendacky@amd.com \
    --cc=bp@alien8.de \
    --cc=corbet@lwn.net \
    --cc=fenghua.yu@intel.com \
    --cc=hpa@zytor.com \
    --cc=iommu@lists.linux-foundation.org \
    --cc=jroedel@suse.de \
    --cc=linux-doc@vger.kernel.org \
    --cc=linux-ia64@vger.kernel.org \
    --cc=linux-kernel@vger.kernel.org \
    --cc=mingo@redhat.com \
    --cc=tglx@linutronix.de \
    --cc=tony.luck@intel.com \
    --cc=x86@kernel.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).