[Qemu-devel] [PATCH 0/5] vfio/quirks: ioeventfd support

Alex Williamson posted 5 patches 7 years, 7 months ago
Patches applied successfully (tree, apply log)
git fetch https://github.com/patchew-project/qemu tags/patchew/20180228201837.26629.3346.stgit@gimli.home
Test checkpatch passed
Test docker-build@min-glib passed
Test docker-mingw@fedora passed
Test docker-quick@centos6 passed
Test ppcbe passed
Test ppcle passed
Test s390x passed
There is a newer version of this series
hw/vfio/pci-quirks.c       |  255 +++++++++++++++++++++++++++++++++++++++-----
hw/vfio/pci.c              |    2
hw/vfio/pci.h              |   17 +++
linux-headers/linux/vfio.h |   27 +++++
4 files changed, 272 insertions(+), 29 deletions(-)
[Qemu-devel] [PATCH 0/5] vfio/quirks: ioeventfd support
Posted by Alex Williamson 7 years, 7 months ago
This is the QEMU counterpart to https://lkml.org/lkml/2018/2/28/1222

As described in the third patch, we have a use case for taking
advantage of existing KVM ioeventfd support for accelerating the
MSI-ACK behavior of NVIDIA GPUs.  This series adds generic
infrastructure within vfio quirks for making use of ioeventfds and
specifically enables it for this purpose.  The first three patches
provide a performance improvement on their own and do not depend on
the additional acceleration added by the remainder of the patches to
be worthwhile.  The Linux header update in patch 4 is not intended
to be a full refresh, the kernel API is not yet upstream, this is for
testing and review purposes.  The intention would be to commit the
series in separate chunks, 1-3 once we have review consensus, 4-5 as
RFC until the kernel API is upstream.

RFC->v1:
 * Cap the number of dynamically added ioeventfds to 10 such that
   pathological driver behavior cannot consume too many file handles.
 * Added a reset hook and cleanup mechanism to drop dynamically added
   ioeventfds on device reset.
 * Additional comments and removed info_report.
 * Folded ioeventfd infrastructure patch into usage patch, fail to
   stand on its own without setup, which requires consumers.

Thanks,

Alex

---

Alex Williamson (5):
      vfio/quirks: Add common quirk alloc helper
      vfio/quirks: Add quirk reset callback
      vfio/quirks: ioeventfd quirk acceleration
      vfio: Update linux header
      vfio/quirks: Enable ioeventfd quirks to be handled by vfio directly


 hw/vfio/pci-quirks.c       |  255 +++++++++++++++++++++++++++++++++++++++-----
 hw/vfio/pci.c              |    2 
 hw/vfio/pci.h              |   17 +++
 linux-headers/linux/vfio.h |   27 +++++
 4 files changed, 272 insertions(+), 29 deletions(-)

Re: [Qemu-devel] [PATCH 0/5] vfio/quirks: ioeventfd support
Posted by Auger Eric 7 years, 7 months ago
Hi Alex,
On 28/02/18 21:45, Alex Williamson wrote:
> This is the QEMU counterpart to https://lkml.org/lkml/2018/2/28/1222
> 
> As described in the third patch, we have a use case for taking
> advantage of existing KVM ioeventfd support for accelerating the
> MSI-ACK behavior of NVIDIA GPUs.  This series adds generic
> infrastructure within vfio quirks for making use of ioeventfds and
> specifically enables it for this purpose.  The first three patches
> provide a performance improvement on their own and do not depend on
> the additional acceleration added by the remainder of the patches to
> be worthwhile.  The Linux header update in patch 4 is not intended
> to be a full refresh, the kernel API is not yet upstream, this is for
> testing and review purposes.  The intention would be to commit the
> series in separate chunks, 1-3 once we have review consensus, 4-5 as
> RFC until the kernel API is upstream.
> 
> RFC->v1:
>  * Cap the number of dynamically added ioeventfds to 10 such that
>    pathological driver behavior cannot consume too many file handles.
>  * Added a reset hook and cleanup mechanism to drop dynamically added
>    ioeventfds on device reset.
>  * Additional comments and removed info_report.
>  * Folded ioeventfd infrastructure patch into usage patch, fail to
>    stand on its own without setup, which requires consumers.
> 
> Thanks,
> 
> Alex
> 
> ---
> 
> Alex Williamson (5):
>       vfio/quirks: Add common quirk alloc helper
>       vfio/quirks: Add quirk reset callback
>       vfio/quirks: ioeventfd quirk acceleration
>       vfio: Update linux header
>       vfio/quirks: Enable ioeventfd quirks to be handled by vfio directly
> 
> 
>  hw/vfio/pci-quirks.c       |  255 +++++++++++++++++++++++++++++++++++++++-----
>  hw/vfio/pci.c              |    2 
>  hw/vfio/pci.h              |   17 +++
>  linux-headers/linux/vfio.h |   27 +++++
>  4 files changed, 272 insertions(+), 29 deletions(-)
> 
For all patches except the yet partial linux header update,

Reviewed-by: Eric Auger <eric.auger@redhat.com>

Thanks

Eric