Message ID | 20240104210945.1223134-1-alex.bennee@linaro.org |
---|---|
Headers | show |
Series | virtio: cleanup vhost-user-generic and reduce c&p + vhost-user-input | expand |
Alex Bennée <alex.bennee@linaro.org> writes: > 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. Ping MST, Are you waiting for anything else before pulling this into your queue? > > 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
On Wed, Jan 10, 2024 at 10:55:11AM +0000, Alex Bennée wrote: > Alex Bennée <alex.bennee@linaro.org> writes: > > > 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. > > Ping MST, > > Are you waiting for anything else before pulling this into your queue? Tagged, thanks! > > > > 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 > > -- > Alex Bennée > Virtualisation Tech Lead @ Linaro