All of lore.kernel.org
 help / color / mirror / Atom feed
From: Joerg Roedel <jroedel@suse.de>
To: Shaohua Li <shli@fb.com>
Cc: linux-kernel@vger.kernel.org, gang.wei@intel.com,
	hpa@linux.intel.com, mingo@kernel.org, kernel-team@fb.com,
	ning.sun@intel.com, srihan@fb.com, alex.eydelberg@intel.com
Subject: Re: [PATCH] x86/tboot: add an option to disable iommu force on
Date: Wed, 26 Apr 2017 12:39:38 +0200	[thread overview]
Message-ID: <20170426103938.GS5077@suse.de> (raw)
In-Reply-To: <fb5bfaa0847c13334a3332ea2f5f53220c5ac3d6.1493137246.git.shli@fb.com>

On Tue, Apr 25, 2017 at 09:28:53AM -0700, Shaohua Li wrote:
> IOMMU harms performance signficantly when we run very fast networking
> workloads. It's 40GB networking doing XDP test. Software overhead is
> almost unaware, but it's the IOTLB miss (based on our analysis) which
> kills the performance. We observed the same performance issue even with
> software passthrough (identity mapping), only the hardware passthrough
> survives. The pps with iommu (with software passthrough) is only about
> ~30% of that without it. This is a limitation in hardware based on our
> observation, so we'd like to disable the IOMMU force on, but we do want
> to use TBOOT and we can sacrifice the DMA security bought by IOMMU. I
> must admit I know nothing about TBOOT, but TBOOT guys (cc-ed) think not
> eabling IOMMU is totally ok.
> 
> So introduce a new boot option to disable the force on. It's kind of
> silly we need to run into intel_iommu_init even without force on, but we
> need to disable TBOOT PMR registers. For system without the boot option,
> nothing is changed.
> 
> Signed-off-by: Shaohua Li <shli@fb.com>
> ---
>  Documentation/admin-guide/kernel-parameters.txt |  5 +++++
>  arch/x86/kernel/tboot.c                         |  3 +++
>  drivers/iommu/intel-iommu.c                     | 21 ++++++++++++++++++++-
>  include/linux/dma_remapping.h                   |  1 +
>  4 files changed, 29 insertions(+), 1 deletion(-)

Patch does not apply to my x86/vt-d branch.

> diff --git a/Documentation/admin-guide/kernel-parameters.txt b/Documentation/admin-guide/kernel-parameters.txt
> index facc20a..10c393b 100644
> --- a/Documentation/admin-guide/kernel-parameters.txt
> +++ b/Documentation/admin-guide/kernel-parameters.txt
> @@ -1578,6 +1578,11 @@
>  			extended tables themselves, and also PASID support. With
>  			this option set, extended tables will not be used even
>  			on hardware which claims to support them.
> +		tboot_noforce [Default Off]
> +			By default, tboot will force Intel IOMMU on, which
> +			could harm performance for some workloads even IOMMU
> +			identity mapping is enabled. This option will avoid
> +			the 'force on' for Intel IOMMU.

Also the wording here should be more clear. How about:

> +			Do not force the Intel IOMMU enabled under
> +			tboot.	
> +			By default, tboot will force Intel IOMMU on, which
> +			could harm performance of some high-throughput
> +			devices like 40GBit network cards, even if
> +			identity mapping is enabled.
> +			Note that using this option lowers the security
> +			provided by tboot because it makes the system
> +			vulnerable to DMA attacks.

Regards,

	Joerg

      reply	other threads:[~2017-04-26 10:40 UTC|newest]

Thread overview: 2+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2017-04-25 16:28 [PATCH] x86/tboot: add an option to disable iommu force on Shaohua Li
2017-04-26 10:39 ` Joerg Roedel [this message]

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=20170426103938.GS5077@suse.de \
    --to=jroedel@suse.de \
    --cc=alex.eydelberg@intel.com \
    --cc=gang.wei@intel.com \
    --cc=hpa@linux.intel.com \
    --cc=kernel-team@fb.com \
    --cc=linux-kernel@vger.kernel.org \
    --cc=mingo@kernel.org \
    --cc=ning.sun@intel.com \
    --cc=shli@fb.com \
    --cc=srihan@fb.com \
    /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 an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.