From: Eric Auger <eric.auger-QSEj5FYQhm4dnm+yROfE0A@public.gmane.org>
To: Robin Murphy <robin.murphy-5wv7dgnIgG8@public.gmane.org>,
eric.auger-qxv4g6HH51o@public.gmane.org,
alex.williamson-H+wXaHxf7aLQT0dZR+AlfA@public.gmane.org,
will.deacon-5wv7dgnIgG8@public.gmane.org,
joro-zLv9SwRftAIdnm+yROfE0A@public.gmane.org,
tglx-hfZtesqFncYOwBW4kG4KsQ@public.gmane.org,
jason-NLaQJdtUoK4Be96aLqz0jA@public.gmane.org,
marc.zyngier-5wv7dgnIgG8@public.gmane.org,
christoffer.dall-QSEj5FYQhm4dnm+yROfE0A@public.gmane.org,
linux-arm-kernel-IAPFreCvJWM7uuMidbF8XUB+6BGkLq7r@public.gmane.org
Cc: julien.grall-5wv7dgnIgG8@public.gmane.org,
patches-QSEj5FYQhm4dnm+yROfE0A@public.gmane.org,
p.fedin-Sze3O3UU22JBDgjK7y7TUQ@public.gmane.org,
linux-kernel-u79uwXL29TY76Z2rM5mHXA@public.gmane.org,
iommu-cunTk1MwBs9QetFLy7KEm3xJsTq8ys+cHZ5vskTnxNA@public.gmane.org,
pranav.sawargaonkar-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org
Subject: Re: [PATCH v7 01/10] iommu: Add DOMAIN_ATTR_MSI_MAPPING attribute
Date: Wed, 20 Apr 2016 17:58:48 +0200 [thread overview]
Message-ID: <5717A738.9090904@linaro.org> (raw)
In-Reply-To: <57177A4E.4090804-5wv7dgnIgG8@public.gmane.org>
Hi Robin,
On 04/20/2016 02:47 PM, Robin Murphy wrote:
> Hi Eric,
>
> On 19/04/16 17:56, Eric Auger wrote:
>> Introduce a new DOMAIN_ATTR_MSI_MAPPING domain attribute. If supported,
>> this means the MSI addresses need to be mapped in the IOMMU.
>>
>> x86 IOMMUs typically don't expose the attribute since on x86, MSI write
>> transaction addresses always are within the 1MB PA region [FEE0_0000h -
>> FEF0_000h] window which directly targets the APIC configuration space and
>> hence bypass the sMMU. On ARM and PowerPC however MSI transactions are
>> conveyed through the IOMMU.
>
> What's stopping us from simply inferring this from the domain's IOMMU
> not advertising interrupt remapping capabilities?
My current understanding is it is not possible:
on x86 CAP_INTR_REMAP is not systematically exposed (the feature can be
disabled) and MSIs are never mapped in the IOMMU I think.
Best Regards
Eric
>
> Robin.
>
>> Signed-off-by: Bharat Bhushan <Bharat.Bhushan-KZfg59tc24xl57MIdRCFDg@public.gmane.org>
>> Signed-off-by: Eric Auger <eric.auger-QSEj5FYQhm4dnm+yROfE0A@public.gmane.org>
>>
>> ---
>>
>> v4 -> v5:
>> - introduce the user in the next patch
>>
>> RFC v1 -> v1:
>> - the data field is not used
>> - for this attribute domain_get_attr simply returns 0 if the MSI_MAPPING
>> capability if needed or <0 if not.
>> - removed struct iommu_domain_msi_maps
>> ---
>> include/linux/iommu.h | 1 +
>> 1 file changed, 1 insertion(+)
>>
>> diff --git a/include/linux/iommu.h b/include/linux/iommu.h
>> index 62a5eae..b3e8c5b 100644
>> --- a/include/linux/iommu.h
>> +++ b/include/linux/iommu.h
>> @@ -113,6 +113,7 @@ enum iommu_attr {
>> DOMAIN_ATTR_FSL_PAMU_ENABLE,
>> DOMAIN_ATTR_FSL_PAMUV1,
>> DOMAIN_ATTR_NESTING, /* two stages of translation */
>> + DOMAIN_ATTR_MSI_MAPPING, /* Require MSIs mapping in iommu */
>> DOMAIN_ATTR_MAX,
>> };
>>
>>
>
WARNING: multiple messages have this Message-ID (diff)
From: eric.auger@linaro.org (Eric Auger)
To: linux-arm-kernel@lists.infradead.org
Subject: [PATCH v7 01/10] iommu: Add DOMAIN_ATTR_MSI_MAPPING attribute
Date: Wed, 20 Apr 2016 17:58:48 +0200 [thread overview]
Message-ID: <5717A738.9090904@linaro.org> (raw)
In-Reply-To: <57177A4E.4090804@arm.com>
Hi Robin,
On 04/20/2016 02:47 PM, Robin Murphy wrote:
> Hi Eric,
>
> On 19/04/16 17:56, Eric Auger wrote:
>> Introduce a new DOMAIN_ATTR_MSI_MAPPING domain attribute. If supported,
>> this means the MSI addresses need to be mapped in the IOMMU.
>>
>> x86 IOMMUs typically don't expose the attribute since on x86, MSI write
>> transaction addresses always are within the 1MB PA region [FEE0_0000h -
>> FEF0_000h] window which directly targets the APIC configuration space and
>> hence bypass the sMMU. On ARM and PowerPC however MSI transactions are
>> conveyed through the IOMMU.
>
> What's stopping us from simply inferring this from the domain's IOMMU
> not advertising interrupt remapping capabilities?
My current understanding is it is not possible:
on x86 CAP_INTR_REMAP is not systematically exposed (the feature can be
disabled) and MSIs are never mapped in the IOMMU I think.
Best Regards
Eric
>
> Robin.
>
>> Signed-off-by: Bharat Bhushan <Bharat.Bhushan@freescale.com>
>> Signed-off-by: Eric Auger <eric.auger@linaro.org>
>>
>> ---
>>
>> v4 -> v5:
>> - introduce the user in the next patch
>>
>> RFC v1 -> v1:
>> - the data field is not used
>> - for this attribute domain_get_attr simply returns 0 if the MSI_MAPPING
>> capability if needed or <0 if not.
>> - removed struct iommu_domain_msi_maps
>> ---
>> include/linux/iommu.h | 1 +
>> 1 file changed, 1 insertion(+)
>>
>> diff --git a/include/linux/iommu.h b/include/linux/iommu.h
>> index 62a5eae..b3e8c5b 100644
>> --- a/include/linux/iommu.h
>> +++ b/include/linux/iommu.h
>> @@ -113,6 +113,7 @@ enum iommu_attr {
>> DOMAIN_ATTR_FSL_PAMU_ENABLE,
>> DOMAIN_ATTR_FSL_PAMUV1,
>> DOMAIN_ATTR_NESTING, /* two stages of translation */
>> + DOMAIN_ATTR_MSI_MAPPING, /* Require MSIs mapping in iommu */
>> DOMAIN_ATTR_MAX,
>> };
>>
>>
>
WARNING: multiple messages have this Message-ID (diff)
From: Eric Auger <eric.auger@linaro.org>
To: Robin Murphy <robin.murphy@arm.com>,
eric.auger@st.com, alex.williamson@redhat.com,
will.deacon@arm.com, joro@8bytes.org, tglx@linutronix.de,
jason@lakedaemon.net, marc.zyngier@arm.com,
christoffer.dall@linaro.org,
linux-arm-kernel@lists.infradead.org
Cc: patches@linaro.org, linux-kernel@vger.kernel.org,
Bharat.Bhushan@freescale.com, pranav.sawargaonkar@gmail.com,
p.fedin@samsung.com, iommu@lists.linux-foundation.org,
Jean-Philippe.Brucker@arm.com, julien.grall@arm.com
Subject: Re: [PATCH v7 01/10] iommu: Add DOMAIN_ATTR_MSI_MAPPING attribute
Date: Wed, 20 Apr 2016 17:58:48 +0200 [thread overview]
Message-ID: <5717A738.9090904@linaro.org> (raw)
In-Reply-To: <57177A4E.4090804@arm.com>
Hi Robin,
On 04/20/2016 02:47 PM, Robin Murphy wrote:
> Hi Eric,
>
> On 19/04/16 17:56, Eric Auger wrote:
>> Introduce a new DOMAIN_ATTR_MSI_MAPPING domain attribute. If supported,
>> this means the MSI addresses need to be mapped in the IOMMU.
>>
>> x86 IOMMUs typically don't expose the attribute since on x86, MSI write
>> transaction addresses always are within the 1MB PA region [FEE0_0000h -
>> FEF0_000h] window which directly targets the APIC configuration space and
>> hence bypass the sMMU. On ARM and PowerPC however MSI transactions are
>> conveyed through the IOMMU.
>
> What's stopping us from simply inferring this from the domain's IOMMU
> not advertising interrupt remapping capabilities?
My current understanding is it is not possible:
on x86 CAP_INTR_REMAP is not systematically exposed (the feature can be
disabled) and MSIs are never mapped in the IOMMU I think.
Best Regards
Eric
>
> Robin.
>
>> Signed-off-by: Bharat Bhushan <Bharat.Bhushan@freescale.com>
>> Signed-off-by: Eric Auger <eric.auger@linaro.org>
>>
>> ---
>>
>> v4 -> v5:
>> - introduce the user in the next patch
>>
>> RFC v1 -> v1:
>> - the data field is not used
>> - for this attribute domain_get_attr simply returns 0 if the MSI_MAPPING
>> capability if needed or <0 if not.
>> - removed struct iommu_domain_msi_maps
>> ---
>> include/linux/iommu.h | 1 +
>> 1 file changed, 1 insertion(+)
>>
>> diff --git a/include/linux/iommu.h b/include/linux/iommu.h
>> index 62a5eae..b3e8c5b 100644
>> --- a/include/linux/iommu.h
>> +++ b/include/linux/iommu.h
>> @@ -113,6 +113,7 @@ enum iommu_attr {
>> DOMAIN_ATTR_FSL_PAMU_ENABLE,
>> DOMAIN_ATTR_FSL_PAMUV1,
>> DOMAIN_ATTR_NESTING, /* two stages of translation */
>> + DOMAIN_ATTR_MSI_MAPPING, /* Require MSIs mapping in iommu */
>> DOMAIN_ATTR_MAX,
>> };
>>
>>
>
next prev parent reply other threads:[~2016-04-20 15:58 UTC|newest]
Thread overview: 127+ messages / expand[flat|nested] mbox.gz Atom feed top
2016-04-19 16:56 [PATCH v7 00/10] KVM PCIe/MSI passthrough on ARM/ARM64: kernel part 1/3: iommu changes Eric Auger
2016-04-19 16:56 ` Eric Auger
2016-04-19 16:56 ` Eric Auger
2016-04-19 16:56 ` [PATCH v7 07/10] iommu/dma-reserved-iommu: delete bindings in iommu_free_reserved_iova_domain Eric Auger
2016-04-19 16:56 ` Eric Auger
[not found] ` <1461084994-2355-8-git-send-email-eric.auger-QSEj5FYQhm4dnm+yROfE0A@public.gmane.org>
2016-04-20 17:05 ` Robin Murphy
2016-04-20 17:05 ` Robin Murphy
2016-04-20 17:05 ` Robin Murphy
[not found] ` <5717B6D7.4010307-5wv7dgnIgG8@public.gmane.org>
2016-04-21 8:40 ` Eric Auger
2016-04-21 8:40 ` Eric Auger
2016-04-21 8:40 ` Eric Auger
[not found] ` <1461084994-2355-1-git-send-email-eric.auger-QSEj5FYQhm4dnm+yROfE0A@public.gmane.org>
2016-04-19 16:56 ` [PATCH v7 01/10] iommu: Add DOMAIN_ATTR_MSI_MAPPING attribute Eric Auger
2016-04-19 16:56 ` Eric Auger
2016-04-19 16:56 ` Eric Auger
[not found] ` <1461084994-2355-2-git-send-email-eric.auger-QSEj5FYQhm4dnm+yROfE0A@public.gmane.org>
2016-04-20 12:47 ` Robin Murphy
2016-04-20 12:47 ` Robin Murphy
2016-04-20 12:47 ` Robin Murphy
[not found] ` <57177A4E.4090804-5wv7dgnIgG8@public.gmane.org>
2016-04-20 15:58 ` Eric Auger [this message]
2016-04-20 15:58 ` Eric Auger
2016-04-20 15:58 ` Eric Auger
[not found] ` <5717A738.9090904-QSEj5FYQhm4dnm+yROfE0A@public.gmane.org>
2016-04-22 11:31 ` Robin Murphy
2016-04-22 11:31 ` Robin Murphy
2016-04-22 11:31 ` Robin Murphy
[not found] ` <571A0B78.6070509-5wv7dgnIgG8@public.gmane.org>
2016-04-22 12:00 ` Eric Auger
2016-04-22 12:00 ` Eric Auger
2016-04-22 12:00 ` Eric Auger
[not found] ` <571A1273.9060808-QSEj5FYQhm4dnm+yROfE0A@public.gmane.org>
2016-04-22 14:49 ` Robin Murphy
2016-04-22 14:49 ` Robin Murphy
2016-04-22 14:49 ` Robin Murphy
[not found] ` <571A3A10.70601-5wv7dgnIgG8@public.gmane.org>
2016-04-22 15:33 ` Eric Auger
2016-04-22 15:33 ` Eric Auger
2016-04-22 15:33 ` Eric Auger
2016-04-19 16:56 ` [PATCH v7 02/10] iommu/arm-smmu: advertise " Eric Auger
2016-04-19 16:56 ` Eric Auger
2016-04-19 16:56 ` Eric Auger
2016-04-19 16:56 ` [PATCH v7 03/10] iommu: introduce a reserved iova cookie Eric Auger
2016-04-19 16:56 ` Eric Auger
2016-04-19 16:56 ` Eric Auger
[not found] ` <1461084994-2355-4-git-send-email-eric.auger-QSEj5FYQhm4dnm+yROfE0A@public.gmane.org>
2016-04-20 12:55 ` Robin Murphy
2016-04-20 12:55 ` Robin Murphy
2016-04-20 12:55 ` Robin Murphy
[not found] ` <57177C31.9090004-5wv7dgnIgG8@public.gmane.org>
2016-04-20 16:14 ` Eric Auger
2016-04-20 16:14 ` Eric Auger
2016-04-20 16:14 ` Eric Auger
[not found] ` <5717AAC9.10505-QSEj5FYQhm4dnm+yROfE0A@public.gmane.org>
2016-04-22 12:36 ` Robin Murphy
2016-04-22 12:36 ` Robin Murphy
2016-04-22 12:36 ` Robin Murphy
[not found] ` <571A1AC5.9030905-5wv7dgnIgG8@public.gmane.org>
2016-04-22 13:02 ` Eric Auger
2016-04-22 13:02 ` Eric Auger
2016-04-22 13:02 ` Eric Auger
[not found] ` <571A20C9.9010508-QSEj5FYQhm4dnm+yROfE0A@public.gmane.org>
2016-04-22 14:53 ` Eric Auger
2016-04-22 14:53 ` Eric Auger
2016-04-22 14:53 ` Eric Auger
2016-04-19 16:56 ` [PATCH v7 04/10] iommu/dma-reserved-iommu: alloc/free_reserved_iova_domain Eric Auger
2016-04-19 16:56 ` Eric Auger
2016-04-19 16:56 ` Eric Auger
[not found] ` <1461084994-2355-5-git-send-email-eric.auger-QSEj5FYQhm4dnm+yROfE0A@public.gmane.org>
2016-04-20 13:03 ` Robin Murphy
2016-04-20 13:03 ` Robin Murphy
2016-04-20 13:03 ` Robin Murphy
[not found] ` <57177E2A.9090602-5wv7dgnIgG8@public.gmane.org>
2016-04-20 13:11 ` Eric Auger
2016-04-20 13:11 ` Eric Auger
2016-04-20 13:11 ` Eric Auger
2016-04-19 16:56 ` [PATCH v7 05/10] iommu/dma-reserved-iommu: reserved binding rb-tree and helpers Eric Auger
2016-04-19 16:56 ` Eric Auger
2016-04-19 16:56 ` Eric Auger
[not found] ` <1461084994-2355-6-git-send-email-eric.auger-QSEj5FYQhm4dnm+yROfE0A@public.gmane.org>
2016-04-20 13:12 ` Robin Murphy
2016-04-20 13:12 ` Robin Murphy
2016-04-20 13:12 ` Robin Murphy
[not found] ` <5717805A.3070602-5wv7dgnIgG8@public.gmane.org>
2016-04-20 16:18 ` Eric Auger
2016-04-20 16:18 ` Eric Auger
2016-04-20 16:18 ` Eric Auger
[not found] ` <5717ABF2.1030204-QSEj5FYQhm4dnm+yROfE0A@public.gmane.org>
2016-04-22 13:05 ` Robin Murphy
2016-04-22 13:05 ` Robin Murphy
2016-04-22 13:05 ` Robin Murphy
2016-04-19 16:56 ` [PATCH v7 06/10] iommu/dma-reserved-iommu: iommu_get/put_reserved_iova Eric Auger
2016-04-19 16:56 ` Eric Auger
2016-04-19 16:56 ` Eric Auger
[not found] ` <1461084994-2355-7-git-send-email-eric.auger-QSEj5FYQhm4dnm+yROfE0A@public.gmane.org>
2016-04-20 16:58 ` Robin Murphy
2016-04-20 16:58 ` Robin Murphy
2016-04-20 16:58 ` Robin Murphy
[not found] ` <5717B541.7090003-5wv7dgnIgG8@public.gmane.org>
2016-04-21 8:43 ` Eric Auger
2016-04-21 8:43 ` Eric Auger
2016-04-21 8:43 ` Eric Auger
2016-04-19 16:56 ` [PATCH v7 08/10] iommu/dma-reserved_iommu: iommu_msi_mapping_desc_to_domain Eric Auger
2016-04-19 16:56 ` Eric Auger
2016-04-19 16:56 ` Eric Auger
[not found] ` <1461084994-2355-9-git-send-email-eric.auger-QSEj5FYQhm4dnm+yROfE0A@public.gmane.org>
2016-04-20 17:19 ` Robin Murphy
2016-04-20 17:19 ` Robin Murphy
2016-04-20 17:19 ` Robin Murphy
[not found] ` <5717BA3E.8050901-5wv7dgnIgG8@public.gmane.org>
2016-04-21 8:40 ` Eric Auger
2016-04-21 8:40 ` Eric Auger
2016-04-21 8:40 ` Eric Auger
2016-04-19 16:56 ` [PATCH v7 09/10] iommu/dma-reserved-iommu: iommu_msi_mapping_translate_msg Eric Auger
2016-04-19 16:56 ` Eric Auger
2016-04-19 16:56 ` Eric Auger
2016-04-20 9:38 ` Marc Zyngier
2016-04-20 9:38 ` Marc Zyngier
[not found] ` <57174E16.1050004-5wv7dgnIgG8@public.gmane.org>
2016-04-20 12:50 ` Eric Auger
2016-04-20 12:50 ` Eric Auger
2016-04-20 12:50 ` Eric Auger
[not found] ` <1461084994-2355-10-git-send-email-eric.auger-QSEj5FYQhm4dnm+yROfE0A@public.gmane.org>
2016-04-20 17:28 ` Robin Murphy
2016-04-20 17:28 ` Robin Murphy
2016-04-20 17:28 ` Robin Murphy
[not found] ` <5717BC43.5070005-5wv7dgnIgG8@public.gmane.org>
2016-04-21 8:40 ` Eric Auger
2016-04-21 8:40 ` Eric Auger
2016-04-21 8:40 ` Eric Auger
2016-04-19 16:56 ` [PATCH v7 10/10] iommu/arm-smmu: call iommu_free_reserved_iova_domain on domain destruction Eric Auger
2016-04-19 16:56 ` Eric Auger
2016-04-19 16:56 ` Eric Auger
[not found] ` <1461084994-2355-11-git-send-email-eric.auger-QSEj5FYQhm4dnm+yROfE0A@public.gmane.org>
2016-04-20 17:35 ` Robin Murphy
2016-04-20 17:35 ` Robin Murphy
2016-04-20 17:35 ` Robin Murphy
[not found] ` <5717BDF1.7030400-5wv7dgnIgG8@public.gmane.org>
2016-04-21 8:39 ` Eric Auger
2016-04-21 8:39 ` Eric Auger
2016-04-21 8:39 ` Eric Auger
2016-04-21 12:18 ` [PATCH v7 00/10] KVM PCIe/MSI passthrough on ARM/ARM64: kernel part 1/3: iommu changes Eric Auger
2016-04-21 12:18 ` Eric Auger
2016-04-21 12:18 ` Eric Auger
[not found] ` <5718C501.20906-QSEj5FYQhm4dnm+yROfE0A@public.gmane.org>
2016-04-21 19:32 ` Alex Williamson
2016-04-21 19:32 ` Alex Williamson
2016-04-21 19:32 ` Alex Williamson
[not found] ` <20160421133222.76e45596-1yVPhWWZRC1BDLzU/O5InQ@public.gmane.org>
2016-04-22 12:31 ` Eric Auger
2016-04-22 12:31 ` Eric Auger
2016-04-22 12:31 ` Eric Auger
[not found] ` <571A1996.5010009-QSEj5FYQhm4dnm+yROfE0A@public.gmane.org>
2016-04-22 19:07 ` Alex Williamson
2016-04-22 19:07 ` Alex Williamson
2016-04-22 19:07 ` Alex Williamson
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=5717A738.9090904@linaro.org \
--to=eric.auger-qsej5fyqhm4dnm+yrofe0a@public.gmane.org \
--cc=alex.williamson-H+wXaHxf7aLQT0dZR+AlfA@public.gmane.org \
--cc=christoffer.dall-QSEj5FYQhm4dnm+yROfE0A@public.gmane.org \
--cc=eric.auger-qxv4g6HH51o@public.gmane.org \
--cc=iommu-cunTk1MwBs9QetFLy7KEm3xJsTq8ys+cHZ5vskTnxNA@public.gmane.org \
--cc=jason-NLaQJdtUoK4Be96aLqz0jA@public.gmane.org \
--cc=joro-zLv9SwRftAIdnm+yROfE0A@public.gmane.org \
--cc=julien.grall-5wv7dgnIgG8@public.gmane.org \
--cc=linux-arm-kernel-IAPFreCvJWM7uuMidbF8XUB+6BGkLq7r@public.gmane.org \
--cc=linux-kernel-u79uwXL29TY76Z2rM5mHXA@public.gmane.org \
--cc=marc.zyngier-5wv7dgnIgG8@public.gmane.org \
--cc=p.fedin-Sze3O3UU22JBDgjK7y7TUQ@public.gmane.org \
--cc=patches-QSEj5FYQhm4dnm+yROfE0A@public.gmane.org \
--cc=pranav.sawargaonkar-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org \
--cc=robin.murphy-5wv7dgnIgG8@public.gmane.org \
--cc=tglx-hfZtesqFncYOwBW4kG4KsQ@public.gmane.org \
--cc=will.deacon-5wv7dgnIgG8@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.