All of lore.kernel.org
 help / color / mirror / Atom feed
From: Joerg Roedel <joro-zLv9SwRftAIdnm+yROfE0A@public.gmane.org>
To: Tom Lendacky <thomas.lendacky-5C7GfCeVMHo@public.gmane.org>
Cc: Arindam Nath <arindam.nath-5C7GfCeVMHo@public.gmane.org>,
	iommu-cunTk1MwBs9QetFLy7KEm3xJsTq8ys+cHZ5vskTnxNA@public.gmane.org
Subject: Re: [PATCH v1 3/3] iommu/amd: Optimize the IOMMU queue flush
Date: Tue, 6 Jun 2017 14:05:17 +0200	[thread overview]
Message-ID: <20170606120516.GD30388@8bytes.org> (raw)
In-Reply-To: <20170605195235.11512.52995.stgit-qCXWGYdRb2BnqfbPTmsdiZQ+2ll4COg0XqFh9Ls21Oc@public.gmane.org>

Hey Tom,

On Mon, Jun 05, 2017 at 02:52:35PM -0500, Tom Lendacky wrote:
> After reducing the amount of MMIO performed by the IOMMU during operation,
> perf data shows that flushing the TLB for all protection domains during
> DMA unmapping is a performance issue. It is not necessary to flush the
> TLBs for all protection domains, only the protection domains associated
> with iova's on the flush queue.
> 
> Create a separate queue that tracks the protection domains associated with
> the iova's on the flush queue. This new queue optimizes the flushing of
> TLBs to the required protection domains.
> 
> Reviewed-by: Arindam Nath <arindam.nath-5C7GfCeVMHo@public.gmane.org>
> Signed-off-by: Tom Lendacky <thomas.lendacky-5C7GfCeVMHo@public.gmane.org>
> ---
>  drivers/iommu/amd_iommu.c |   56 ++++++++++++++++++++++++++++++++++++++++-----
>  1 file changed, 50 insertions(+), 6 deletions(-)

I also did a major rewrite of the AMD IOMMU queue handling and flushing
code last week. It is functionally complete and I am currently testing,
documenting it, and cleaning it up. I pushed the current state of it to

	git://git.kernel.org/pub/scm/linux/kernel/git/joro/linux.git amd-iommu

Its quite intrusive as it implements a per-domain flush-queue, and uses
a ring-buffer instead of a real queue. But you see the details in the
code.

Can you please have a look and give it a test in your setup?


Thanks,

	Joerg

  parent reply	other threads:[~2017-06-06 12:05 UTC|newest]

Thread overview: 24+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2017-06-05 19:52 [PATCH v1 0/3] iommu/amd: AMD IOMMU performance updates 2017-06-05 Tom Lendacky
     [not found] ` <20170605195203.11512.20579.stgit-qCXWGYdRb2BnqfbPTmsdiZQ+2ll4COg0XqFh9Ls21Oc@public.gmane.org>
2017-06-05 19:52   ` [PATCH v1 1/3] iommu/amd: Reduce amount of MMIO when submitting commands Tom Lendacky
2017-06-05 19:52   ` [PATCH v1 2/3] iommu/amd: Reduce delay waiting for command buffer space Tom Lendacky
2017-06-05 19:52   ` [PATCH v1 3/3] iommu/amd: Optimize the IOMMU queue flush Tom Lendacky
     [not found]     ` <20170605195235.11512.52995.stgit-qCXWGYdRb2BnqfbPTmsdiZQ+2ll4COg0XqFh9Ls21Oc@public.gmane.org>
2017-06-06 10:02       ` Nath, Arindam
     [not found]         ` <MWHPR12MB15181A6A020ACA2F53DF70339CCB0-Gy0DoCVfaSXKu+HfpMNLNQdYzm3356FpvxpqHgZTriW3zl9H0oFU5g@public.gmane.org>
2017-06-08 20:33           ` Jan Vesely
     [not found]             ` <1496954035.4188.1.camel-kgbqMDwikbSVc3sceRu5cw@public.gmane.org>
2017-06-08 23:31               ` Craig Stein
2017-06-21 16:20               ` Jan Vesely
     [not found]                 ` <1498062018.17007.6.camel-kgbqMDwikbSVc3sceRu5cw@public.gmane.org>
2017-06-21 17:01                   ` Tom Lendacky
     [not found]                     ` <bf685f44-019c-4c21-25d4-6a6ea647b7cc-5C7GfCeVMHo@public.gmane.org>
2017-06-21 21:09                       ` Jan Vesely
     [not found]                         ` <1498079371.17007.18.camel-kgbqMDwikbSVc3sceRu5cw@public.gmane.org>
2017-06-22  9:20                           ` Joerg Roedel
     [not found]                             ` <20170622092053.GV30388-zLv9SwRftAIdnm+yROfE0A@public.gmane.org>
2017-06-22 15:13                               ` Jan Vesely
     [not found]                                 ` <1498144389.17007.25.camel-kgbqMDwikbSVc3sceRu5cw@public.gmane.org>
2017-06-22 21:57                                   ` Joerg Roedel
     [not found]                                     ` <20170622215735.GW30388-zLv9SwRftAIdnm+yROfE0A@public.gmane.org>
2017-06-23 14:20                                       ` Jan Vesely
     [not found]                                         ` <1498227647.17007.31.camel-kgbqMDwikbSVc3sceRu5cw@public.gmane.org>
2017-06-26 12:14                                           ` Joerg Roedel
     [not found]                                             ` <20170626121430.GX30388-zLv9SwRftAIdnm+yROfE0A@public.gmane.org>
2017-06-27 16:24                                               ` Jan Vesely
     [not found]                                                 ` <1498580675.10525.3.camel-kgbqMDwikbSVc3sceRu5cw@public.gmane.org>
2017-06-28  8:36                                                   ` Joerg Roedel
     [not found]                                                     ` <20170628083659.GA30388-zLv9SwRftAIdnm+yROfE0A@public.gmane.org>
2017-06-28 22:14                                                       ` Deucher, Alexander
     [not found]                                                         ` <BN6PR12MB16525D2E89F4AB61DC36EFBEF7DD0-/b2+HYfkarQqUD6E6FAiowdYzm3356FpvxpqHgZTriW3zl9H0oFU5g@public.gmane.org>
2017-07-04 16:29                                                           ` Craig Stein
2017-06-06 12:05       ` Joerg Roedel [this message]
     [not found]         ` <20170606120516.GD30388-zLv9SwRftAIdnm+yROfE0A@public.gmane.org>
2017-06-06 13:36           ` Tom Lendacky
     [not found]             ` <85356483-1d5e-251f-57e3-d9f761239100-5C7GfCeVMHo@public.gmane.org>
2017-06-07 14:03               ` Tom Lendacky
     [not found]                 ` <32599b14-c138-3c89-6834-0335fec0b3f6-5C7GfCeVMHo@public.gmane.org>
2017-06-07 14:17                   ` Joerg Roedel
2017-06-08 12:43   ` [PATCH v1 0/3] iommu/amd: AMD IOMMU performance updates 2017-06-05 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=20170606120516.GD30388@8bytes.org \
    --to=joro-zlv9swrftaidnm+yrofe0a@public.gmane.org \
    --cc=arindam.nath-5C7GfCeVMHo@public.gmane.org \
    --cc=iommu-cunTk1MwBs9QetFLy7KEm3xJsTq8ys+cHZ5vskTnxNA@public.gmane.org \
    --cc=thomas.lendacky-5C7GfCeVMHo@public.gmane.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 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.