qemu-devel.nongnu.org archive mirror
 help / color / mirror / Atom feed
From: Jagannathan Raman <jag.raman@oracle.com>
To: qemu-devel@nongnu.org
Cc: stefanha@redhat.com, mst@redhat.com, alex.williamson@redhat.com,
	f4bug@amsat.org, pbonzini@redhat.com,
	marcandre.lureau@redhat.com, thuth@redhat.com, bleal@redhat.com,
	berrange@redhat.com, peter.maydell@linaro.org,
	eduardo@habkost.net, marcel.apfelbaum@gmail.com,
	eblake@redhat.com, armbru@redhat.com, quintela@redhat.com,
	dgilbert@redhat.com, imammedo@redhat.com, peterx@redhat.com,
	john.levon@nutanix.com, thanos.makatos@nutanix.com,
	elena.ufimtseva@oracle.com, john.g.johnson@oracle.com,
	kanth.ghatraju@oracle.com, jag.raman@oracle.com
Subject: [PATCH v11 00/14] vfio-user server in QEMU
Date: Fri, 10 Jun 2022 15:50:27 -0400	[thread overview]
Message-ID: <cover.1654889541.git.jag.raman@oracle.com> (raw)

Hi,

This is v11 of the server side changes to enable vfio-user in QEMU.

Thank you for reviewing and sharing your feedback for the previous
revision. We have addressed your comments in this revision.

We made the following changes in this series:
[PATCH v11 13/14] vfio-user: handle device interrupts
  - Added msi_set_irq_state() and msix_set_irq_state() to mask
    and unmask individual MSI(x) vectors
  - Implement callbacks to handle the MASK/UNMASK actions
    initiated by SET_IRQS message
  - vfu_object_set_bus_irq() sets the maximum number of IRQS
    to max BDF. This only affects devices using INTx - allows
    multiple devices to use INTx

Thank you very much!

Jagannathan Raman (14):
  qdev: unplug blocker for devices
  remote/machine: add HotplugHandler for remote machine
  remote/machine: add vfio-user property
  vfio-user: build library
  vfio-user: define vfio-user-server object
  vfio-user: instantiate vfio-user context
  vfio-user: find and init PCI device
  vfio-user: run vfio-user context
  vfio-user: handle PCI config space accesses
  vfio-user: IOMMU support for remote device
  vfio-user: handle DMA mappings
  vfio-user: handle PCI BAR accesses
  vfio-user: handle device interrupts
  vfio-user: handle reset of remote device

 configure                               |  17 +
 meson.build                             |  23 +-
 qapi/misc.json                          |  31 +
 qapi/qom.json                           |  20 +-
 include/exec/memory.h                   |   3 +
 include/hw/pci/msi.h                    |   1 +
 include/hw/pci/msix.h                   |   1 +
 include/hw/pci/pci.h                    |  13 +
 include/hw/qdev-core.h                  |  29 +
 include/hw/remote/iommu.h               |  40 +
 include/hw/remote/machine.h             |   4 +
 include/hw/remote/vfio-user-obj.h       |   6 +
 hw/core/qdev.c                          |  24 +
 hw/pci/msi.c                            |  48 +-
 hw/pci/msix.c                           |  35 +-
 hw/pci/pci.c                            |  13 +
 hw/remote/iommu.c                       | 131 ++++
 hw/remote/machine.c                     |  88 ++-
 hw/remote/vfio-user-obj.c               | 958 ++++++++++++++++++++++++
 softmmu/physmem.c                       |   4 +-
 softmmu/qdev-monitor.c                  |   4 +
 stubs/vfio-user-obj.c                   |   6 +
 tests/qtest/fuzz/generic_fuzz.c         |   9 +-
 .gitlab-ci.d/buildtest.yml              |   1 +
 .gitmodules                             |   3 +
 Kconfig.host                            |   4 +
 MAINTAINERS                             |   5 +
 hw/remote/Kconfig                       |   4 +
 hw/remote/meson.build                   |   4 +
 hw/remote/trace-events                  |  11 +
 meson_options.txt                       |   2 +
 stubs/meson.build                       |   1 +
 subprojects/libvfio-user                |   1 +
 tests/docker/dockerfiles/centos8.docker |   2 +
 34 files changed, 1527 insertions(+), 19 deletions(-)
 create mode 100644 include/hw/remote/iommu.h
 create mode 100644 include/hw/remote/vfio-user-obj.h
 create mode 100644 hw/remote/iommu.c
 create mode 100644 hw/remote/vfio-user-obj.c
 create mode 100644 stubs/vfio-user-obj.c
 create mode 160000 subprojects/libvfio-user

-- 
2.20.1



             reply	other threads:[~2022-06-10 19:53 UTC|newest]

Thread overview: 16+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2022-06-10 19:50 Jagannathan Raman [this message]
2022-06-10 19:50 ` [PATCH v11 01/14] qdev: unplug blocker for devices Jagannathan Raman
2022-06-10 19:50 ` [PATCH v11 02/14] remote/machine: add HotplugHandler for remote machine Jagannathan Raman
2022-06-10 19:50 ` [PATCH v11 03/14] remote/machine: add vfio-user property Jagannathan Raman
2022-06-10 19:50 ` [PATCH v11 04/14] vfio-user: build library Jagannathan Raman
2022-06-10 19:50 ` [PATCH v11 05/14] vfio-user: define vfio-user-server object Jagannathan Raman
2022-06-10 19:50 ` [PATCH v11 06/14] vfio-user: instantiate vfio-user context Jagannathan Raman
2022-06-10 19:50 ` [PATCH v11 07/14] vfio-user: find and init PCI device Jagannathan Raman
2022-06-10 19:50 ` [PATCH v11 08/14] vfio-user: run vfio-user context Jagannathan Raman
2022-06-10 19:50 ` [PATCH v11 09/14] vfio-user: handle PCI config space accesses Jagannathan Raman
2022-06-10 19:50 ` [PATCH v11 10/14] vfio-user: IOMMU support for remote device Jagannathan Raman
2022-06-10 19:50 ` [PATCH v11 11/14] vfio-user: handle DMA mappings Jagannathan Raman
2022-06-10 19:50 ` [PATCH v11 12/14] vfio-user: handle PCI BAR accesses Jagannathan Raman
2022-06-10 19:50 ` [PATCH v11 13/14] vfio-user: handle device interrupts Jagannathan Raman
2022-06-13 15:30   ` Stefan Hajnoczi
2022-06-10 19:50 ` [PATCH v11 14/14] vfio-user: handle reset of remote device Jagannathan Raman

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=cover.1654889541.git.jag.raman@oracle.com \
    --to=jag.raman@oracle.com \
    --cc=alex.williamson@redhat.com \
    --cc=armbru@redhat.com \
    --cc=berrange@redhat.com \
    --cc=bleal@redhat.com \
    --cc=dgilbert@redhat.com \
    --cc=eblake@redhat.com \
    --cc=eduardo@habkost.net \
    --cc=elena.ufimtseva@oracle.com \
    --cc=f4bug@amsat.org \
    --cc=imammedo@redhat.com \
    --cc=john.g.johnson@oracle.com \
    --cc=john.levon@nutanix.com \
    --cc=kanth.ghatraju@oracle.com \
    --cc=marcandre.lureau@redhat.com \
    --cc=marcel.apfelbaum@gmail.com \
    --cc=mst@redhat.com \
    --cc=pbonzini@redhat.com \
    --cc=peter.maydell@linaro.org \
    --cc=peterx@redhat.com \
    --cc=qemu-devel@nongnu.org \
    --cc=quintela@redhat.com \
    --cc=stefanha@redhat.com \
    --cc=thanos.makatos@nutanix.com \
    --cc=thuth@redhat.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 a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).