Re: [PATCH v2 00/17] vfio: QOMify VFIOContainer

2024-06-24 Thread Cédric Le Goater

On 6/17/24 8:33 AM, Cédric Le Goater wrote:

Hello,

The series starts with simple changes (patch 1-4). Two of which were
initially sent by Joao in a series adding VFIO migration support with
vIOMMU [1].

The changes following prepare VFIOContainer for QOMification, switch
the container models to QOM when ready and add some final cleanups.

Applies on top of :

  * [v7] Add a host IOMMU device abstraction to check with vIOMMU
https://lore.kernel.org/all/20240605083043.317831-1-zhenzhong.d...@intel.com
  * [v4] VIRTIO-IOMMU/VFIO: Fix host iommu geometry
https://lore.kernel.org/all/20240614095402.904691-1-eric.au...@redhat.com

Thanks,

C.

[1] 
https://lore.kernel.org/qemu-devel/20230622214845.3980-1-joao.m.mart...@oracle.com/


Changes in v2:
  - Used OBJECT_DECLARE_SIMPLE_TYPE
  - Introduced a instance_finalize() handler

Avihai Horon (1):
   vfio/common: Extract vIOMMU code from vfio_sync_dirty_bitmap()

Cédric Le Goater (15):
   vfio: Make vfio_devices_dma_logging_start() return bool
   vfio: Remove unused declarations from vfio-common.h
   vfio/container: Introduce vfio_address_space_insert()
   vfio/container: Simplify vfio_container_init()
   vfio/container: Modify vfio_get_iommu_type() to use a container fd
   vfio/container: Introduce vfio_get_iommu_class_name()
   vfio/container: Introduce vfio_create_container()
   vfio/container: Discover IOMMU type before creating the container
   vfio/container: Change VFIOContainerBase to use QOM
   vfio/container: Switch to QOM
   vfio/container: Introduce an instance_init() handler
   vfio/container: Remove VFIOContainerBase::ops
   vfio/container: Remove vfio_container_init()
   vfio/container: Introduce vfio_iommu_legacy_instance_init()
   vfio/container: Move vfio_container_destroy() to an
 instance_finalize() handler

Joao Martins (1):
   vfio/common: Move dirty tracking ranges update to helper

  include/hw/vfio/vfio-common.h |  10 ++-
  include/hw/vfio/vfio-container-base.h |  19 +---
  hw/vfio/common.c  | 124 --
  hw/vfio/container-base.c  |  70 +--
  hw/vfio/container.c   | 106 --
  hw/vfio/iommufd.c |  13 ++-
  hw/vfio/pci.c |   4 +-
  hw/vfio/spapr.c   |   3 +
  8 files changed, 196 insertions(+), 153 deletions(-)



Applied to vfio-next.

Thanks,

C.






Re: [PATCH v2 00/17] vfio: QOMify VFIOContainer

2024-06-18 Thread Cédric Le Goater

On 6/17/24 6:22 PM, Eric Auger wrote:

Hi Cédric,

On 6/17/24 08:33, Cédric Le Goater wrote:

Hello,

The series starts with simple changes (patch 1-4). Two of which were
initially sent by Joao in a series adding VFIO migration support with
vIOMMU [1].

The changes following prepare VFIOContainer for QOMification, switch
the container models to QOM when ready and add some final cleanups.

Applies on top of :

  * [v7] Add a host IOMMU device abstraction to check with vIOMMU
https://lore.kernel.org/all/20240605083043.317831-1-zhenzhong.d...@intel.com
  * [v4] VIRTIO-IOMMU/VFIO: Fix host iommu geometry
https://lore.kernel.org/all/20240614095402.904691-1-eric.au...@redhat.com


For the whole series, feel free to add my

Tested-by: Eric Auger 

I tested with legacy/iommufd BE and with/without virtio-iommu


Thanks !

Here is an updated version, with the new commit logs :

  https://github.com/legoater/qemu/commits/vfio-9.1

I hope to push on vfio-next soon, without the series "vfio: VFIO
migration support with vIOMMU".

C.




Re: [PATCH v2 00/17] vfio: QOMify VFIOContainer

2024-06-17 Thread Eric Auger
Hi Cédric,

On 6/17/24 08:33, Cédric Le Goater wrote:
> Hello,
>
> The series starts with simple changes (patch 1-4). Two of which were
> initially sent by Joao in a series adding VFIO migration support with
> vIOMMU [1].
>
> The changes following prepare VFIOContainer for QOMification, switch
> the container models to QOM when ready and add some final cleanups.
>
> Applies on top of :
>
>  * [v7] Add a host IOMMU device abstraction to check with vIOMMU
>
> https://lore.kernel.org/all/20240605083043.317831-1-zhenzhong.d...@intel.com
>  * [v4] VIRTIO-IOMMU/VFIO: Fix host iommu geometry
>https://lore.kernel.org/all/20240614095402.904691-1-eric.au...@redhat.com

For the whole series, feel free to add my

Tested-by: Eric Auger 

I tested with legacy/iommufd BE and with/without virtio-iommu

Eric

>
> Thanks,
>
> C.
>
> [1] 
> https://lore.kernel.org/qemu-devel/20230622214845.3980-1-joao.m.mart...@oracle.com/
>
>
> Changes in v2:
>  - Used OBJECT_DECLARE_SIMPLE_TYPE
>  - Introduced a instance_finalize() handler
>
> Avihai Horon (1):
>   vfio/common: Extract vIOMMU code from vfio_sync_dirty_bitmap()
>
> Cédric Le Goater (15):
>   vfio: Make vfio_devices_dma_logging_start() return bool
>   vfio: Remove unused declarations from vfio-common.h
>   vfio/container: Introduce vfio_address_space_insert()
>   vfio/container: Simplify vfio_container_init()
>   vfio/container: Modify vfio_get_iommu_type() to use a container fd
>   vfio/container: Introduce vfio_get_iommu_class_name()
>   vfio/container: Introduce vfio_create_container()
>   vfio/container: Discover IOMMU type before creating the container
>   vfio/container: Change VFIOContainerBase to use QOM
>   vfio/container: Switch to QOM
>   vfio/container: Introduce an instance_init() handler
>   vfio/container: Remove VFIOContainerBase::ops
>   vfio/container: Remove vfio_container_init()
>   vfio/container: Introduce vfio_iommu_legacy_instance_init()
>   vfio/container: Move vfio_container_destroy() to an
> instance_finalize() handler
>
> Joao Martins (1):
>   vfio/common: Move dirty tracking ranges update to helper
>
>  include/hw/vfio/vfio-common.h |  10 ++-
>  include/hw/vfio/vfio-container-base.h |  19 +---
>  hw/vfio/common.c  | 124 --
>  hw/vfio/container-base.c  |  70 +--
>  hw/vfio/container.c   | 106 --
>  hw/vfio/iommufd.c |  13 ++-
>  hw/vfio/pci.c |   4 +-
>  hw/vfio/spapr.c   |   3 +
>  8 files changed, 196 insertions(+), 153 deletions(-)
>




[PATCH v2 00/17] vfio: QOMify VFIOContainer

2024-06-17 Thread Cédric Le Goater
Hello,

The series starts with simple changes (patch 1-4). Two of which were
initially sent by Joao in a series adding VFIO migration support with
vIOMMU [1].

The changes following prepare VFIOContainer for QOMification, switch
the container models to QOM when ready and add some final cleanups.

Applies on top of :

 * [v7] Add a host IOMMU device abstraction to check with vIOMMU
   https://lore.kernel.org/all/20240605083043.317831-1-zhenzhong.d...@intel.com
 * [v4] VIRTIO-IOMMU/VFIO: Fix host iommu geometry
   https://lore.kernel.org/all/20240614095402.904691-1-eric.au...@redhat.com

Thanks,

C.

[1] 
https://lore.kernel.org/qemu-devel/20230622214845.3980-1-joao.m.mart...@oracle.com/


Changes in v2:
 - Used OBJECT_DECLARE_SIMPLE_TYPE
 - Introduced a instance_finalize() handler

Avihai Horon (1):
  vfio/common: Extract vIOMMU code from vfio_sync_dirty_bitmap()

Cédric Le Goater (15):
  vfio: Make vfio_devices_dma_logging_start() return bool
  vfio: Remove unused declarations from vfio-common.h
  vfio/container: Introduce vfio_address_space_insert()
  vfio/container: Simplify vfio_container_init()
  vfio/container: Modify vfio_get_iommu_type() to use a container fd
  vfio/container: Introduce vfio_get_iommu_class_name()
  vfio/container: Introduce vfio_create_container()
  vfio/container: Discover IOMMU type before creating the container
  vfio/container: Change VFIOContainerBase to use QOM
  vfio/container: Switch to QOM
  vfio/container: Introduce an instance_init() handler
  vfio/container: Remove VFIOContainerBase::ops
  vfio/container: Remove vfio_container_init()
  vfio/container: Introduce vfio_iommu_legacy_instance_init()
  vfio/container: Move vfio_container_destroy() to an
instance_finalize() handler

Joao Martins (1):
  vfio/common: Move dirty tracking ranges update to helper

 include/hw/vfio/vfio-common.h |  10 ++-
 include/hw/vfio/vfio-container-base.h |  19 +---
 hw/vfio/common.c  | 124 --
 hw/vfio/container-base.c  |  70 +--
 hw/vfio/container.c   | 106 --
 hw/vfio/iommufd.c |  13 ++-
 hw/vfio/pci.c |   4 +-
 hw/vfio/spapr.c   |   3 +
 8 files changed, 196 insertions(+), 153 deletions(-)

-- 
2.45.2