> From: Duan, Zhenzhong
> Sent: Monday, May 20, 2024 11:41 AM
>
>
>
> >-Original Message-
> >From: Jason Wang
> >Sent: Monday, May 20, 2024 8:44 AM
> >To: Duan, Zhenzhong
> >Cc: qemu-devel@nongnu.org; Liu, Yi L ; Peng, Chao P
> >
> From: CLEMENT MATHIEU--DRIF
> Sent: Friday, May 17, 2024 9:13 PM
>
> Hi Zhenzhong
>
> On 17/05/2024 12:23, Zhenzhong Duan wrote:
> > Caution: External email. Do not open attachments or click links, unless
> > this email
> comes from a known sender and you know the content is safe.
> >
> >
>
> From: Jason Wang
> Sent: Friday, May 26, 2023 2:28 PM
>
> On Fri, May 26, 2023 at 2:22 PM Duan, Zhenzhong
> wrote:
> >
> >
> > >-Original Message-
> > >From: Peter Xu
> > >Sent: Thursday, May 25, 2023 9:54 PM
> > >Subject: Re: [PATCH] intel_iommu: Optimize out some unnecessary UNMAP
On 2022/1/14 15:22, Jason Wang wrote:
On Fri, Jan 14, 2022 at 3:13 PM Peter Xu wrote:
On Fri, Jan 14, 2022 at 01:58:07PM +0800, Jason Wang wrote:
Right, but I think you meant to do this only when scalable mode is disabled.
Yes IMHO it will definitely suite for !scalable case since that's
> From: Qemu-devel
> On Behalf Of Ani Sinha
> Sent: Wednesday, December 1, 2021 2:43 PM
>
> There is no 5.2 section. Section 5.3 should really be 5.2. Fix it.
Reviewed-by: Liu Yi L
BTW. Is a fix tag needed?
Regards,
Yi Liu
> Signed-off-by: Ani Sinha
> ---
> docs/p
> From: Peter Xu
> Sent: Monday, November 29, 2021 11:14 AM
>
> On Mon, Nov 29, 2021 at 10:28:42AM +0800, Jason Wang wrote:
> >
> > And in the future, it could be even more troublesome,e.g there's one
> > day we found another bit that needs not to be checked. Maybe we should
> > even remove all
> From: Peter Xu
> Sent: Thursday, November 25, 2021 2:14 PM
>
> On Thu, Nov 25, 2021 at 05:49:38AM +0000, Liu, Yi L wrote:
> > > From: Peter Xu
> > > Sent: Thursday, November 25, 2021 12:31 PM
> > >
> > > On Thu, Nov 25, 2021 at 04:03:34AM
> From: Jason Wang
> Sent: Wednesday, November 24, 2021 4:29 PM
>
> On Wed, Nov 24, 2021 at 3:57 PM Peter Xu wrote:
> >
> > On Wed, Nov 24, 2021 at 02:03:09PM +0800, Jason Wang wrote:
> > > When booting with scalable mode, I hit this error:
> > >
> > > qemu-system-x86_64: vtd_iova_to_slpte:
> From: Jason Wang
> Sent: Wednesday, November 24, 2021 5:35 PM
>
> On Wed, Nov 24, 2021 at 5:23 PM Peter Xu wrote:
> >
> > On Wed, Nov 24, 2021 at 05:01:42PM +0800, Jason Wang wrote:
> > > > > > > -static bool vtd_slpte_nonzero_rsvd(uint64_t slpte, uint32_t
> level)
> > > > > > > +static bool
> From: Peter Xu
> Sent: Thursday, November 25, 2021 12:31 PM
>
> On Thu, Nov 25, 2021 at 04:03:34AM +0000, Liu, Yi L wrote:
> > > From: Peter Xu
> > > Sent: Wednesday, November 24, 2021 3:57 PM
> > >
> > > On Wed, Nov 24, 2021 at 02:03:09
> From: Peter Xu
> Sent: Wednesday, November 24, 2021 3:57 PM
>
> On Wed, Nov 24, 2021 at 02:03:09PM +0800, Jason Wang wrote:
> > When booting with scalable mode, I hit this error:
> >
> > qemu-system-x86_64: vtd_iova_to_slpte: detected splte reserve non-
> zero iova=0xf002,
options there, but I hide them explicitly
> because
> they shouldn't be used by normal QEMU users.
yes, it's a good start.
Looks good to me.
Reviewed-by: Liu Yi L
Regards,
Yi Liu
>
> Cc: Chao Yang
> Cc: Lei Yang
> Cc: Jing Zhao
> Cc: Jason Wang
> Cc: Michael S. Tsi
table related mappings during DMA address translation.
This patch traps the guest PASID-based iotlb flush and propagate
it to host.
Cc: Kevin Tian
Cc: Jacob Pan
Cc: Peter Xu
Cc: Yi Sun
Cc: Paolo Bonzini
Cc: Richard Henderson
Cc: Eduardo Habkost
Signed-off-by: Liu Yi L
---
rfcv4 (v1) ->
Tian
Cc: Jacob Pan
Cc: Peter Xu
Cc: Eric Auger
Cc: Yi Sun
Cc: David Gibson
Cc: Alex Williamson
Acked-by: Peter Xu
Signed-off-by: Liu Yi L
---
hw/iommu/host_iommu_context.c | 19 +++
hw/vfio/common.c | 24
include/hw/iommu
in subsequent patches.
Cc: Kevin Tian
Cc: Jacob Pan
Cc: Peter Xu
Cc: Yi Sun
Cc: Paolo Bonzini
Cc: Richard Henderson
Cc: Eduardo Habkost
Reviewed-by: Peter Xu
Signed-off-by: Liu Yi L
---
rfcv4 (v1) -> rfcv5 (v2):
*) remove vtd_pasid_cache_gsi(), vtd_pasid_cache_psi()
and vtd_pasid_cache_
-by: Liu Yi L
Signed-off-by: Yi Sun
---
rfcv10 -> rfcv11:
*) use /dev/ioasid FD for pasid alloc/free, /dev/ioasid open is added in
latter patch.
---
hw/i386/intel_iommu.c | 141 +
hw/i386/intel_iommu_internal.h | 37 +
hw/i386/trace-eve
could make use of the methods provided by host iommu context. e.g.
propagate requests to host iommu.
Cc: Kevin Tian
Cc: Jacob Pan
Cc: Peter Xu
Cc: Eric Auger
Cc: Yi Sun
Cc: David Gibson
Cc: Alex Williamson
Signed-off-by: Liu Yi L
---
hw/vfio/common.c | 135
: Richard Henderson
Cc: Eduardo Habkost
Reviewed-by: Peter Xu
Signed-off-by: Liu Yi L
---
hw/i386/intel_iommu.c | 18 ++
hw/i386/intel_iommu_internal.h | 1 +
2 files changed, 19 insertions(+)
diff --git a/hw/i386/intel_iommu.c b/hw/i386/intel_iommu.c
index 915db7ad1f
Signed-off-by: Liu Yi L
---
hw/vfio/common.c | 70 +++
include/hw/iommu/host_iommu_context.h | 3 ++
include/hw/vfio/vfio-common.h | 3 ++
3 files changed, 76 insertions(+)
diff --git a/hw/vfio/common.c b/hw/vfio/common.c
index 883815d5b0
Bonzini
Cc: Richard Henderson
Cc: Eduardo Habkost
Reviewed-by: Peter Xu
Signed-off-by: Liu Yi L
---
hw/i386/intel_iommu.c | 53 ++
hw/i386/intel_iommu_internal.h | 13 +
2 files changed, 66 insertions(+)
diff --git a/hw/i386/intel_iommu.c b/hw
: no scalable mode support
- if not configured, means no scalable mode support, if not proper
configured, will throw error
Note: this patch is supposed to be merged when the whole vSVA patch series
were merged.
Cc: Kevin Tian
Cc: Jacob Pan
Cc: Peter Xu
Cc: Yi Sun
Cc: Paolo Bonzini
Cc: Richar
Cc: Peter Xu
Cc: Yi Sun
Cc: Paolo Bonzini
Cc: Richard Henderson
Cc: Eduardo Habkost
Signed-off-by: Liu Yi L
---
hw/i386/intel_iommu.c | 71 ---
include/hw/i386/intel_iommu.h | 21 +--
2 files changed, 83 insertions(+), 9 deletions(-)
diff --git
ntext() to set/unset
HostIOMMUContext for a given PCIe device (VFIO case). Caller of set
should fail if set operation failed.
Cc: Kevin Tian
Cc: Jacob Pan
Cc: Peter Xu
Cc: Eric Auger
Cc: Yi Sun
Cc: David Gibson
Cc: Michael S. Tsirkin
Reviewed-by: Peter Xu
Signed-off-by: Liu Yi L
---
kernel.org/linux-iommu/20191219031634.15168-1-baolu...@linux.intel.com/
Cc: Kevin Tian
Cc: Jacob Pan
Cc: Peter Xu
Cc: Yi Sun
Cc: Paolo Bonzini
Cc: Richard Henderson
Cc: Eduardo Habkost
Reviewed-by: Peter Xu
Signed-off-by: Liu Yi L
---
hw/i386/intel_iommu.c | 10 ++
1 file c
: Paolo Bonzini
Cc: Richard Henderson
Cc: Eduardo Habkost
Signed-off-by: Liu Yi L
---
hw/i386/intel_iommu.c | 50 ++
hw/i386/intel_iommu_internal.h | 1 +
hw/i386/trace-events | 1 +
3 files changed, 52 insertions(+)
diff --git a/hw/i386
This patch passes the nesting requirement into vfio_get_group() to
indicate whether VFIO_TYPE1_NESTING_IOMMU is required.
Cc: Kevin Tian
Cc: Jacob Pan
Cc: Peter Xu
Cc: Eric Auger
Cc: Yi Sun
Cc: David Gibson
Cc: Alex Williamson
Signed-off-by: Liu Yi L
---
hw/vfio/ap.c | 2
Gibson
Cc: Alex Williamson
Signed-off-by: Liu Yi L
Signed-off-by: Eric Auger
Signed-off-by: Yi Sun
---
hw/vfio/common.c | 37 ++---
1 file changed, 26 insertions(+), 11 deletions(-)
diff --git a/hw/vfio/common.c b/hw/vfio/common.c
index 44097875e2..883815d5b0
gt;HPA) under nested translation mode. This is the
key part of vSVA support, and also a key to support IOVA over 1st-
level page table for Intel VT-d in virtualization environment.
Cc: Kevin Tian
Cc: Jacob Pan
Cc: Peter Xu
Cc: Yi Sun
Cc: Paolo Bonzini
Cc: Richard Henderson
Signed-off-by: Li
-by: Liu Yi L
---
rfcv4 (v1) -> rfcv5 (v2):
*) merged this patch with former replay binding patch, makes
PSI/DSI/GSI use the unified function to do cache invalidation
and pasid binding replay.
*) dropped pasid_cache_gen in both iommu_state and vtd_pasid_as
as it is not necessary so far, we
specific operations.
Cc: Kevin Tian
Cc: Jacob Pan
Cc: Peter Xu
Cc: Eric Auger
Cc: Yi Sun
Cc: David Gibson
Cc: Michael S. Tsirkin
Reviewed-by: David Gibson
Reviewed-by: Peter Xu
Signed-off-by: Liu Yi L
---
rfcv9 -> rfcv10:
*) Fix a bug in pci_device_iommu_address_space()
+ iommu_
Update the script to import the new ioasid.h uapi header.
Cc: Kevin Tian
Cc: Jacob Pan
Cc: Peter Xu
Cc: Yi Sun
Cc: Michael S. Tsirkin
Cc: Cornelia Huck
Cc: Paolo Bonzini
Signed-off-by: Liu Yi L
---
scripts/update-linux-headers.sh | 2 +-
1 file changed, 1 insertion(+), 1 deletion
l S. Tsirkin
Signed-off-by: Liu Yi L
---
rfcv10 -> rfcv11:
*) removed pasid_alloc/free in HostIOMMUContextClass, define bind_stage1_pgtbl
and unbind_stage1_pgtbl() as a start for HostIOMMUContextClass.
rfcv9 -> rfcv10:
*) adjust to meson build
---
hw/Kconfig
.
Cc: Kevin Tian
Cc: Jacob Pan
Cc: Peter Xu
Cc: Yi Sun
Cc: Paolo Bonzini
Cc: Richard Henderson
Signed-off-by: Liu Yi L
---
hw/i386/intel_iommu.c | 105 +
hw/i386/intel_iommu_internal.h | 18 ++
include/hw/i386/intel_iommu.h | 4 ++
3 files
From: Eric Auger
Update the script to import the new iommu.h uapi header.
Cc: Kevin Tian
Cc: Jacob Pan
Cc: Peter Xu
Cc: Yi Sun
Cc: Michael S. Tsirkin
Cc: Cornelia Huck
Cc: Paolo Bonzini
Acked-by: Cornelia Huck
Signed-off-by: Eric Auger
Signed-off-by: Liu Yi L
---
scripts/update-linux
Return vIOMMU attribute to caller. e.g. VFIO call via PCI layer.
Cc: Kevin Tian
Cc: Jacob Pan
Cc: Peter Xu
Cc: Yi Sun
Cc: Paolo Bonzini
Cc: Richard Henderson
Cc: Eduardo Habkost
Signed-off-by: Liu Yi L
---
hw/i386/intel_iommu.c | 23 +++
1 file changed, 23 insertions
This patch adds pci_device_get_iommu_attr() to get vIOMMU attributes.
e.g. if nesting IOMMU wanted.
Cc: Kevin Tian
Cc: Jacob Pan
Cc: Peter Xu
Cc: Eric Auger
Cc: Yi Sun
Cc: David Gibson
Cc: Michael S. Tsirkin
Signed-off-by: Liu Yi L
---
hw/pci/pci.c | 35
: Jacob Pan
Cc: Peter Xu
Cc: Yi Sun
Cc: Michael S. Tsirkin
Signed-off-by: Liu Yi L
---
linux-headers/linux/iommu.h | 413
linux-headers/linux/vfio.h | 84
2 files changed, 497 insertions(+)
create mode 100644 linux-headers/linux/iommu.h
diff --git
anagement
and addressed the TODOs mentioned in RFC v1.
RFC v1: https://patchwork.kernel.org/cover/11033657/
---
Eric Auger (1):
scripts/update-linux-headers: Import iommu.h
Liu Yi L (24):
scripts/update-linux-headers: Import ioasid.h
header file update VFIO/IOMMU vSVA
: no scalable mode support
- if not configured, means no scalable mode support, if not proper
configured, will throw error
Note: this patch is supposed to be merged when the whole vSVA patch series
were merged.
Cc: Kevin Tian
Cc: Jacob Pan
Cc: Peter Xu
Cc: Yi Sun
Cc: Paolo Bonzini
Cc: Richar
Cc: David Gibson
Cc: Alex Williamson
Signed-off-by: Liu Yi L
---
hw/iommu/host_iommu_context.c | 57 +-
hw/vfio/common.c | 58 ++-
include/hw/iommu/host_iommu_context.h | 19 +++-
3 files
-by: Liu Yi L
Signed-off-by: Yi Sun
---
hw/i386/intel_iommu.c | 154 -
hw/i386/intel_iommu_internal.h | 37 ++
hw/i386/trace-events | 1 +
include/hw/i386/intel_iommu.h | 10 ++-
4 files changed, 200 insertions(+), 2 deletions
could make use the methods provided by host iommu context. e.g.
propagate requests to host iommu.
Cc: Kevin Tian
Cc: Jacob Pan
Cc: Peter Xu
Cc: Eric Auger
Cc: Yi Sun
Cc: David Gibson
Cc: Alex Williamson
Signed-off-by: Liu Yi L
---
hw/vfio/common.c | 113
table related mappings during DMA address translation.
This patch traps the guest PASID-based iotlb flush and propagate
it to host.
Cc: Kevin Tian
Cc: Jacob Pan
Cc: Peter Xu
Cc: Yi Sun
Cc: Paolo Bonzini
Cc: Richard Henderson
Cc: Eduardo Habkost
Signed-off-by: Liu Yi L
---
rfcv4 (v1) ->
gt;HPA) under nested translation mode. This is the
key part of vSVA support, and also a key to support IOVA over 1st-
level page table for Intel VT-d in virtualization environment.
Cc: Kevin Tian
Cc: Jacob Pan
Cc: Peter Xu
Cc: Yi Sun
Cc: Paolo Bonzini
Cc: Richard Henderson
Signed-off-by: Li
: Richard Henderson
Cc: Eduardo Habkost
Reviewed-by: Peter Xu
Signed-off-by: Liu Yi L
---
hw/i386/intel_iommu.c | 18 ++
hw/i386/intel_iommu_internal.h | 1 +
2 files changed, 19 insertions(+)
diff --git a/hw/i386/intel_iommu.c b/hw/i386/intel_iommu.c
index 32b0029
ntext() to set/unset
HostIOMMUContext for a given PCIe device (VFIO case). Caller of set
should fail if set operation failed.
Cc: Kevin Tian
Cc: Jacob Pan
Cc: Peter Xu
Cc: Eric Auger
Cc: Yi Sun
Cc: David Gibson
Cc: Michael S. Tsirkin
Reviewed-by: Peter Xu
Signed-off-by: Liu Yi L
---
This patch defines vfio_host_iommu_context_info, implements the PASID
alloc/free hooks defined in HostIOMMUContextClass.
Cc: Kevin Tian
Cc: Jacob Pan
Cc: Peter Xu
Cc: Eric Auger
Cc: Yi Sun
Cc: David Gibson
Cc: Alex Williamson
Signed-off-by: Liu Yi L
---
hw/vfio/common.c
in subsequent patches.
Cc: Kevin Tian
Cc: Jacob Pan
Cc: Peter Xu
Cc: Yi Sun
Cc: Paolo Bonzini
Cc: Richard Henderson
Cc: Eduardo Habkost
Reviewed-by: Peter Xu
Signed-off-by: Liu Yi L
---
rfcv4 (v1) -> rfcv5 (v2):
*) remove vtd_pasid_cache_gsi(), vtd_pasid_cache_psi()
and vtd_pasid_cache_
Tian
Cc: Jacob Pan
Cc: Peter Xu
Cc: Eric Auger
Cc: Yi Sun
Cc: David Gibson
Cc: Alex Williamson
Acked-by: Peter Xu
Signed-off-by: Liu Yi L
---
hw/iommu/host_iommu_context.c | 19 +++
hw/vfio/common.c | 24
include/hw/iommu
.
Cc: Kevin Tian
Cc: Jacob Pan
Cc: Peter Xu
Cc: Yi Sun
Cc: Paolo Bonzini
Cc: Richard Henderson
Signed-off-by: Liu Yi L
---
hw/i386/intel_iommu.c | 105 +
hw/i386/intel_iommu_internal.h | 18 +++
include/hw/i386/intel_iommu.h | 4 ++
3
specific operations.
Cc: Kevin Tian
Cc: Jacob Pan
Cc: Peter Xu
Cc: Eric Auger
Cc: Yi Sun
Cc: David Gibson
Cc: Michael S. Tsirkin
Reviewed-by: David Gibson
Reviewed-by: Peter Xu
Signed-off-by: Liu Yi L
---
rfcv9 -> rfcv10:
*) Fix a bug in pci_device_iommu_address_space()
+ iommu_
Cc: Peter Xu
Cc: Yi Sun
Cc: Paolo Bonzini
Cc: Richard Henderson
Cc: Eduardo Habkost
Signed-off-by: Liu Yi L
---
hw/i386/intel_iommu.c | 71 ---
include/hw/i386/intel_iommu.h | 21 ++---
2 files changed, 83 insertions(+), 9 deletions(-)
From: Eric Auger
Update the script to import the new iommu.h uapi header.
Cc: Kevin Tian
Cc: Jacob Pan
Cc: Peter Xu
Cc: Yi Sun
Cc: Michael S. Tsirkin
Cc: Cornelia Huck
Cc: Paolo Bonzini
Acked-by: Cornelia Huck
Signed-off-by: Eric Auger
---
scripts/update-linux-headers.sh | 2 +-
1
-by: Liu Yi L
---
rfcv4 (v1) -> rfcv5 (v2):
*) merged this patch with former replay binding patch, makes
PSI/DSI/GSI use the unified function to do cache invalidation
and pasid binding replay.
*) dropped pasid_cache_gen in both iommu_state and vtd_pasid_as
as it is not necessary so far, we
This patch passes the nesting requirement into vfio_get_group() to
indicate whether VFIO_TYPE1_NESTING_IOMMU is required.
Cc: Kevin Tian
Cc: Jacob Pan
Cc: Peter Xu
Cc: Eric Auger
Cc: Yi Sun
Cc: David Gibson
Cc: Alex Williamson
Signed-off-by: Liu Yi L
---
hw/vfio/ap.c | 2
ID in system-wide.
Cc: Kevin Tian
Cc: Jacob Pan
Cc: Peter Xu
Cc: Eric Auger
Cc: Yi Sun
Cc: David Gibson
Cc: Michael S. Tsirkin
Signed-off-by: Liu Yi L
---
rfcv9 -> rfcv10:
*) adjust to meson build
---
hw/Kconfig| 3 ++
hw/iommu/Kconfig |
adding a new option as RFC v1 did. Refined the pasid cache management
---
Eric Auger (1):
scripts/update-linux-headers: Import iommu.h
Liu Yi L (24):
header file update VFIO/IOMMU vSVA APIs kernel 5.9-rc2
hw/pci: modify pci_setup_iommu() to set PCIIOMMUOps
hw/pci: introduce pci_device_g
Gibson
Cc: Alex Williamson
Signed-off-by: Liu Yi L
Signed-off-by: Eric Auger
Signed-off-by: Yi Sun
---
hw/vfio/common.c | 37 ++---
1 file changed, 26 insertions(+), 11 deletions(-)
diff --git a/hw/vfio/common.c b/hw/vfio/common.c
index 80d7a00..af91eca 100644
Return vIOMMU attribute to caller. e.g. VFIO call via PCI layer.
Cc: Kevin Tian
Cc: Jacob Pan
Cc: Peter Xu
Cc: Yi Sun
Cc: Paolo Bonzini
Cc: Richard Henderson
Cc: Eduardo Habkost
Signed-off-by: Liu Yi L
---
hw/i386/intel_iommu.c | 23 +++
1 file changed, 23 insertions
be replaced with a full header files update when
the vSVA uPAPI is stable.
Cc: Kevin Tian
Cc: Jacob Pan
Cc: Peter Xu
Cc: Yi Sun
Cc: Michael S. Tsirkin
Cc: Cornelia Huck
Cc: Paolo Bonzini
Signed-off-by: Liu Yi L
---
linux-headers/linux/iommu.h | 420
Bonzini
Cc: Richard Henderson
Cc: Eduardo Habkost
Reviewed-by: Peter Xu
Signed-off-by: Liu Yi L
---
hw/i386/intel_iommu.c | 53 ++
hw/i386/intel_iommu_internal.h | 13 +++
2 files changed, 66 insertions(+)
diff --git a/hw/i386
kernel.org/linux-iommu/20191219031634.15168-1-baolu...@linux.intel.com/
Cc: Kevin Tian
Cc: Jacob Pan
Cc: Peter Xu
Cc: Yi Sun
Cc: Paolo Bonzini
Cc: Richard Henderson
Cc: Eduardo Habkost
Reviewed-by: Peter Xu
Signed-off-by: Liu Yi L
---
hw/i386/intel_iommu.c | 10 ++
1 file c
This patch adds pci_device_get_iommu_attr() to get vIOMMU attributes.
e.g. if nesting IOMMU wanted.
Cc: Kevin Tian
Cc: Jacob Pan
Cc: Peter Xu
Cc: Eric Auger
Cc: Yi Sun
Cc: David Gibson
Cc: Michael S. Tsirkin
Signed-off-by: Liu Yi L
---
hw/pci/pci.c | 35
: Paolo Bonzini
Cc: Richard Henderson
Cc: Eduardo Habkost
Signed-off-by: Liu Yi L
---
hw/i386/intel_iommu.c | 50 ++
hw/i386/intel_iommu_internal.h | 1 +
hw/i386/trace-events | 1 +
3 files changed, 52 insertions(+)
diff --git a/hw
gt;HPA) under nested translation mode. This is the
key part of vSVA support, and also a key to support IOVA over 1st-
level page table for Intel VT-d in virtualization environment.
Cc: Kevin Tian
Cc: Jacob Pan
Cc: Peter Xu
Cc: Yi Sun
Cc: Paolo Bonzini
Cc: Richard Henderson
Signed-off-by: Li
: Paolo Bonzini
Cc: Richard Henderson
Cc: Eduardo Habkost
Signed-off-by: Liu Yi L
---
hw/i386/intel_iommu.c | 50 ++
hw/i386/intel_iommu_internal.h | 1 +
hw/i386/trace-events | 1 +
3 files changed, 52 insertions(+)
diff --git a/hw
Gibson
Cc: Alex Williamson
Signed-off-by: Liu Yi L
Signed-off-by: Eric Auger
Signed-off-by: Yi Sun
---
hw/vfio/common.c | 37 ++---
1 file changed, 26 insertions(+), 11 deletions(-)
diff --git a/hw/vfio/common.c b/hw/vfio/common.c
index 80d7a00..af91eca 100644
-by: Liu Yi L
---
rfcv4 (v1) -> rfcv5 (v2):
*) merged this patch with former replay binding patch, makes
PSI/DSI/GSI use the unified function to do cache invalidation
and pasid binding replay.
*) dropped pasid_cache_gen in both iommu_state and vtd_pasid_as
as it is not necessary so far, we
.
Cc: Kevin Tian
Cc: Jacob Pan
Cc: Peter Xu
Cc: Yi Sun
Cc: Paolo Bonzini
Cc: Richard Henderson
Signed-off-by: Liu Yi L
---
hw/i386/intel_iommu.c | 107 +
hw/i386/intel_iommu_internal.h | 18 +++
include/hw/i386/intel_iommu.h | 4 ++
3
: no scalable mode support
- if not configured, means no scalable mode support, if not proper
configured, will throw error
Note: this patch is supposed to be merged when the whole vSVA patch series
were merged.
Cc: Kevin Tian
Cc: Jacob Pan
Cc: Peter Xu
Cc: Yi Sun
Cc: Paolo Bonzini
Cc: Richar
Bonzini
Cc: Richard Henderson
Cc: Eduardo Habkost
Reviewed-by: Peter Xu
Signed-off-by: Liu Yi L
---
hw/i386/intel_iommu.c | 53 ++
hw/i386/intel_iommu_internal.h | 13 +++
2 files changed, 66 insertions(+)
diff --git a/hw/i386
table related mappings during DMA address translation.
This patch traps the guest PASID-based iotlb flush and propagate
it to host.
Cc: Kevin Tian
Cc: Jacob Pan
Cc: Peter Xu
Cc: Yi Sun
Cc: Paolo Bonzini
Cc: Richard Henderson
Cc: Eduardo Habkost
Signed-off-by: Liu Yi L
---
rfcv4 (v1) ->
ID in system-wide.
Cc: Kevin Tian
Cc: Jacob Pan
Cc: Peter Xu
Cc: Eric Auger
Cc: Yi Sun
Cc: David Gibson
Cc: Michael S. Tsirkin
Signed-off-by: Liu Yi L
---
hw/Makefile.objs | 1 +
hw/iommu/Makefile.objs| 1 +
hw/iommu/host_iommu_context.c
specific operations.
Cc: Kevin Tian
Cc: Jacob Pan
Cc: Peter Xu
Cc: Eric Auger
Cc: Yi Sun
Cc: David Gibson
Cc: Michael S. Tsirkin
Reviewed-by: David Gibson
Reviewed-by: Peter Xu
Signed-off-by: Liu Yi L
---
hw/alpha/typhoon.c | 6 +-
hw/arm/smmu-common.c | 6 +-
hw/hppa
l.org/lkml/2019/9/23/297
Cc: Kevin Tian
Cc: Jacob Pan
Cc: Peter Xu
Cc: Yi Sun
Cc: Paolo Bonzini
Cc: Richard Henderson
Cc: Eduardo Habkost
Reviewed-by: Peter Xu
Signed-off-by: Liu Yi L
---
hw/i386/intel_iommu.c | 10 ++
1 file changed, 10 insertions(+)
diff --git a/hw/i386/intel_io
: Richard Henderson
Cc: Eduardo Habkost
Reviewed-by: Peter Xu
Signed-off-by: Liu Yi L
---
hw/i386/intel_iommu.c | 18 ++
hw/i386/intel_iommu_internal.h | 1 +
2 files changed, 19 insertions(+)
diff --git a/hw/i386/intel_iommu.c b/hw/i386/intel_iommu.c
index db4460a
Tian
Cc: Jacob Pan
Cc: Peter Xu
Cc: Eric Auger
Cc: Yi Sun
Cc: David Gibson
Cc: Alex Williamson
Acked-by: Peter Xu
Signed-off-by: Liu Yi L
---
hw/iommu/host_iommu_context.c | 19 +++
hw/vfio/common.c | 24
include/hw/iommu
ntext() to set/unset
HostIOMMUContext for a given PCIe device (VFIO case). Caller of set
should fail if set operation failed.
Cc: Kevin Tian
Cc: Jacob Pan
Cc: Peter Xu
Cc: Eric Auger
Cc: Yi Sun
Cc: David Gibson
Cc: Michael S. Tsirkin
Reviewed-by: Peter Xu
Signed-off-by: Liu Yi L
---
Return vIOMMU attribute to caller. e.g. VFIO call via PCI layer.
Cc: Kevin Tian
Cc: Jacob Pan
Cc: Peter Xu
Cc: Yi Sun
Cc: Paolo Bonzini
Cc: Richard Henderson
Cc: Eduardo Habkost
Signed-off-by: Liu Yi L
---
hw/i386/intel_iommu.c | 23 +++
1 file changed, 23 insertions
Cc: David Gibson
Cc: Alex Williamson
Signed-off-by: Liu Yi L
---
hw/iommu/host_iommu_context.c | 57 +-
hw/vfio/common.c | 58 ++-
include/hw/iommu/host_iommu_context.h | 19 +++-
3 files
-by: Liu Yi L
Signed-off-by: Yi Sun
---
hw/i386/intel_iommu.c | 154 -
hw/i386/intel_iommu_internal.h | 37 ++
hw/i386/trace-events | 1 +
include/hw/i386/intel_iommu.h | 10 ++-
4 files changed, 200 insertions(+), 2 deletions
Cc: Peter Xu
Cc: Yi Sun
Cc: Paolo Bonzini
Cc: Richard Henderson
Cc: Eduardo Habkost
Signed-off-by: Liu Yi L
---
hw/i386/intel_iommu.c | 71 ---
include/hw/i386/intel_iommu.h | 21 ++---
2 files changed, 83 insertions(+), 9 deletions(-)
in subsequent patches.
Cc: Kevin Tian
Cc: Jacob Pan
Cc: Peter Xu
Cc: Yi Sun
Cc: Paolo Bonzini
Cc: Richard Henderson
Cc: Eduardo Habkost
Reviewed-by: Peter Xu
Signed-off-by: Liu Yi L
---
rfcv4 (v1) -> rfcv5 (v2):
*) remove vtd_pasid_cache_gsi(), vtd_pasid_cache_psi()
and vtd_pasid_cache_
This patch passes the nesting requirement into vfio_get_group() to
indicate whether VFIO_TYPE1_NESTING_IOMMU is required.
Cc: Kevin Tian
Cc: Jacob Pan
Cc: Peter Xu
Cc: Eric Auger
Cc: Yi Sun
Cc: David Gibson
Cc: Alex Williamson
Signed-off-by: Liu Yi L
---
hw/vfio/ap.c | 2
could make use the methods provided by host iommu context. e.g.
propagate requests to host iommu.
Cc: Kevin Tian
Cc: Jacob Pan
Cc: Peter Xu
Cc: Eric Auger
Cc: Yi Sun
Cc: David Gibson
Cc: Alex Williamson
Signed-off-by: Liu Yi L
---
hw/vfio/common.c | 113
This patch defines vfio_host_iommu_context_info, implements the PASID
alloc/free hooks defined in HostIOMMUContextClass.
Cc: Kevin Tian
Cc: Jacob Pan
Cc: Peter Xu
Cc: Eric Auger
Cc: Yi Sun
Cc: David Gibson
Cc: Alex Williamson
Signed-off-by: Liu Yi L
---
hw/vfio/common.c
be replaced with a full header files update when
the vSVA uPAPI is stable.
TODO: add the note for the Linux version.
Cc: Kevin Tian
Cc: Jacob Pan
Cc: Peter Xu
Cc: Yi Sun
Cc: Michael S. Tsirkin
Cc: Cornelia Huck
Cc: Paolo Bonzini
Signed-off-by: Liu Yi L
---
linux-headers/linux/iommu.h
From: Eric Auger
Update the script to import the new iommu.h uapi header.
Cc: Kevin Tian
Cc: Jacob Pan
Cc: Peter Xu
Cc: Yi Sun
Cc: Michael S. Tsirkin
Cc: Cornelia Huck
Cc: Paolo Bonzini
Acked-by: Cornelia Huck
Signed-off-by: Eric Auger
---
scripts/update-linux-headers.sh | 2 +-
1
e PCIPASIDOps
in RFC v1. Modify x-scalable-mode to be string option instead of
adding a new option as RFC v1 did. Refined the pasid cache management
---
Eric Auger (1):
scripts/update-linux-headers: Import iommu.h
Liu Yi L (24):
header file update VFIO/IOMMU vSVA APIs
This patch adds pci_device_get_iommu_attr() to get vIOMMU attributes.
e.g. if nesting IOMMU wanted.
Cc: Kevin Tian
Cc: Jacob Pan
Cc: Peter Xu
Cc: Eric Auger
Cc: Yi Sun
Cc: David Gibson
Cc: Michael S. Tsirkin
Signed-off-by: Liu Yi L
---
hw/pci/pci.c | 35
: Richard Henderson
Cc: Eduardo Habkost
Reviewed-by: Peter Xu
Signed-off-by: Liu Yi L
---
hw/i386/intel_iommu.c | 18 ++
hw/i386/intel_iommu_internal.h | 1 +
2 files changed, 19 insertions(+)
diff --git a/hw/i386/intel_iommu.c b/hw/i386/intel_iommu.c
index d3c41a6
: no scalable mode support
- if not configured, means no scalable mode support, if not proper
configured, will throw error
Note: this patch is supposed to be merged when the whole vSVA patch series
were merged.
Cc: Kevin Tian
Cc: Jacob Pan
Cc: Peter Xu
Cc: Yi Sun
Cc: Paolo Bonzini
Cc: Richar
Bonzini
Cc: Richard Henderson
Cc: Eduardo Habkost
Reviewed-by: Peter Xu
Signed-off-by: Liu Yi L
---
hw/i386/intel_iommu.c | 53 ++
hw/i386/intel_iommu_internal.h | 13 +++
2 files changed, 66 insertions(+)
diff --git a/hw/i386
table related mappings during DMA address translation.
This patch traps the guest PASID-based iotlb flush and propagate
it to host.
Cc: Kevin Tian
Cc: Jacob Pan
Cc: Peter Xu
Cc: Yi Sun
Cc: Paolo Bonzini
Cc: Richard Henderson
Cc: Eduardo Habkost
Signed-off-by: Liu Yi L
---
rfcv4 (v1) ->
l.org/lkml/2019/9/23/297
Cc: Kevin Tian
Cc: Jacob Pan
Cc: Peter Xu
Cc: Yi Sun
Cc: Paolo Bonzini
Cc: Richard Henderson
Cc: Eduardo Habkost
Reviewed-by: Peter Xu
Signed-off-by: Liu Yi L
---
hw/i386/intel_iommu.c | 10 ++
1 file changed, 10 insertions(+)
diff --git a/hw/i386/intel_io
Tian
Cc: Jacob Pan
Cc: Peter Xu
Cc: Eric Auger
Cc: Yi Sun
Cc: David Gibson
Cc: Alex Williamson
Acked-by: Peter Xu
Signed-off-by: Liu Yi L
---
hw/iommu/host_iommu_context.c | 19 +++
hw/vfio/common.c | 24
include/hw/iommu
gt;HPA) under nested translation mode. This is the
key part of vSVA support, and also a key to support IOVA over 1st-
level page table for Intel VT-d in virtualization environment.
Cc: Kevin Tian
Cc: Jacob Pan
Cc: Peter Xu
Cc: Yi Sun
Cc: Paolo Bonzini
Cc: Richard Henderson
Signed-off-by: Li
: Paolo Bonzini
Cc: Richard Henderson
Cc: Eduardo Habkost
Signed-off-by: Liu Yi L
---
hw/i386/intel_iommu.c | 50 ++
hw/i386/intel_iommu_internal.h | 1 +
hw/i386/trace-events | 1 +
3 files changed, 52 insertions(+)
diff --git a/hw
.
Cc: Kevin Tian
Cc: Jacob Pan
Cc: Peter Xu
Cc: Yi Sun
Cc: Paolo Bonzini
Cc: Richard Henderson
Signed-off-by: Liu Yi L
---
hw/i386/intel_iommu.c | 107 +
hw/i386/intel_iommu_internal.h | 18 +++
include/hw/i386/intel_iommu.h | 4 ++
3
-by: Liu Yi L
Signed-off-by: Yi Sun
---
hw/i386/intel_iommu.c | 154 -
hw/i386/intel_iommu_internal.h | 37 ++
hw/i386/trace-events | 1 +
include/hw/i386/intel_iommu.h | 10 ++-
4 files changed, 200 insertions(+), 2 deletions
1 - 100 of 635 matches
Mail list logo