From: "Leizhen (ThunderTown)" <thunder.leizhen@huawei.com>
To: Jean-Philippe Brucker <jean-philippe.brucker@arm.com>
Cc: Lorenzo Pieralisi <lorenzo.pieralisi@arm.com>,
Shanker Donthineni <shankerd@qti.qualcomm.com>,
kvm@vger.kernel.org, Catalin Marinas <catalin.marinas@arm.com>,
Joerg Roedel <joro@8bytes.org>,
Sinan Kaya <okaya@qti.qualcomm.com>,
Will Deacon <will.deacon@arm.com>,
iommu@lists.linux-foundation.org,
Harv Abdulhamid <harba@qti.qualcomm.com>,
Alex Williamson <alex.williamson@redhat.com>,
linux-pci@vger.kernel.org, Bjorn Helgaas <bhelgaas@google.com>,
Robin Murphy <robin.murphy@arm.com>,
David Woodhouse <dwmw2@infradead.org>,
linux-arm-kernel@lists.infradead.org,
Nate Watterson <nwatters@qti.qualcomm.com>,
LinuxArm <linuxarm@huawei.com>
Subject: Re: [RFC PATCH 05/30] iommu/arm-smmu-v3: Disable tagged pointers when ATS is in use
Date: Mon, 22 May 2017 14:27:35 +0800 [thread overview]
Message-ID: <592284D7.60002@huawei.com> (raw)
In-Reply-To: <20170227195441.5170-6-jean-philippe.brucker@arm.com>
On 2017/2/28 3:54, Jean-Philippe Brucker wrote:
> The ARM architecture has a "Top Byte Ignore" (TBI) option that makes the
> MMU mask out bits [63:56] of an address, allowing a userspace application
> to store data in its pointers.
>
> The ATS doesn't have an architected mechanism to enable TBI, and might
> create ATC entries for addresses that include a tag. Software would then
> have to send ATC invalidation packets for each 255 possible alias of an
> address, or just wipe the whole address space. This is not a viable
> option, so disable TBI when ATS is in use.
>
> It is unclear for the moment how this restriction will affect user
> applications. One example I can imagine (with my complete lack of
> knowledge about JIT engines and their use of tagged pointers) is a JIT
> translating a WebCL applications that uses SVM. Since this kind of
> interpreted language doesn't expose addresses, the interpreter and SVM
> implementations will be given the opportunity to do the right thing and
> remove tags before handing pointers to devices.
>
> Ideally we should remove TBI only for domains that are susceptible to use
> ATS. But at the point we're writing the context descriptor of a domain, we
> are still probing the first device in the group. If that device doesn't
> have an ATC but the next one does, we would then have to clear the TBI
> bit, invalidate the ATCs of previous devices, and notify the drivers that
> their devices cannot use tagged pointers anymore. Such a level of
> complexity doesn't make any sense here since it is unlikely devices will
> use tagged pointers at all.
>
> Signed-off-by: Jean-Philippe Brucker <jean-philippe.brucker@arm.com>
> ---
> drivers/iommu/arm-smmu-v3.c | 7 ++++---
> 1 file changed, 4 insertions(+), 3 deletions(-)
>
> diff --git a/drivers/iommu/arm-smmu-v3.c b/drivers/iommu/arm-smmu-v3.c
> index e7b940146ae3..06b29d4fcf65 100644
> --- a/drivers/iommu/arm-smmu-v3.c
> +++ b/drivers/iommu/arm-smmu-v3.c
> @@ -987,7 +987,7 @@ static void arm_smmu_cmdq_issue_cmd(struct arm_smmu_device *smmu,
> }
>
> /* Context descriptor manipulation functions */
> -static u64 arm_smmu_cpu_tcr_to_cd(u64 tcr)
> +static u64 arm_smmu_cpu_tcr_to_cd(struct arm_smmu_device *smmu, u64 tcr)
> {
> u64 val = 0;
>
> @@ -1000,7 +1000,8 @@ static u64 arm_smmu_cpu_tcr_to_cd(u64 tcr)
> val |= ARM_SMMU_TCR2CD(tcr, EPD0);
> val |= ARM_SMMU_TCR2CD(tcr, EPD1);
> val |= ARM_SMMU_TCR2CD(tcr, IPS);
> - val |= ARM_SMMU_TCR2CD(tcr, TBI0);
> + if (!(smmu->features & ARM_SMMU_FEAT_ATS))
> + val |= ARM_SMMU_TCR2CD(tcr, TBI0);
Maybe we should always disable TBI. Otherwise, a device behind a ATS supported or
non-supported SMMU should use different strategies.
>
> return val;
> }
> @@ -1014,7 +1015,7 @@ static void arm_smmu_write_ctx_desc(struct arm_smmu_device *smmu,
> * We don't need to issue any invalidation here, as we'll invalidate
> * the STE when installing the new entry anyway.
> */
> - val = arm_smmu_cpu_tcr_to_cd(cfg->cd.tcr) |
> + val = arm_smmu_cpu_tcr_to_cd(smmu, cfg->cd.tcr) |
> #ifdef __BIG_ENDIAN
> CTXDESC_CD_0_ENDI |
> #endif
>
--
Thanks!
BestRegards
WARNING: multiple messages have this Message-ID (diff)
From: "Leizhen (ThunderTown)" <thunder.leizhen@huawei.com>
To: Jean-Philippe Brucker <jean-philippe.brucker@arm.com>
Cc: Lorenzo Pieralisi <lorenzo.pieralisi@arm.com>,
Shanker Donthineni <shankerd@qti.qualcomm.com>,
kvm@vger.kernel.org, Catalin Marinas <catalin.marinas@arm.com>,
Joerg Roedel <joro@8bytes.org>,
Sinan Kaya <okaya@qti.qualcomm.com>,
Will Deacon <will.deacon@arm.com>,
Alex Williamson <alex.williamson@redhat.com>,
Harv Abdulhamid <harba@qti.qualcomm.com>,
LinuxArm <linuxarm@huawei.com>,
iommu@lists.linux-foundation.org, linux-pci@vger.kernel.org,
Bjorn Helgaas <bhelgaas@google.com>,
Robin Murphy <robin.murphy@arm.com>,
David Woodhouse <dwmw2@infradead.org>,
linux-arm-kernel@lists.infradead.org,
Nate Watterson <nwatters@qti.qualcomm.com>
Subject: Re: [RFC PATCH 05/30] iommu/arm-smmu-v3: Disable tagged pointers when ATS is in use
Date: Mon, 22 May 2017 14:27:35 +0800 [thread overview]
Message-ID: <592284D7.60002@huawei.com> (raw)
In-Reply-To: <20170227195441.5170-6-jean-philippe.brucker@arm.com>
On 2017/2/28 3:54, Jean-Philippe Brucker wrote:
> The ARM architecture has a "Top Byte Ignore" (TBI) option that makes the
> MMU mask out bits [63:56] of an address, allowing a userspace application
> to store data in its pointers.
>
> The ATS doesn't have an architected mechanism to enable TBI, and might
> create ATC entries for addresses that include a tag. Software would then
> have to send ATC invalidation packets for each 255 possible alias of an
> address, or just wipe the whole address space. This is not a viable
> option, so disable TBI when ATS is in use.
>
> It is unclear for the moment how this restriction will affect user
> applications. One example I can imagine (with my complete lack of
> knowledge about JIT engines and their use of tagged pointers) is a JIT
> translating a WebCL applications that uses SVM. Since this kind of
> interpreted language doesn't expose addresses, the interpreter and SVM
> implementations will be given the opportunity to do the right thing and
> remove tags before handing pointers to devices.
>
> Ideally we should remove TBI only for domains that are susceptible to use
> ATS. But at the point we're writing the context descriptor of a domain, we
> are still probing the first device in the group. If that device doesn't
> have an ATC but the next one does, we would then have to clear the TBI
> bit, invalidate the ATCs of previous devices, and notify the drivers that
> their devices cannot use tagged pointers anymore. Such a level of
> complexity doesn't make any sense here since it is unlikely devices will
> use tagged pointers at all.
>
> Signed-off-by: Jean-Philippe Brucker <jean-philippe.brucker@arm.com>
> ---
> drivers/iommu/arm-smmu-v3.c | 7 ++++---
> 1 file changed, 4 insertions(+), 3 deletions(-)
>
> diff --git a/drivers/iommu/arm-smmu-v3.c b/drivers/iommu/arm-smmu-v3.c
> index e7b940146ae3..06b29d4fcf65 100644
> --- a/drivers/iommu/arm-smmu-v3.c
> +++ b/drivers/iommu/arm-smmu-v3.c
> @@ -987,7 +987,7 @@ static void arm_smmu_cmdq_issue_cmd(struct arm_smmu_device *smmu,
> }
>
> /* Context descriptor manipulation functions */
> -static u64 arm_smmu_cpu_tcr_to_cd(u64 tcr)
> +static u64 arm_smmu_cpu_tcr_to_cd(struct arm_smmu_device *smmu, u64 tcr)
> {
> u64 val = 0;
>
> @@ -1000,7 +1000,8 @@ static u64 arm_smmu_cpu_tcr_to_cd(u64 tcr)
> val |= ARM_SMMU_TCR2CD(tcr, EPD0);
> val |= ARM_SMMU_TCR2CD(tcr, EPD1);
> val |= ARM_SMMU_TCR2CD(tcr, IPS);
> - val |= ARM_SMMU_TCR2CD(tcr, TBI0);
> + if (!(smmu->features & ARM_SMMU_FEAT_ATS))
> + val |= ARM_SMMU_TCR2CD(tcr, TBI0);
Maybe we should always disable TBI. Otherwise, a device behind a ATS supported or
non-supported SMMU should use different strategies.
>
> return val;
> }
> @@ -1014,7 +1015,7 @@ static void arm_smmu_write_ctx_desc(struct arm_smmu_device *smmu,
> * We don't need to issue any invalidation here, as we'll invalidate
> * the STE when installing the new entry anyway.
> */
> - val = arm_smmu_cpu_tcr_to_cd(cfg->cd.tcr) |
> + val = arm_smmu_cpu_tcr_to_cd(smmu, cfg->cd.tcr) |
> #ifdef __BIG_ENDIAN
> CTXDESC_CD_0_ENDI |
> #endif
>
--
Thanks!
BestRegards
_______________________________________________
linux-arm-kernel mailing list
linux-arm-kernel@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/linux-arm-kernel
WARNING: multiple messages have this Message-ID (diff)
From: thunder.leizhen@huawei.com (Leizhen (ThunderTown))
To: linux-arm-kernel@lists.infradead.org
Subject: [RFC PATCH 05/30] iommu/arm-smmu-v3: Disable tagged pointers when ATS is in use
Date: Mon, 22 May 2017 14:27:35 +0800 [thread overview]
Message-ID: <592284D7.60002@huawei.com> (raw)
In-Reply-To: <20170227195441.5170-6-jean-philippe.brucker@arm.com>
On 2017/2/28 3:54, Jean-Philippe Brucker wrote:
> The ARM architecture has a "Top Byte Ignore" (TBI) option that makes the
> MMU mask out bits [63:56] of an address, allowing a userspace application
> to store data in its pointers.
>
> The ATS doesn't have an architected mechanism to enable TBI, and might
> create ATC entries for addresses that include a tag. Software would then
> have to send ATC invalidation packets for each 255 possible alias of an
> address, or just wipe the whole address space. This is not a viable
> option, so disable TBI when ATS is in use.
>
> It is unclear for the moment how this restriction will affect user
> applications. One example I can imagine (with my complete lack of
> knowledge about JIT engines and their use of tagged pointers) is a JIT
> translating a WebCL applications that uses SVM. Since this kind of
> interpreted language doesn't expose addresses, the interpreter and SVM
> implementations will be given the opportunity to do the right thing and
> remove tags before handing pointers to devices.
>
> Ideally we should remove TBI only for domains that are susceptible to use
> ATS. But at the point we're writing the context descriptor of a domain, we
> are still probing the first device in the group. If that device doesn't
> have an ATC but the next one does, we would then have to clear the TBI
> bit, invalidate the ATCs of previous devices, and notify the drivers that
> their devices cannot use tagged pointers anymore. Such a level of
> complexity doesn't make any sense here since it is unlikely devices will
> use tagged pointers at all.
>
> Signed-off-by: Jean-Philippe Brucker <jean-philippe.brucker@arm.com>
> ---
> drivers/iommu/arm-smmu-v3.c | 7 ++++---
> 1 file changed, 4 insertions(+), 3 deletions(-)
>
> diff --git a/drivers/iommu/arm-smmu-v3.c b/drivers/iommu/arm-smmu-v3.c
> index e7b940146ae3..06b29d4fcf65 100644
> --- a/drivers/iommu/arm-smmu-v3.c
> +++ b/drivers/iommu/arm-smmu-v3.c
> @@ -987,7 +987,7 @@ static void arm_smmu_cmdq_issue_cmd(struct arm_smmu_device *smmu,
> }
>
> /* Context descriptor manipulation functions */
> -static u64 arm_smmu_cpu_tcr_to_cd(u64 tcr)
> +static u64 arm_smmu_cpu_tcr_to_cd(struct arm_smmu_device *smmu, u64 tcr)
> {
> u64 val = 0;
>
> @@ -1000,7 +1000,8 @@ static u64 arm_smmu_cpu_tcr_to_cd(u64 tcr)
> val |= ARM_SMMU_TCR2CD(tcr, EPD0);
> val |= ARM_SMMU_TCR2CD(tcr, EPD1);
> val |= ARM_SMMU_TCR2CD(tcr, IPS);
> - val |= ARM_SMMU_TCR2CD(tcr, TBI0);
> + if (!(smmu->features & ARM_SMMU_FEAT_ATS))
> + val |= ARM_SMMU_TCR2CD(tcr, TBI0);
Maybe we should always disable TBI. Otherwise, a device behind a ATS supported or
non-supported SMMU should use different strategies.
>
> return val;
> }
> @@ -1014,7 +1015,7 @@ static void arm_smmu_write_ctx_desc(struct arm_smmu_device *smmu,
> * We don't need to issue any invalidation here, as we'll invalidate
> * the STE when installing the new entry anyway.
> */
> - val = arm_smmu_cpu_tcr_to_cd(cfg->cd.tcr) |
> + val = arm_smmu_cpu_tcr_to_cd(smmu, cfg->cd.tcr) |
> #ifdef __BIG_ENDIAN
> CTXDESC_CD_0_ENDI |
> #endif
>
--
Thanks!
BestRegards
WARNING: multiple messages have this Message-ID (diff)
From: "Leizhen (ThunderTown)" <thunder.leizhen@huawei.com>
To: Jean-Philippe Brucker <jean-philippe.brucker@arm.com>
Cc: Lorenzo Pieralisi <lorenzo.pieralisi@arm.com>,
Shanker Donthineni <shankerd@qti.qualcomm.com>,
<kvm@vger.kernel.org>, Catalin Marinas <catalin.marinas@arm.com>,
Joerg Roedel <joro@8bytes.org>,
Sinan Kaya <okaya@qti.qualcomm.com>,
Will Deacon <will.deacon@arm.com>,
<iommu@lists.linux-foundation.org>,
Harv Abdulhamid <harba@qti.qualcomm.com>,
Alex Williamson <alex.williamson@redhat.com>,
<linux-pci@vger.kernel.org>, Bjorn Helgaas <bhelgaas@google.com>,
Robin Murphy <robin.murphy@arm.com>,
David Woodhouse <dwmw2@infradead.org>,
<linux-arm-kernel@lists.infradead.org>,
Nate Watterson <nwatters@qti.qualcomm.com>,
LinuxArm <linuxarm@huawei.com>
Subject: Re: [RFC PATCH 05/30] iommu/arm-smmu-v3: Disable tagged pointers when ATS is in use
Date: Mon, 22 May 2017 14:27:35 +0800 [thread overview]
Message-ID: <592284D7.60002@huawei.com> (raw)
In-Reply-To: <20170227195441.5170-6-jean-philippe.brucker@arm.com>
On 2017/2/28 3:54, Jean-Philippe Brucker wrote:
> The ARM architecture has a "Top Byte Ignore" (TBI) option that makes the
> MMU mask out bits [63:56] of an address, allowing a userspace application
> to store data in its pointers.
>
> The ATS doesn't have an architected mechanism to enable TBI, and might
> create ATC entries for addresses that include a tag. Software would then
> have to send ATC invalidation packets for each 255 possible alias of an
> address, or just wipe the whole address space. This is not a viable
> option, so disable TBI when ATS is in use.
>
> It is unclear for the moment how this restriction will affect user
> applications. One example I can imagine (with my complete lack of
> knowledge about JIT engines and their use of tagged pointers) is a JIT
> translating a WebCL applications that uses SVM. Since this kind of
> interpreted language doesn't expose addresses, the interpreter and SVM
> implementations will be given the opportunity to do the right thing and
> remove tags before handing pointers to devices.
>
> Ideally we should remove TBI only for domains that are susceptible to use
> ATS. But at the point we're writing the context descriptor of a domain, we
> are still probing the first device in the group. If that device doesn't
> have an ATC but the next one does, we would then have to clear the TBI
> bit, invalidate the ATCs of previous devices, and notify the drivers that
> their devices cannot use tagged pointers anymore. Such a level of
> complexity doesn't make any sense here since it is unlikely devices will
> use tagged pointers at all.
>
> Signed-off-by: Jean-Philippe Brucker <jean-philippe.brucker@arm.com>
> ---
> drivers/iommu/arm-smmu-v3.c | 7 ++++---
> 1 file changed, 4 insertions(+), 3 deletions(-)
>
> diff --git a/drivers/iommu/arm-smmu-v3.c b/drivers/iommu/arm-smmu-v3.c
> index e7b940146ae3..06b29d4fcf65 100644
> --- a/drivers/iommu/arm-smmu-v3.c
> +++ b/drivers/iommu/arm-smmu-v3.c
> @@ -987,7 +987,7 @@ static void arm_smmu_cmdq_issue_cmd(struct arm_smmu_device *smmu,
> }
>
> /* Context descriptor manipulation functions */
> -static u64 arm_smmu_cpu_tcr_to_cd(u64 tcr)
> +static u64 arm_smmu_cpu_tcr_to_cd(struct arm_smmu_device *smmu, u64 tcr)
> {
> u64 val = 0;
>
> @@ -1000,7 +1000,8 @@ static u64 arm_smmu_cpu_tcr_to_cd(u64 tcr)
> val |= ARM_SMMU_TCR2CD(tcr, EPD0);
> val |= ARM_SMMU_TCR2CD(tcr, EPD1);
> val |= ARM_SMMU_TCR2CD(tcr, IPS);
> - val |= ARM_SMMU_TCR2CD(tcr, TBI0);
> + if (!(smmu->features & ARM_SMMU_FEAT_ATS))
> + val |= ARM_SMMU_TCR2CD(tcr, TBI0);
Maybe we should always disable TBI. Otherwise, a device behind a ATS supported or
non-supported SMMU should use different strategies.
>
> return val;
> }
> @@ -1014,7 +1015,7 @@ static void arm_smmu_write_ctx_desc(struct arm_smmu_device *smmu,
> * We don't need to issue any invalidation here, as we'll invalidate
> * the STE when installing the new entry anyway.
> */
> - val = arm_smmu_cpu_tcr_to_cd(cfg->cd.tcr) |
> + val = arm_smmu_cpu_tcr_to_cd(smmu, cfg->cd.tcr) |
> #ifdef __BIG_ENDIAN
> CTXDESC_CD_0_ENDI |
> #endif
>
--
Thanks!
BestRegards
next prev parent reply other threads:[~2017-05-22 6:27 UTC|newest]
Thread overview: 314+ messages / expand[flat|nested] mbox.gz Atom feed top
2017-02-27 19:54 [RFC PATCH 00/30] Add PCIe SVM support to ARM SMMUv3 Jean-Philippe Brucker
2017-02-27 19:54 ` Jean-Philippe Brucker
2017-02-27 19:54 ` Jean-Philippe Brucker
[not found] ` <20170227195441.5170-1-jean-philippe.brucker-5wv7dgnIgG8@public.gmane.org>
2017-02-27 19:54 ` [RFC PATCH 01/30] iommu/arm-smmu-v3: Link groups and devices Jean-Philippe Brucker
2017-02-27 19:54 ` Jean-Philippe Brucker
2017-02-27 19:54 ` Jean-Philippe Brucker
[not found] ` <20170227195441.5170-2-jean-philippe.brucker-5wv7dgnIgG8@public.gmane.org>
2017-03-27 12:18 ` Robin Murphy
2017-03-27 12:18 ` Robin Murphy
2017-03-27 12:18 ` Robin Murphy
[not found] ` <9ce9e3c5-3f94-8b06-2bd7-a665f0f33304-5wv7dgnIgG8@public.gmane.org>
2017-04-10 11:02 ` Jean-Philippe Brucker
2017-04-10 11:02 ` Jean-Philippe Brucker
2017-04-10 11:02 ` Jean-Philippe Brucker
2017-02-27 19:54 ` [RFC PATCH 02/30] iommu/arm-smmu-v3: Link groups and domains Jean-Philippe Brucker
2017-02-27 19:54 ` Jean-Philippe Brucker
2017-02-27 19:54 ` Jean-Philippe Brucker
2017-02-27 19:54 ` [RFC PATCH 03/30] PCI: Move ATS declarations outside of CONFIG_PCI Jean-Philippe Brucker
2017-02-27 19:54 ` Jean-Philippe Brucker
2017-02-27 19:54 ` Jean-Philippe Brucker
[not found] ` <20170227195441.5170-4-jean-philippe.brucker-5wv7dgnIgG8@public.gmane.org>
2017-03-03 21:09 ` Bjorn Helgaas
2017-03-03 21:09 ` Bjorn Helgaas
2017-03-03 21:09 ` Bjorn Helgaas
[not found] ` <20170303210926.GB31767-1RhO1Y9PlrlHTL0Zs8A6p5iNqAH0jzoTYJqu5kTmcBRl57MIdRCFDg@public.gmane.org>
2017-03-06 11:29 ` Jean-Philippe Brucker
2017-03-06 11:29 ` Jean-Philippe Brucker
2017-03-06 11:29 ` Jean-Philippe Brucker
2017-02-27 19:54 ` [RFC PATCH 04/30] iommu/arm-smmu-v3: Add support for PCI ATS Jean-Philippe Brucker
2017-02-27 19:54 ` Jean-Philippe Brucker
2017-02-27 19:54 ` Jean-Philippe Brucker
2017-03-08 15:26 ` Sinan Kaya
2017-03-08 15:26 ` Sinan Kaya
2017-03-08 15:26 ` Sinan Kaya
[not found] ` <c0f74140-f1f6-7c52-295a-5d4722017664-sgV2jX0FEOL9JmXXK+q4OQ@public.gmane.org>
2017-03-21 19:38 ` Jean-Philippe Brucker
2017-03-21 19:38 ` Jean-Philippe Brucker
2017-03-21 19:38 ` Jean-Philippe Brucker
2017-04-03 8:34 ` Sunil Kovvuri
2017-04-03 8:34 ` Sunil Kovvuri
2017-04-03 8:34 ` Sunil Kovvuri
2017-04-03 10:14 ` Jean-Philippe Brucker
2017-04-03 10:14 ` Jean-Philippe Brucker
2017-04-03 10:14 ` Jean-Philippe Brucker
2017-04-03 11:42 ` Sunil Kovvuri
2017-04-03 11:42 ` Sunil Kovvuri
2017-04-03 11:42 ` Sunil Kovvuri
2017-04-03 11:56 ` Jean-Philippe Brucker
2017-04-03 11:56 ` Jean-Philippe Brucker
2017-04-03 11:56 ` Jean-Philippe Brucker
[not found] ` <20170227195441.5170-5-jean-philippe.brucker-5wv7dgnIgG8@public.gmane.org>
2017-03-01 19:24 ` Sinan Kaya
2017-03-01 19:24 ` Sinan Kaya
2017-03-01 19:24 ` Sinan Kaya
[not found] ` <5a7822f2-3991-aa51-169f-78ef49567feb-sgV2jX0FEOL9JmXXK+q4OQ@public.gmane.org>
2017-03-02 10:51 ` Jean-Philippe Brucker
2017-03-02 10:51 ` Jean-Philippe Brucker
2017-03-02 10:51 ` Jean-Philippe Brucker
[not found] ` <20170302105153.GB15742-lfHAr0XZR/FyySVAYrpuPyZi+YwRKgec@public.gmane.org>
2017-03-02 13:11 ` okaya-sgV2jX0FEOL9JmXXK+q4OQ
2017-03-02 13:11 ` okaya at codeaurora.org
2017-03-02 13:11 ` okaya
2017-05-10 12:54 ` Tomasz Nowicki
2017-05-10 12:54 ` Tomasz Nowicki
2017-05-10 12:54 ` Tomasz Nowicki
2017-05-10 13:35 ` Jean-Philippe Brucker
2017-05-10 13:35 ` Jean-Philippe Brucker
2017-05-10 13:35 ` Jean-Philippe Brucker
2017-05-23 8:41 ` Leizhen (ThunderTown)
2017-05-23 8:41 ` Leizhen (ThunderTown)
2017-05-23 8:41 ` Leizhen (ThunderTown)
2017-05-23 8:41 ` Leizhen (ThunderTown)
2017-05-23 11:21 ` Jean-Philippe Brucker
2017-05-23 11:21 ` Jean-Philippe Brucker
2017-05-23 11:21 ` Jean-Philippe Brucker
2017-05-25 18:27 ` Roy Franz (Cavium)
2017-05-25 18:27 ` Roy Franz (Cavium)
2017-05-25 18:27 ` Roy Franz (Cavium)
2017-02-27 19:54 ` [RFC PATCH 05/30] iommu/arm-smmu-v3: Disable tagged pointers when ATS is in use Jean-Philippe Brucker
2017-02-27 19:54 ` Jean-Philippe Brucker
2017-02-27 19:54 ` Jean-Philippe Brucker
2017-05-22 6:27 ` Leizhen (ThunderTown) [this message]
2017-05-22 6:27 ` Leizhen (ThunderTown)
2017-05-22 6:27 ` Leizhen (ThunderTown)
2017-05-22 6:27 ` Leizhen (ThunderTown)
2017-05-22 14:02 ` Jean-Philippe Brucker
2017-05-22 14:02 ` Jean-Philippe Brucker
2017-05-22 14:02 ` Jean-Philippe Brucker
2017-02-27 19:54 ` [RFC PATCH 06/30] iommu/arm-smmu-v3: Add support for Substream IDs Jean-Philippe Brucker
2017-02-27 19:54 ` Jean-Philippe Brucker
2017-02-27 19:54 ` Jean-Philippe Brucker
2017-02-27 19:54 ` [RFC PATCH 07/30] iommu/arm-smmu-v3: Add second level of context descriptor table Jean-Philippe Brucker
2017-02-27 19:54 ` Jean-Philippe Brucker
2017-02-27 19:54 ` Jean-Philippe Brucker
[not found] ` <20170227195441.5170-8-jean-philippe.brucker-5wv7dgnIgG8@public.gmane.org>
2017-05-15 12:47 ` Tomasz Nowicki
2017-05-15 12:47 ` Tomasz Nowicki
2017-05-15 12:47 ` Tomasz Nowicki
2017-05-15 13:57 ` Jean-Philippe Brucker
2017-05-15 13:57 ` Jean-Philippe Brucker
2017-05-15 13:57 ` Jean-Philippe Brucker
2017-02-27 19:54 ` [RFC PATCH 08/30] iommu/arm-smmu-v3: Add support for VHE Jean-Philippe Brucker
2017-02-27 19:54 ` Jean-Philippe Brucker
2017-02-27 19:54 ` Jean-Philippe Brucker
2017-02-27 19:54 ` [RFC PATCH 09/30] iommu/arm-smmu-v3: Support broadcast TLB maintenance Jean-Philippe Brucker
2017-02-27 19:54 ` Jean-Philippe Brucker
2017-02-27 19:54 ` Jean-Philippe Brucker
2017-02-27 19:54 ` [RFC PATCH 10/30] iommu/arm-smmu-v3: Add task contexts Jean-Philippe Brucker
2017-02-27 19:54 ` Jean-Philippe Brucker
2017-02-27 19:54 ` Jean-Philippe Brucker
2017-02-27 19:54 ` [RFC PATCH 11/30] arm64: mm: Pin down ASIDs for sharing contexts with devices Jean-Philippe Brucker
2017-02-27 19:54 ` Jean-Philippe Brucker
2017-02-27 19:54 ` Jean-Philippe Brucker
2017-02-27 19:54 ` [RFC PATCH 12/30] iommu/arm-smmu-v3: Keep track of process address spaces Jean-Philippe Brucker
2017-02-27 19:54 ` Jean-Philippe Brucker
2017-02-27 19:54 ` Jean-Philippe Brucker
2017-02-27 19:54 ` [RFC PATCH 13/30] iommu/io-pgtable-arm: Factor out ARM LPAE register defines Jean-Philippe Brucker
2017-02-27 19:54 ` Jean-Philippe Brucker
2017-02-27 19:54 ` Jean-Philippe Brucker
2017-02-27 19:54 ` [RFC PATCH 14/30] iommu/arm-smmu-v3: Share process page tables Jean-Philippe Brucker
2017-02-27 19:54 ` Jean-Philippe Brucker
2017-02-27 19:54 ` Jean-Philippe Brucker
2017-02-27 19:54 ` [RFC PATCH 15/30] iommu/arm-smmu-v3: Steal private ASID from a domain Jean-Philippe Brucker
2017-02-27 19:54 ` Jean-Philippe Brucker
2017-02-27 19:54 ` Jean-Philippe Brucker
2017-02-27 19:54 ` [RFC PATCH 16/30] iommu/arm-smmu-v3: Use shared ASID set Jean-Philippe Brucker
2017-02-27 19:54 ` Jean-Philippe Brucker
2017-02-27 19:54 ` Jean-Philippe Brucker
2017-02-27 19:54 ` [RFC PATCH 17/30] iommu/arm-smmu-v3: Add SVM feature checking Jean-Philippe Brucker
2017-02-27 19:54 ` Jean-Philippe Brucker
2017-02-27 19:54 ` Jean-Philippe Brucker
2017-02-27 19:54 ` [RFC PATCH 18/30] PCI: Make "PRG Response PASID Required" handling common Jean-Philippe Brucker
2017-02-27 19:54 ` Jean-Philippe Brucker
2017-02-27 19:54 ` Jean-Philippe Brucker
[not found] ` <20170227195441.5170-19-jean-philippe.brucker-5wv7dgnIgG8@public.gmane.org>
2017-03-03 21:11 ` Bjorn Helgaas
2017-03-03 21:11 ` Bjorn Helgaas
2017-03-03 21:11 ` Bjorn Helgaas
[not found] ` <20170303211140.GC31767-1RhO1Y9PlrlHTL0Zs8A6p5iNqAH0jzoTYJqu5kTmcBRl57MIdRCFDg@public.gmane.org>
2017-03-06 11:31 ` Jean-Philippe Brucker
2017-03-06 11:31 ` Jean-Philippe Brucker
2017-03-06 11:31 ` Jean-Philippe Brucker
2017-02-27 19:54 ` [RFC PATCH 19/30] PCI: Cache PRI and PASID bits in pci_dev Jean-Philippe Brucker
2017-02-27 19:54 ` Jean-Philippe Brucker
2017-02-27 19:54 ` Jean-Philippe Brucker
[not found] ` <20170227195441.5170-20-jean-philippe.brucker-5wv7dgnIgG8@public.gmane.org>
2017-03-03 21:12 ` Bjorn Helgaas
2017-03-03 21:12 ` Bjorn Helgaas
2017-03-03 21:12 ` Bjorn Helgaas
2017-02-27 19:54 ` [RFC PATCH 20/30] iommu/arm-smmu-v3: Enable PCI PASID in masters Jean-Philippe Brucker
2017-02-27 19:54 ` Jean-Philippe Brucker
2017-02-27 19:54 ` Jean-Philippe Brucker
[not found] ` <20170227195441.5170-21-jean-philippe.brucker-5wv7dgnIgG8@public.gmane.org>
2017-05-31 14:10 ` [RFC,20/30] " Sinan Kaya
2017-05-31 14:10 ` Sinan Kaya
2017-05-31 14:10 ` Sinan Kaya
[not found] ` <f18163da-30a6-a7d4-0a2c-bca4fc1b0fff-sgV2jX0FEOL9JmXXK+q4OQ@public.gmane.org>
2017-06-01 12:30 ` Jean-Philippe Brucker
2017-06-01 12:30 ` Jean-Philippe Brucker
2017-06-01 12:30 ` Jean-Philippe Brucker
[not found] ` <a5428875-6ff9-820a-498d-ae2602e8cc53-5wv7dgnIgG8@public.gmane.org>
2017-06-01 12:30 ` David Woodhouse
2017-06-01 12:30 ` David Woodhouse
2017-06-01 12:30 ` David Woodhouse
2017-06-23 14:39 ` Sinan Kaya
2017-06-23 14:39 ` Sinan Kaya
2017-06-23 14:39 ` Sinan Kaya
2017-06-23 15:15 ` Jean-Philippe Brucker
2017-06-23 15:15 ` Jean-Philippe Brucker
2017-06-23 15:15 ` Jean-Philippe Brucker
2017-02-27 19:54 ` [RFC PATCH 21/30] iommu/arm-smmu-v3: Handle device faults from PRI Jean-Philippe Brucker
2017-02-27 19:54 ` Jean-Philippe Brucker
2017-02-27 19:54 ` Jean-Philippe Brucker
[not found] ` <8520D5D51A55D047800579B0941471982640F43C@XAP-PVEXMBX02.xlnx.xilinx.com>
2017-03-25 5:16 ` valmiki
2017-03-25 5:16 ` valmiki
2017-03-25 5:16 ` valmiki
[not found] ` <0b3e3ddd-acc3-5ba7-639f-5c9192da57c3-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org>
2017-03-27 11:05 ` Jean-Philippe Brucker
2017-03-27 11:05 ` Jean-Philippe Brucker
2017-03-27 11:05 ` Jean-Philippe Brucker
2017-02-27 19:54 ` [RFC PATCH 22/30] iommu: Bind/unbind tasks to/from devices Jean-Philippe Brucker
2017-02-27 19:54 ` Jean-Philippe Brucker
2017-02-27 19:54 ` Jean-Philippe Brucker
2017-03-03 9:40 ` David Woodhouse
2017-03-03 9:40 ` David Woodhouse
[not found] ` <1488534044.6234.14.camel-wEGCiKHe2LqWVfeAwA7xHQ@public.gmane.org>
2017-03-03 17:05 ` Raj, Ashok
2017-03-03 17:05 ` Raj, Ashok
2017-03-03 17:05 ` Raj, Ashok
2017-03-03 18:39 ` Jean-Philippe Brucker
2017-03-03 18:39 ` Jean-Philippe Brucker
2017-03-03 18:39 ` Jean-Philippe Brucker
2017-03-22 15:36 ` Joerg Roedel
2017-03-22 15:36 ` Joerg Roedel
2017-03-22 15:36 ` Joerg Roedel
2017-03-22 18:30 ` Jean-Philippe Brucker
2017-03-22 18:30 ` Jean-Philippe Brucker
2017-03-22 18:30 ` Jean-Philippe Brucker
[not found] ` <20170227195441.5170-23-jean-philippe.brucker-5wv7dgnIgG8@public.gmane.org>
2017-03-02 7:29 ` Tian, Kevin
2017-03-02 7:29 ` Tian, Kevin
2017-03-02 7:29 ` Tian, Kevin
2017-03-22 15:38 ` Joerg Roedel
2017-03-22 15:38 ` Joerg Roedel
2017-03-22 15:38 ` Joerg Roedel
2017-02-27 19:54 ` [RFC PATCH 23/30] iommu/arm-smmu-v3: Bind/unbind device and task Jean-Philippe Brucker
2017-02-27 19:54 ` Jean-Philippe Brucker
2017-02-27 19:54 ` Jean-Philippe Brucker
2017-02-27 19:54 ` [RFC PATCH 24/30] iommu: Specify PASID state when unbinding a task Jean-Philippe Brucker
2017-02-27 19:54 ` Jean-Philippe Brucker
2017-02-27 19:54 ` Jean-Philippe Brucker
[not found] ` <20170227195441.5170-25-jean-philippe.brucker-5wv7dgnIgG8@public.gmane.org>
2017-03-22 15:44 ` Joerg Roedel
2017-03-22 15:44 ` Joerg Roedel
2017-03-22 15:44 ` Joerg Roedel
2017-03-22 18:31 ` Jean-Philippe Brucker
2017-03-22 18:31 ` Jean-Philippe Brucker
2017-03-22 18:31 ` Jean-Philippe Brucker
2017-03-22 22:53 ` Joerg Roedel
2017-03-22 22:53 ` Joerg Roedel
2017-03-22 22:53 ` Joerg Roedel
2017-03-23 13:37 ` Jean-Philippe Brucker
2017-03-23 13:37 ` Jean-Philippe Brucker
2017-03-23 13:37 ` Jean-Philippe Brucker
2017-03-23 14:30 ` Joerg Roedel
2017-03-23 14:30 ` Joerg Roedel
2017-03-23 14:30 ` Joerg Roedel
2017-03-23 15:52 ` Jean-Philippe Brucker
2017-03-23 15:52 ` Jean-Philippe Brucker
2017-03-23 15:52 ` Jean-Philippe Brucker
2017-03-23 16:52 ` Joerg Roedel
2017-03-23 16:52 ` Joerg Roedel
2017-03-23 16:52 ` Joerg Roedel
[not found] ` <20170323165218.GL7266-zLv9SwRftAIdnm+yROfE0A@public.gmane.org>
2017-03-23 17:03 ` Jean-Philippe Brucker
2017-03-23 17:03 ` Jean-Philippe Brucker
2017-03-23 17:03 ` Jean-Philippe Brucker
[not found] ` <9d318e88-11af-6dab-b30e-d6b5c02443fe-5wv7dgnIgG8@public.gmane.org>
2017-03-24 11:00 ` Joerg Roedel
2017-03-24 11:00 ` Joerg Roedel
2017-03-24 11:00 ` Joerg Roedel
2017-03-24 19:08 ` Jean-Philippe Brucker
2017-03-24 19:08 ` Jean-Philippe Brucker
2017-03-24 19:08 ` Jean-Philippe Brucker
[not found] ` <7386120a-2848-059f-4de0-7888a2698923-5wv7dgnIgG8@public.gmane.org>
2017-03-27 15:33 ` Joerg Roedel
2017-03-27 15:33 ` Joerg Roedel
2017-03-27 15:33 ` Joerg Roedel
2017-02-27 19:54 ` [RFC PATCH 25/30] iommu/arm-smmu-v3: Safe invalidation and recycling of PASIDs Jean-Philippe Brucker
2017-02-27 19:54 ` Jean-Philippe Brucker
2017-02-27 19:54 ` Jean-Philippe Brucker
2017-02-27 19:54 ` [RFC PATCH 26/30] iommu/arm-smmu-v3: Fix PRI queue overflow acknowledgement Jean-Philippe Brucker
2017-02-27 19:54 ` Jean-Philippe Brucker
2017-02-27 19:54 ` Jean-Philippe Brucker
2017-02-27 19:54 ` [RFC PATCH 27/30] iommu/arm-smmu-v3: Handle PRI queue overflow Jean-Philippe Brucker
2017-02-27 19:54 ` Jean-Philippe Brucker
2017-02-27 19:54 ` Jean-Philippe Brucker
2017-02-27 19:54 ` [RFC PATCH 28/30] iommu/arm-smmu-v3: Add support for Hardware Translation Table Update at stage 1 Jean-Philippe Brucker
2017-02-27 19:54 ` Jean-Philippe Brucker
2017-02-27 19:54 ` Jean-Philippe Brucker
2017-02-27 19:54 ` [RFC PATCH 29/30] vfio: Add support for Shared Virtual Memory Jean-Philippe Brucker
2017-02-27 19:54 ` Jean-Philippe Brucker
2017-02-27 19:54 ` Jean-Philippe Brucker
2017-03-21 7:04 ` Liu, Yi L
2017-03-21 7:04 ` Liu, Yi L
2017-03-21 7:04 ` Liu, Yi L
[not found] ` <A2975661238FB949B60364EF0F2C2574390206F0-E2R4CRU6q/6iAffOGbnezLfspsVTdybXVpNB7YpNyf8@public.gmane.org>
2017-03-21 19:37 ` Jean-Philippe Brucker
2017-03-21 19:37 ` Jean-Philippe Brucker
2017-03-21 19:37 ` Jean-Philippe Brucker
2017-03-21 20:56 ` jacob pan
2017-03-21 20:56 ` jacob pan
2017-03-21 20:56 ` jacob pan
2017-03-21 20:56 ` jacob pan
2017-03-23 8:39 ` Liu, Yi L
2017-03-23 8:39 ` Liu, Yi L
2017-03-23 8:39 ` Liu, Yi L
2017-03-23 8:39 ` Liu, Yi L
2017-03-23 13:38 ` Jean-Philippe Brucker
2017-03-23 13:38 ` Jean-Philippe Brucker
2017-03-23 13:38 ` Jean-Philippe Brucker
2017-03-23 13:38 ` Jean-Philippe Brucker
2017-03-24 7:46 ` Liu, Yi L
2017-03-24 7:46 ` Liu, Yi L
2017-03-24 7:46 ` Liu, Yi L
2017-03-24 7:46 ` Liu, Yi L
[not found] ` <A2975661238FB949B60364EF0F2C257439030135-E2R4CRU6q/6iAffOGbnezLfspsVTdybXVpNB7YpNyf8@public.gmane.org>
2017-03-27 10:13 ` Jean-Philippe Brucker
2017-03-27 10:13 ` Jean-Philippe Brucker
2017-03-27 10:13 ` Jean-Philippe Brucker
[not found] ` <1a63cf88-840c-0b82-3951-a83364fa72fc-5wv7dgnIgG8@public.gmane.org>
2017-03-29 6:17 ` Liu, Yi L
2017-03-29 6:17 ` Liu, Yi L
2017-03-29 6:17 ` Liu, Yi L
[not found] ` <20170227195441.5170-30-jean-philippe.brucker-5wv7dgnIgG8@public.gmane.org>
2017-02-28 3:54 ` Alex Williamson
2017-02-28 3:54 ` Alex Williamson
2017-02-28 3:54 ` Alex Williamson
[not found] ` <20170227205409.14f0e2c7-1yVPhWWZRC1BDLzU/O5InQ@public.gmane.org>
2017-02-28 15:17 ` Jean-Philippe Brucker
2017-02-28 15:17 ` Jean-Philippe Brucker
2017-02-28 15:17 ` Jean-Philippe Brucker
2017-04-26 6:53 ` Tomasz Nowicki
2017-04-26 6:53 ` Tomasz Nowicki
2017-04-26 6:53 ` Tomasz Nowicki
[not found] ` <f5745241-83b0-0945-7616-4b59d7ebcd48-nYOzD4b6Jr9Wk0Htik3J/w@public.gmane.org>
2017-04-26 10:08 ` Jean-Philippe Brucker
2017-04-26 10:08 ` Jean-Philippe Brucker
2017-04-26 10:08 ` Jean-Philippe Brucker
2017-04-26 11:01 ` Tomasz Nowicki
2017-04-26 11:01 ` Tomasz Nowicki
2017-04-26 11:01 ` Tomasz Nowicki
2017-02-27 19:54 ` [RFC PATCH 30/30] vfio: Allow to bind foreign task Jean-Philippe Brucker
2017-02-27 19:54 ` Jean-Philippe Brucker
2017-02-27 19:54 ` Jean-Philippe Brucker
[not found] ` <20170227195441.5170-31-jean-philippe.brucker-5wv7dgnIgG8@public.gmane.org>
2017-02-28 3:54 ` Alex Williamson
2017-02-28 3:54 ` Alex Williamson
2017-02-28 3:54 ` Alex Williamson
[not found] ` <20170227205411.1abca59a-1yVPhWWZRC1BDLzU/O5InQ@public.gmane.org>
2017-02-28 6:43 ` Tian, Kevin
2017-02-28 6:43 ` Tian, Kevin
2017-02-28 6:43 ` Tian, Kevin
[not found] ` <AADFC41AFE54684AB9EE6CBC0274A5D190C4CB9C-0J0gbvR4kThpB2pF5aRoyrfspsVTdybXVpNB7YpNyf8@public.gmane.org>
2017-02-28 15:22 ` Jean-Philippe Brucker
2017-02-28 15:22 ` Jean-Philippe Brucker
2017-02-28 15:22 ` Jean-Philippe Brucker
[not found] ` <20170228152230.GB15153-lfHAr0XZR/FyySVAYrpuPyZi+YwRKgec@public.gmane.org>
2017-03-01 8:02 ` Tian, Kevin
2017-03-01 8:02 ` Tian, Kevin
2017-03-01 8:02 ` Tian, Kevin
[not found] ` <AADFC41AFE54684AB9EE6CBC0274A5D190C5018D-0J0gbvR4kThpB2pF5aRoyrfspsVTdybXVpNB7YpNyf8@public.gmane.org>
2017-03-02 10:50 ` Jean-Philippe Brucker
2017-03-02 10:50 ` Jean-Philippe Brucker
2017-03-02 10:50 ` Jean-Philippe Brucker
2017-04-26 7:25 ` Tomasz Nowicki
2017-04-26 7:25 ` Tomasz Nowicki
2017-04-26 7:25 ` Tomasz Nowicki
[not found] ` <b937914a-d215-8223-0846-65271a568170-nYOzD4b6Jr9Wk0Htik3J/w@public.gmane.org>
2017-04-26 10:08 ` Jean-Philippe Brucker
2017-04-26 10:08 ` Jean-Philippe Brucker
2017-04-26 10:08 ` Jean-Philippe Brucker
2017-03-06 8:20 ` [RFC PATCH 00/30] Add PCIe SVM support to ARM SMMUv3 Liu, Yi L
2017-03-06 8:20 ` Liu, Yi L
2017-03-06 8:20 ` Liu, Yi L
[not found] ` <A2975661238FB949B60364EF0F2C2574390186B8-E2R4CRU6q/6iAffOGbnezLfspsVTdybXVpNB7YpNyf8@public.gmane.org>
2017-03-06 11:14 ` Jean-Philippe Brucker
2017-03-06 11:14 ` Jean-Philippe Brucker
2017-03-06 11:14 ` Jean-Philippe Brucker
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=592284D7.60002@huawei.com \
--to=thunder.leizhen@huawei.com \
--cc=alex.williamson@redhat.com \
--cc=bhelgaas@google.com \
--cc=catalin.marinas@arm.com \
--cc=dwmw2@infradead.org \
--cc=harba@qti.qualcomm.com \
--cc=iommu@lists.linux-foundation.org \
--cc=jean-philippe.brucker@arm.com \
--cc=joro@8bytes.org \
--cc=kvm@vger.kernel.org \
--cc=linux-arm-kernel@lists.infradead.org \
--cc=linux-pci@vger.kernel.org \
--cc=linuxarm@huawei.com \
--cc=lorenzo.pieralisi@arm.com \
--cc=nwatters@qti.qualcomm.com \
--cc=okaya@qti.qualcomm.com \
--cc=robin.murphy@arm.com \
--cc=shankerd@qti.qualcomm.com \
--cc=will.deacon@arm.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.