qemu-devel.nongnu.org archive mirror
 help / color / mirror / Atom feed
From: "Alex Bennée" <alex.bennee@linaro.org>
To: qemu-devel@nongnu.org
Cc: "Gerd Hoffmann" <kraxel@redhat.com>,
	"Mathieu Poirier" <mathieu.poirier@linaro.org>,
	"Kevin Wolf" <kwolf@redhat.com>,
	"Mark Cave-Ayland" <mark.cave-ayland@ilande.co.uk>,
	"Jason Wang" <jasowang@redhat.com>,
	"Erik Schilling" <erik.schilling@linaro.org>,
	"Eric Blake" <eblake@redhat.com>, "Fam Zheng" <fam@euphon.net>,
	"Marc-André Lureau" <marcandre.lureau@redhat.com>,
	"Eduardo Habkost" <eduardo@habkost.net>,
	virtio-fs@redhat.com, "Hanna Reitz" <hreitz@redhat.com>,
	"Alex Bennée" <alex.bennee@linaro.org>,
	"Manos Pitsidianakis" <manos.pitsidianakis@linaro.org>,
	"Daniel P. Berrangé" <berrange@redhat.com>,
	qemu-block@nongnu.org, "Markus Armbruster" <armbru@redhat.com>,
	"Gonglei (Arei)" <arei.gonglei@huawei.com>,
	"Michael S. Tsirkin" <mst@redhat.com>,
	"Raphael Norwitz" <raphael.norwitz@nutanix.com>,
	"Paolo Bonzini" <pbonzini@redhat.com>,
	"Viresh Kumar" <viresh.kumar@linaro.org>,
	"Stefan Hajnoczi" <stefanha@redhat.com>
Subject: [PATCH v9 00/11] virtio: cleanup vhost-user-generic and reduce c&p + vhost-user-input
Date: Thu,  4 Jan 2024 21:09:34 +0000	[thread overview]
Message-ID: <20240104210945.1223134-1-alex.bennee@linaro.org> (raw)

A lot of our vhost-user stubs are large chunks of boilerplate that do
(mostly) the same thing. This series continues the cleanups by
splitting the vhost-user-base and vhost-user-generic implementations.
After adding a new vq_size property the rng, gpio and i2c vhost-user
devices become simple specialisations of the common base defining the
ID, number of queues and potentially the config handling.

I've also added Manos' vhost-user-sound and Leo's vhost-user-input
stubs which are based on the same base.

Changes
-------

v9
  - re-base and fix conflicts
  - add Leo's vhost-user-input series

v8
  - scrubbed errant Message-Id

v7
  - various review comments
  - move to async teardown (fixes CI failure)

v6
  - re-base to current master
  - make vhost-user-device abstract
  - mention abstractness in docs

v5
  - addressing comments and tags
  - improved the docs

v4
  - dropped the F_TRANSPORT work for another series
  - added vhost-user-sound

Alex Bennée (6):
  virtio: split into vhost-user-base and vhost-user-device
  hw/virtio: convert vhost-user-base to async shutdown
  hw/virtio: derive vhost-user-rng from vhost-user-base
  hw/virtio: derive vhost-user-gpio from vhost-user-base
  hw/virtio: derive vhost-user-i2c from vhost-user-base
  docs/system: add a basic enumeration of vhost-user devices

Leo Yan (4):
  hw/virtio: Support set_config() callback in vhost-user-base
  docs/system: Add vhost-user-input documentation
  hw/virtio: Move vhost-user-input into virtio folder
  hw/virtio: derive vhost-user-input from vhost-user-base

Manos Pitsidianakis (1):
  hw/virtio: add vhost-user-snd and virtio-snd-pci devices

 MAINTAINERS                                   |  16 +-
 docs/system/device-emulation.rst              |   1 +
 docs/system/devices/vhost-user-input.rst      |  45 ++
 docs/system/devices/vhost-user-rng.rst        |   2 +
 docs/system/devices/vhost-user.rst            |  72 +++-
 ...{vhost-user-device.h => vhost-user-base.h} |  21 +-
 include/hw/virtio/vhost-user-gpio.h           |  25 +-
 include/hw/virtio/vhost-user-i2c.h            |  14 +-
 include/hw/virtio/vhost-user-rng.h            |  13 +-
 include/hw/virtio/vhost-user-snd.h            |  24 ++
 include/hw/virtio/virtio-input.h              |   6 +-
 hw/input/vhost-user-input.c                   | 136 ------
 hw/virtio/vhost-user-base.c                   | 371 ++++++++++++++++
 hw/virtio/vhost-user-device-pci.c             |  13 +-
 hw/virtio/vhost-user-device.c                 | 338 +--------------
 hw/virtio/vhost-user-gpio.c                   | 407 +-----------------
 hw/virtio/vhost-user-i2c.c                    | 272 +-----------
 hw/virtio/vhost-user-input-pci.c              |   3 -
 hw/virtio/vhost-user-input.c                  |  58 +++
 hw/virtio/vhost-user-rng.c                    | 294 +------------
 hw/virtio/vhost-user-snd-pci.c                |  75 ++++
 hw/virtio/vhost-user-snd.c                    |  67 +++
 hw/input/meson.build                          |   1 -
 hw/virtio/Kconfig                             |   5 +
 hw/virtio/meson.build                         |  27 +-
 25 files changed, 850 insertions(+), 1456 deletions(-)
 create mode 100644 docs/system/devices/vhost-user-input.rst
 rename include/hw/virtio/{vhost-user-device.h => vhost-user-base.h} (71%)
 create mode 100644 include/hw/virtio/vhost-user-snd.h
 delete mode 100644 hw/input/vhost-user-input.c
 create mode 100644 hw/virtio/vhost-user-base.c
 create mode 100644 hw/virtio/vhost-user-input.c
 create mode 100644 hw/virtio/vhost-user-snd-pci.c
 create mode 100644 hw/virtio/vhost-user-snd.c

-- 
2.39.2



             reply	other threads:[~2024-01-04 21:10 UTC|newest]

Thread overview: 16+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2024-01-04 21:09 Alex Bennée [this message]
2024-01-04 21:09 ` [PATCH v9 01/11] virtio: split into vhost-user-base and vhost-user-device Alex Bennée
2024-01-05  9:49   ` Philippe Mathieu-Daudé
2024-01-05 11:37     ` Alex Bennée
2024-01-04 21:09 ` [PATCH v9 02/11] hw/virtio: convert vhost-user-base to async shutdown Alex Bennée
2024-01-04 21:09 ` [PATCH v9 03/11] hw/virtio: derive vhost-user-rng from vhost-user-base Alex Bennée
2024-01-04 21:09 ` [PATCH v9 04/11] hw/virtio: derive vhost-user-gpio " Alex Bennée
2024-01-04 21:09 ` [PATCH v9 05/11] hw/virtio: derive vhost-user-i2c " Alex Bennée
2024-01-04 21:09 ` [PATCH v9 06/11] hw/virtio: add vhost-user-snd and virtio-snd-pci devices Alex Bennée
2024-01-04 21:09 ` [PATCH v9 07/11] docs/system: add a basic enumeration of vhost-user devices Alex Bennée
2024-01-04 21:09 ` [PATCH v9 08/11] hw/virtio: Support set_config() callback in vhost-user-base Alex Bennée
2024-01-04 21:09 ` [PATCH v9 09/11] docs/system: Add vhost-user-input documentation Alex Bennée
2024-01-04 21:09 ` [PATCH v9 10/11] hw/virtio: Move vhost-user-input into virtio folder Alex Bennée
2024-01-04 21:09 ` [PATCH v9 11/11] hw/virtio: derive vhost-user-input from vhost-user-base Alex Bennée
2024-01-10 10:55 ` [PATCH v9 00/11] virtio: cleanup vhost-user-generic and reduce c&p + vhost-user-input Alex Bennée
2024-01-10 16:12   ` Michael S. Tsirkin

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=20240104210945.1223134-1-alex.bennee@linaro.org \
    --to=alex.bennee@linaro.org \
    --cc=arei.gonglei@huawei.com \
    --cc=armbru@redhat.com \
    --cc=berrange@redhat.com \
    --cc=eblake@redhat.com \
    --cc=eduardo@habkost.net \
    --cc=erik.schilling@linaro.org \
    --cc=fam@euphon.net \
    --cc=hreitz@redhat.com \
    --cc=jasowang@redhat.com \
    --cc=kraxel@redhat.com \
    --cc=kwolf@redhat.com \
    --cc=manos.pitsidianakis@linaro.org \
    --cc=marcandre.lureau@redhat.com \
    --cc=mark.cave-ayland@ilande.co.uk \
    --cc=mathieu.poirier@linaro.org \
    --cc=mst@redhat.com \
    --cc=pbonzini@redhat.com \
    --cc=qemu-block@nongnu.org \
    --cc=qemu-devel@nongnu.org \
    --cc=raphael.norwitz@nutanix.com \
    --cc=stefanha@redhat.com \
    --cc=viresh.kumar@linaro.org \
    --cc=virtio-fs@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).