[PATCH v2 00/15] vfio: preparation for vfio-user

John Levon posted 15 patches 7 months, 3 weeks ago
Failed in applying to current master (apply log)
hw/vfio/ap.c                          |  19 +-
hw/vfio/ccw.c                         |  25 ++-
hw/vfio/container-base.c              |  14 +-
hw/vfio/container.c                   |  66 ++++---
hw/vfio/device.c                      | 192 +++++++++++++++++--
hw/vfio/igd.c                         |   8 +-
hw/vfio/iommufd.c                     |  35 ++--
hw/vfio/listener.c                    |  82 +++++---
hw/vfio/pci.c                         | 257 ++++++++++++++++----------
hw/vfio/pci.h                         |  12 +-
hw/vfio/platform.c                    |   6 +-
hw/vfio/region.c                      |  19 +-
hw/virtio/vhost-vdpa.c                |   2 +-
include/hw/vfio/vfio-container-base.h |  10 +-
include/hw/vfio/vfio-device.h         |  67 +++++++
include/qemu/error-report.h           |  14 ++
include/system/memory.h               |   4 +-
system/memory.c                       |   7 +-
18 files changed, 604 insertions(+), 235 deletions(-)
[PATCH v2 00/15] vfio: preparation for vfio-user
Posted by John Levon 7 months, 3 weeks ago
Hi, this series is against the vfio-next tree:
https://github.com/legoater/qemu/commits/vfio-next

The series contains patches to vfio to prepare for the vfio-user
implementation. A previous version of these patches can be found at
https://lore.kernel.org/all/20250409134814.478903-1-john.levon@nutanix.com/

The changes have been rebased on vfio-next, and include changes from previous
series code review comments.

An old version of the full vfio-user series can be found at
https://lore.kernel.org/all/7dd34008-e0f1-4eed-a77e-55b1f68fbe69@redhat.com/T/
("[PATCH v8 00/28] vfio-user client"). Please see that series for justification
and context.

thanks
john

John Levon (15):
  vfio: add vfio_prepare_device()
  vfio: add vfio_unprepare_device()
  vfio: add vfio_attach_device_by_iommu_type()
  vfio: add vfio_device_get_irq_info() helper
  vfio: consistently handle return value for helpers
  include/qemu: add strread/writeerror()
  vfio: add vfio_pci_config_space_read/write()
  vfio: add unmap_all flag to DMA unmap callback
  vfio: implement unmap all for DMA unmap callbacks
  vfio: add device IO ops vector
  vfio: add region info cache
  vfio: add read/write to device IO ops vector
  vfio: add vfio-pci-base class
  vfio/container: pass listener_begin/commit callbacks
  vfio/container: pass MemoryRegion to DMA operations

 hw/vfio/ap.c                          |  19 +-
 hw/vfio/ccw.c                         |  25 ++-
 hw/vfio/container-base.c              |  14 +-
 hw/vfio/container.c                   |  66 ++++---
 hw/vfio/device.c                      | 192 +++++++++++++++++--
 hw/vfio/igd.c                         |   8 +-
 hw/vfio/iommufd.c                     |  35 ++--
 hw/vfio/listener.c                    |  82 +++++---
 hw/vfio/pci.c                         | 257 ++++++++++++++++----------
 hw/vfio/pci.h                         |  12 +-
 hw/vfio/platform.c                    |   6 +-
 hw/vfio/region.c                      |  19 +-
 hw/virtio/vhost-vdpa.c                |   2 +-
 include/hw/vfio/vfio-container-base.h |  10 +-
 include/hw/vfio/vfio-device.h         |  67 +++++++
 include/qemu/error-report.h           |  14 ++
 include/system/memory.h               |   4 +-
 system/memory.c                       |   7 +-
 18 files changed, 604 insertions(+), 235 deletions(-)

-- 
2.43.0
Re: [PATCH v2 00/15] vfio: preparation for vfio-user
Posted by Cédric Le Goater 7 months, 2 weeks ago
Hello John,

On 4/30/25 21:39, John Levon wrote:
> Hi, this series is against the vfio-next tree:
> https://github.com/legoater/qemu/commits/vfio-next
> 
> The series contains patches to vfio to prepare for the vfio-user
> implementation. A previous version of these patches can be found at
> https://lore.kernel.org/all/20250409134814.478903-1-john.levon@nutanix.com/
> 
> The changes have been rebased on vfio-next, and include changes from previous
> series code review comments.
> 
> An old version of the full vfio-user series can be found at
> https://lore.kernel.org/all/7dd34008-e0f1-4eed-a77e-55b1f68fbe69@redhat.com/T/
> ("[PATCH v8 00/28] vfio-user client"). Please see that series for justification
> and context.

We are nearly there. Please address the little issues in v3, the
build breakage being the most important. Last patch is not under
the VFIO jurisdiction though.


Thanks,

C.






  
> thanks
> john
> 
> John Levon (15):
>    vfio: add vfio_prepare_device()
>    vfio: add vfio_unprepare_device()
>    vfio: add vfio_attach_device_by_iommu_type()
>    vfio: add vfio_device_get_irq_info() helper
>    vfio: consistently handle return value for helpers
>    include/qemu: add strread/writeerror()
>    vfio: add vfio_pci_config_space_read/write()
>    vfio: add unmap_all flag to DMA unmap callback
>    vfio: implement unmap all for DMA unmap callbacks
>    vfio: add device IO ops vector
>    vfio: add region info cache
>    vfio: add read/write to device IO ops vector
>    vfio: add vfio-pci-base class
>    vfio/container: pass listener_begin/commit callbacks
>    vfio/container: pass MemoryRegion to DMA operations
> 
>   hw/vfio/ap.c                          |  19 +-
>   hw/vfio/ccw.c                         |  25 ++-
>   hw/vfio/container-base.c              |  14 +-
>   hw/vfio/container.c                   |  66 ++++---
>   hw/vfio/device.c                      | 192 +++++++++++++++++--
>   hw/vfio/igd.c                         |   8 +-
>   hw/vfio/iommufd.c                     |  35 ++--
>   hw/vfio/listener.c                    |  82 +++++---
>   hw/vfio/pci.c                         | 257 ++++++++++++++++----------
>   hw/vfio/pci.h                         |  12 +-
>   hw/vfio/platform.c                    |   6 +-
>   hw/vfio/region.c                      |  19 +-
>   hw/virtio/vhost-vdpa.c                |   2 +-
>   include/hw/vfio/vfio-container-base.h |  10 +-
>   include/hw/vfio/vfio-device.h         |  67 +++++++
>   include/qemu/error-report.h           |  14 ++
>   include/system/memory.h               |   4 +-
>   system/memory.c                       |   7 +-
>   18 files changed, 604 insertions(+), 235 deletions(-)
>