From: Baoquan He <bhe-H+wXaHxf7aLQT0dZR+AlfA@public.gmane.org>
To: joro-zLv9SwRftAIdnm+yROfE0A@public.gmane.org
Cc: dyoung-H+wXaHxf7aLQT0dZR+AlfA@public.gmane.org,
iommu-cunTk1MwBs9QetFLy7KEm3xJsTq8ys+cHZ5vskTnxNA@public.gmane.org,
kexec-IAPFreCvJWM7uuMidbF8XUB+6BGkLq7r@public.gmane.org,
linux-kernel-u79uwXL29TY76Z2rM5mHXA@public.gmane.org
Subject: Re: [PATCH v7 00/12] Fix kdump faults on system with amd iommu
Date: Sat, 24 Dec 2016 11:47:05 +0800 [thread overview]
Message-ID: <20161224034705.GE25035@x1> (raw)
In-Reply-To: <1480050799-1237-1-git-send-email-bhe-H+wXaHxf7aLQT0dZR+AlfA@public.gmane.org>
Hi Joerg,
Ping!
Could you help review this version? Not sure this could catch up to
v4.10 merging.
Thanks
Baoqaun
On 11/25/16 at 01:13pm, Baoquan He wrote:
> This is v7 post.
>
> The principle of the fix is similar to intel iommu. Just defer the assignment
> of device to domain to device driver init. In this version of post, a new
> call-back is_attach_deferred is added to iommu-ops, it's used to check whether
> we need defer the domain attach/detach in iommu-core code.
>
> v5:
> bnx2 NIC can't reset itself during driver init. Post patch to reset
> it during driver init. IO_PAGE_FAULT can't be seen anymore.
>
> Below is link of v5 post.
> https://lists.linuxfoundation.org/pipermail/iommu/2016-September/018527.html
>
> v5->v6:
> According to Joerg's comments made several below main changes:
> - Add sanity check when copy old dev tables.
>
> - If a device is set up with guest translations (DTE.GV=1), then don't
> copy that information but move the device over to an empty guest-cr3
> table and handle the faults in the PPR log (which just answer them
> with INVALID).
>
> v6->v7:
> Two main changes are made according to Joerg's suggestion:
> - Add is_attach_deferred call-back to iommu-ops. With this domain
> can be deferred to device driver init cleanly.
>
> - Allocate memory below 4G for dev table if translation pre-enabled.
> AMD engineer pointed out that it's unsafe to update the device-table
> while iommu is enabled. device-table pointer update is split up into
> two 32bit writes in the IOMMU hardware. So updating it while the IOMMU
> is enabled could have some nasty side effects.
>
> Baoquan He (12):
> iommu/amd: Detect pre enabled translation
> iommu/amd: add several helper function
> iommu/amd: Define bit fields for DTE particularly
> iommu/amd: Add function copy_dev_tables
> iommu/amd: copy old trans table from old kernel
> iommu: Add is_attach_deferred call-back to iommu-ops
> iommu/amd: Use is_attach_deferred call-back
> iommu/amd: Add sanity check of irq remap information of old dev table
> entry
> iommu/amd: Don't copy GCR3 table root pointer
> iommu/amd: Clear out the GV flag when handle deferred domain attach
> iommu: Assign the direct mapped domain to group->domain
> iommu/amd: Allocate memory below 4G for dev table if translation
> pre-enabled
>
> drivers/iommu/amd_iommu.c | 78 +++++++++-------
> drivers/iommu/amd_iommu_init.c | 201 +++++++++++++++++++++++++++++++++++++---
> drivers/iommu/amd_iommu_proto.h | 2 +
> drivers/iommu/amd_iommu_types.h | 53 ++++++++++-
> drivers/iommu/amd_iommu_v2.c | 18 +++-
> drivers/iommu/iommu.c | 9 ++
> include/linux/iommu.h | 1 +
> 7 files changed, 313 insertions(+), 49 deletions(-)
>
> --
> 2.5.5
>
prev parent reply other threads:[~2016-12-24 3:47 UTC|newest]
Thread overview: 14+ messages / expand[flat|nested] mbox.gz Atom feed top
2016-11-25 5:13 [PATCH v7 00/12] Fix kdump faults on system with amd iommu Baoquan He
[not found] ` <1480050799-1237-1-git-send-email-bhe-H+wXaHxf7aLQT0dZR+AlfA@public.gmane.org>
2016-11-25 5:13 ` [PATCH v7 01/12] iommu/amd: Detect pre enabled translation Baoquan He
2016-11-25 5:13 ` [PATCH v7 02/12] iommu/amd: add several helper function Baoquan He
2016-11-25 5:13 ` [PATCH v7 03/12] iommu/amd: Define bit fields for DTE particularly Baoquan He
2016-11-25 5:13 ` [PATCH v7 04/12] iommu/amd: Add function copy_dev_tables Baoquan He
2016-11-25 5:13 ` [PATCH v7 05/12] iommu/amd: copy old trans table from old kernel Baoquan He
2016-11-25 5:13 ` [PATCH v7 06/12] iommu: Add is_attach_deferred call-back to iommu-ops Baoquan He
2016-11-25 5:13 ` [PATCH v7 07/12] iommu/amd: Use is_attach_deferred call-back Baoquan He
2016-11-25 5:13 ` [PATCH v7 08/12] iommu/amd: Add sanity check of irq remap information of old dev table entry Baoquan He
2016-11-25 5:13 ` [PATCH v7 09/12] iommu/amd: Don't copy GCR3 table root pointer Baoquan He
2016-11-25 5:13 ` [PATCH v7 10/12] iommu/amd: Clear out the GV flag when handle deferred domain attach Baoquan He
2016-11-25 5:13 ` [PATCH v7 11/12] iommu: Assign the direct mapped domain to group->domain Baoquan He
2016-11-25 5:13 ` [PATCH v7 12/12] iommu/amd: Allocate memory below 4G for dev table if translation pre-enabled Baoquan He
2016-12-24 3:47 ` Baoquan He [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=20161224034705.GE25035@x1 \
--to=bhe-h+wxahxf7alqt0dzr+alfa@public.gmane.org \
--cc=dyoung-H+wXaHxf7aLQT0dZR+AlfA@public.gmane.org \
--cc=iommu-cunTk1MwBs9QetFLy7KEm3xJsTq8ys+cHZ5vskTnxNA@public.gmane.org \
--cc=joro-zLv9SwRftAIdnm+yROfE0A@public.gmane.org \
--cc=kexec-IAPFreCvJWM7uuMidbF8XUB+6BGkLq7r@public.gmane.org \
--cc=linux-kernel-u79uwXL29TY76Z2rM5mHXA@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 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).