From: Julien Grall <julien.grall@linaro.org>
To: Julien Grall <julien.grall@linaro.org>,
Suravee Suthikulpanit <suravee.suthikulpanit@amd.com>,
sherry.hurwitz@amd.com
Cc: xen-devel@lists.xenproject.org, Jan Beulich <jbeulich@suse.com>,
tim@xen.org, ian.campbell@citrix.com,
stefano.stabellini@citrix.com
Subject: Re: [PATCH v4 06/21] xen/passthrough: amd: Remove domain_id from hvm_iommu
Date: Mon, 28 Apr 2014 17:38:20 +0100 [thread overview]
Message-ID: <535E83FC.7050309@linaro.org> (raw)
In-Reply-To: <1398172475-27873-7-git-send-email-julien.grall@linaro.org>
Hello Sherry and Suravee,
Can one of you ack this change in the AMD IOMMU drivers?
Regards,
On 04/22/2014 02:14 PM, Julien Grall wrote:
> The structure hvm_iommu contains a shadow value of domain->domain_id. There
> is no reason to not directly use domain->domain_id.
>
> Signed-off-by: Julien Grall <julien.grall@linaro.org>
> Acked-by: Ian Campbell <ian.campbell@citrix.com>
> Cc: Suravee Suthikulpanit <suravee.suthikulpanit@amd.com>
> Cc: Jan Beulich <jbeulich@suse.com>
>
> ---
> Changes in v3:
> - Patch added
> ---
> xen/drivers/passthrough/amd/iommu_cmd.c | 3 +--
> xen/drivers/passthrough/amd/iommu_map.c | 2 +-
> xen/drivers/passthrough/amd/pci_amd_iommu.c | 8 +++-----
> xen/include/xen/hvm/iommu.h | 1 -
> 4 files changed, 5 insertions(+), 9 deletions(-)
>
> diff --git a/xen/drivers/passthrough/amd/iommu_cmd.c b/xen/drivers/passthrough/amd/iommu_cmd.c
> index d27bd3c..4faa01b 100644
> --- a/xen/drivers/passthrough/amd/iommu_cmd.c
> +++ b/xen/drivers/passthrough/amd/iommu_cmd.c
> @@ -354,8 +354,7 @@ static void _amd_iommu_flush_pages(struct domain *d,
> {
> unsigned long flags;
> struct amd_iommu *iommu;
> - struct hvm_iommu *hd = domain_hvm_iommu(d);
> - unsigned int dom_id = hd->domain_id;
> + unsigned int dom_id = d->domain_id;
>
> /* send INVALIDATE_IOMMU_PAGES command */
> for_each_amd_iommu ( iommu )
> diff --git a/xen/drivers/passthrough/amd/iommu_map.c b/xen/drivers/passthrough/amd/iommu_map.c
> index 1294561..b79e470 100644
> --- a/xen/drivers/passthrough/amd/iommu_map.c
> +++ b/xen/drivers/passthrough/amd/iommu_map.c
> @@ -614,7 +614,7 @@ static int update_paging_mode(struct domain *d, unsigned long gfn)
> /* valid = 0 only works for dom0 passthrough mode */
> amd_iommu_set_root_page_table((u32 *)device_entry,
> page_to_maddr(hd->root_table),
> - hd->domain_id,
> + d->domain_id,
> hd->paging_mode, 1);
>
> amd_iommu_flush_device(iommu, req_id);
> diff --git a/xen/drivers/passthrough/amd/pci_amd_iommu.c b/xen/drivers/passthrough/amd/pci_amd_iommu.c
> index 366c750..51b75fc 100644
> --- a/xen/drivers/passthrough/amd/pci_amd_iommu.c
> +++ b/xen/drivers/passthrough/amd/pci_amd_iommu.c
> @@ -138,7 +138,7 @@ static void amd_iommu_setup_domain_device(
> {
> /* bind DTE to domain page-tables */
> amd_iommu_set_root_page_table(
> - (u32 *)dte, page_to_maddr(hd->root_table), hd->domain_id,
> + (u32 *)dte, page_to_maddr(hd->root_table), domain->domain_id,
> hd->paging_mode, valid);
>
> if ( pci_ats_device(iommu->seg, bus, pdev->devfn) &&
> @@ -152,7 +152,7 @@ static void amd_iommu_setup_domain_device(
> "domain = %d, paging mode = %d\n",
> req_id, pdev->type,
> page_to_maddr(hd->root_table),
> - hd->domain_id, hd->paging_mode);
> + domain->domain_id, hd->paging_mode);
> }
>
> spin_unlock_irqrestore(&iommu->lock, flags);
> @@ -274,8 +274,6 @@ static int amd_iommu_domain_init(struct domain *d)
> IOMMU_PAGING_MODE_LEVEL_2 :
> get_paging_mode(max_page);
>
> - hd->domain_id = d->domain_id;
> -
> guest_iommu_init(d);
>
> return 0;
> @@ -334,7 +332,7 @@ void amd_iommu_disable_domain_device(struct domain *domain,
>
> AMD_IOMMU_DEBUG("Disable: device id = %#x, "
> "domain = %d, paging mode = %d\n",
> - req_id, domain_hvm_iommu(domain)->domain_id,
> + req_id, domain->domain_id,
> domain_hvm_iommu(domain)->paging_mode);
> }
> spin_unlock_irqrestore(&iommu->lock, flags);
> diff --git a/xen/include/xen/hvm/iommu.h b/xen/include/xen/hvm/iommu.h
> index 8c98274..dc9c766 100644
> --- a/xen/include/xen/hvm/iommu.h
> +++ b/xen/include/xen/hvm/iommu.h
> @@ -38,7 +38,6 @@ struct hvm_iommu {
> struct list_head mapped_rmrrs;
>
> /* amd iommu support */
> - int domain_id;
> int paging_mode;
> struct page_info *root_table;
> struct guest_iommu *g_iommu;
>
--
Julien Grall
next prev parent reply other threads:[~2014-04-28 16:38 UTC|newest]
Thread overview: 72+ messages / expand[flat|nested] mbox.gz Atom feed top
2014-04-22 13:14 [PATCH v4 00/21] IOMMU support for ARM Julien Grall
2014-04-22 13:14 ` [PATCH v4 01/21] xen/arm: map_device: Don't hardcode dom0 in print message Julien Grall
2014-04-28 13:49 ` Ian Campbell
2014-04-22 13:14 ` [PATCH v4 02/21] xen/arm: Constify address pointer for cache helpers Julien Grall
2014-04-28 13:52 ` Ian Campbell
2014-04-22 13:14 ` [PATCH v4 03/21] xen/arm: p2m: Move comment that was misplaced Julien Grall
2014-04-28 13:52 ` Ian Campbell
2014-04-22 13:14 ` [PATCH v4 04/21] xen/arm: p2m: apply_p2m_changes: Only load domain P2M when we flush TLBs Julien Grall
2014-04-28 13:54 ` Ian Campbell
2014-04-28 13:57 ` Julien Grall
2014-04-22 13:14 ` [PATCH v4 05/21] xen/common: grant-table: only call IOMMU if paging mode translate is disabled Julien Grall
2014-04-22 13:14 ` [PATCH v4 06/21] xen/passthrough: amd: Remove domain_id from hvm_iommu Julien Grall
2014-04-28 16:38 ` Julien Grall [this message]
2014-04-29 7:43 ` Jan Beulich
2014-04-30 4:02 ` Suravee Suthikulpanit
2014-04-30 3:56 ` Suravee Suthikulpanit
2014-04-30 11:32 ` Julien Grall
2014-04-22 13:14 ` [PATCH v4 07/21] xen/passthrough: amd: rename iommu_has_feature into amd_iommu_has_feature Julien Grall
2014-04-28 13:56 ` Ian Campbell
2014-04-28 16:38 ` Julien Grall
2014-05-02 13:11 ` Julien Grall
2014-05-02 16:35 ` Aravind Gopalakrishnan
2014-04-22 13:14 ` [PATCH v4 08/21] xen/passthrough: vtd: iommu_set_hwdom_mapping is VTD specific Julien Grall
2014-04-22 13:41 ` Jan Beulich
2014-04-22 14:47 ` Julien Grall
2014-04-22 13:14 ` [PATCH v4 09/21] xen/dts: Add dt_property_read_bool Julien Grall
2014-04-22 13:14 ` [PATCH v4 10/21] xen/dts: Add dt_parse_phandle_with_args and dt_parse_phandle Julien Grall
2014-04-22 13:14 ` [PATCH v4 11/21] xen/passthrough: rework hwdom_pvh_reqs to use it also on ARM Julien Grall
2014-04-28 13:57 ` Ian Campbell
2014-04-22 13:14 ` [PATCH v4 12/21] xen/passthrough: iommu: Split generic IOMMU code Julien Grall
2014-04-22 13:48 ` Jan Beulich
2014-04-22 13:52 ` Jan Beulich
2014-04-22 14:58 ` Julien Grall
2014-04-22 16:33 ` Jan Beulich
2014-04-22 16:45 ` Julien Grall
2014-04-22 16:59 ` Jan Beulich
2014-04-22 18:02 ` Julien Grall
2014-04-23 8:43 ` Jan Beulich
2014-04-23 12:42 ` Julien Grall
2014-04-22 13:14 ` [PATCH v4 13/21] xen/passthrough: iommu: Introduce arch specific code Julien Grall
2014-04-28 16:39 ` Julien Grall
[not found] ` <CAAAAutDRYoqdSBdDsETqtzVDdXmy6jq1Jnm1ck8c5eTqbkMUFw@mail.gmail.com>
2014-05-05 21:12 ` Fwd: " Aravind Gopalakrishnan
2014-04-22 13:14 ` [PATCH v4 14/21] xen/passthrough: iommu: Basic support of device tree assignment Julien Grall
2014-04-28 14:01 ` Ian Campbell
2014-04-28 14:12 ` Julien Grall
2014-04-22 13:14 ` [PATCH v4 15/21] xen/passthrough: Introduce IOMMU ARM architecture Julien Grall
2014-04-28 14:04 ` Ian Campbell
2014-04-28 14:21 ` Julien Grall
2014-04-22 13:14 ` [PATCH v4 16/21] MAINTAINERS: Add drivers/passthrough/arm Julien Grall
2014-04-22 13:50 ` Jan Beulich
2014-04-22 15:02 ` Julien Grall
2014-04-22 16:35 ` Jan Beulich
2014-04-22 18:02 ` Julien Grall
2014-04-22 13:14 ` [PATCH v4 17/21] xen/arm: Don't give IOMMU devices to dom0 when iommu is disabled Julien Grall
2014-04-22 13:14 ` [PATCH v4 18/21] xen/arm: p2m: Clean cache PT when the IOMMU doesn't support coherent walk Julien Grall
2014-04-28 14:09 ` Ian Campbell
2014-04-28 14:46 ` Julien Grall
2014-04-28 16:34 ` Julien Grall
2014-04-29 7:40 ` Jan Beulich
2014-05-02 15:15 ` Julien Grall
2014-04-22 13:14 ` [PATCH v4 19/21] xen/arm: grant: Add another entry to map MFN 1:1 in dom0 p2m Julien Grall
2014-04-28 14:11 ` Ian Campbell
2014-04-28 14:47 ` Julien Grall
2014-04-22 13:14 ` [PATCH v4 20/21] drivers/passthrough: arm: Add support for SMMU drivers Julien Grall
2014-04-28 14:13 ` Ian Campbell
2014-04-22 13:14 ` [PATCH v4 21/21] xen/arm: Add the property "protected-devices" in the hypervisor node Julien Grall
2014-05-02 12:54 ` [PATCH v4 00/21] IOMMU support for ARM Ian Campbell
2014-05-02 13:09 ` Julien Grall
2014-05-02 13:15 ` Julien Grall
2014-05-02 13:25 ` Ian Campbell
2014-05-02 13:29 ` Julien Grall
2014-05-02 14:20 ` Ian Campbell
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=535E83FC.7050309@linaro.org \
--to=julien.grall@linaro.org \
--cc=ian.campbell@citrix.com \
--cc=jbeulich@suse.com \
--cc=sherry.hurwitz@amd.com \
--cc=stefano.stabellini@citrix.com \
--cc=suravee.suthikulpanit@amd.com \
--cc=tim@xen.org \
--cc=xen-devel@lists.xenproject.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).