[PATCH v4 00/23] vhost refactoring and fixes

Vladimir Sementsov-Ogievskiy posted 23 patches 2 weeks, 6 days ago
Patches applied successfully (tree, apply log)
git fetch https://github.com/patchew-project/qemu tags/patchew/20260119185228.203296-1-vsementsov@yandex-team.ru
Maintainers: "Michael S. Tsirkin" <mst@redhat.com>, Stefano Garzarella <sgarzare@redhat.com>, "Gonglei (Arei)" <arei.gonglei@huawei.com>, zhenwei pi <zhenwei.pi@linux.dev>, Kevin Wolf <kwolf@redhat.com>, Hanna Reitz <hreitz@redhat.com>, Raphael Norwitz <raphael@enfabrica.net>, "Marc-André Lureau" <marcandre.lureau@redhat.com>, Jason Wang <jasowang@redhat.com>, Cornelia Huck <cohuck@redhat.com>, Halil Pasic <pasic@linux.ibm.com>, Eric Farman <farman@linux.ibm.com>, Richard Henderson <richard.henderson@linaro.org>, Ilya Leoshkevich <iii@linux.ibm.com>, David Hildenbrand <david@kernel.org>, Christian Borntraeger <borntraeger@linux.ibm.com>, Matthew Rosato <mjrosato@linux.ibm.com>, Thomas Huth <thuth@redhat.com>, Paolo Bonzini <pbonzini@redhat.com>, Fam Zheng <fam@euphon.net>, "Alex Bennée" <alex.bennee@linaro.org>, Eric Blake <eblake@redhat.com>, Markus Armbruster <armbru@redhat.com>
There is a newer version of this series
backends/cryptodev-vhost.c     |   9 +-
hw/block/trace-events          |  10 ++
hw/block/vhost-user-blk.c      |  20 ++-
hw/display/vhost-user-gpu.c    |  11 +-
hw/net/vhost_net.c             |  35 ++---
hw/s390x/virtio-ccw.c          |  34 ++---
hw/scsi/vhost-scsi.c           |   1 -
hw/scsi/vhost-user-scsi.c      |   1 -
hw/virtio/trace-events         |  16 +-
hw/virtio/vdpa-dev.c           |   3 +-
hw/virtio/vhost-user-base.c    |   8 +-
hw/virtio/vhost-user.c         | 258 ++++++++++++++++++++++-----------
hw/virtio/vhost.c              | 238 +++++++++++++++---------------
hw/virtio/virtio-bus.c         |  18 +--
hw/virtio/virtio-hmp-cmds.c    |   2 -
hw/virtio/virtio-mmio.c        |  41 +-----
hw/virtio/virtio-pci.c         |  34 +----
hw/virtio/virtio-qmp.c         |  12 +-
hw/virtio/virtio.c             |  48 +++---
include/hw/virtio/vhost-user.h |   3 +
include/hw/virtio/vhost.h      |  63 +++++---
include/hw/virtio/virtio-pci.h |   3 -
include/hw/virtio/virtio.h     |  16 +-
net/vhost-vdpa.c               |   7 +-
qapi/virtio.json               |   3 -
25 files changed, 487 insertions(+), 407 deletions(-)
[PATCH v4 00/23] vhost refactoring and fixes
Posted by Vladimir Sementsov-Ogievskiy 2 weeks, 6 days ago
Hi all. That's a preparation for vhost-user-blk backend-transfer
feature.

v4: rebase on master, and follow Michael's comments:
04: cover one more (new) dev->protocol-features access, keep r-bs
06: add r-b by Daniil
07: new
08: support virtio-ccw, drop r-b
11: rebase on changed code in master, drop r-bs
15: rebase on changed code in master, drop r-bs
16: rebase on changed code in master, drop r-bs
21: add macro VHOST_USER_CASE, drop r-bs
23: s/virtque/virtqueue/, keep r-bs

I also have dropped
 [PATCH v3 18/23] vhost: introduce check_memslots() helper
as it was doubtful, and I'm not sure now, do I really need
it, and should it be done this way. Will look, when reworking
actual vhost-user-blk backend-transfer series on top of this.

And can't keep t-b of v3, I think.

Vladimir Sementsov-Ogievskiy (23):
  vhost-user: rework enabling vrings
  vhost: drop backend_features field
  vhost-user: introduce vhost_user_has_protocol_feature() helper
  vhost: move protocol_features to vhost_user
  vhost-user-gpu: drop code duplication
  vhost: make vhost_dev.features private
  virtio-ccw: virtio_ccw_set_guest_notifier(): fix failure path
  virtio: move common part of _set_guest_notifier to generic code
  virtio: drop *_set_guest_notifier_fd_handler() helpers
  vhost-user: keep QIOChannelSocket for backend channel
  vhost: vhost_virtqueue_start(): fix failure path
  vhost: make vhost_memory_unmap() null-safe
  vhost: simplify calls to vhost_memory_unmap()
  vhost: move vrings mapping to the top of vhost_virtqueue_start()
  vhost: vhost_virtqueue_start(): drop extra local variables
  vhost: final refactoring of vhost vrings map/unmap
  vhost: simplify vhost_dev_init() error-path
  vhost: move busyloop timeout initialization to vhost_virtqueue_init()
  vhost: vhost_dev_init(): simplify features initialization
  hw/virtio/virtio-bus: refactor virtio_bus_set_host_notifier()
  vhost-user: make trace events more readable
  vhost-user-blk: add some useful trace-points
  vhost: add some useful trace-points

 backends/cryptodev-vhost.c     |   9 +-
 hw/block/trace-events          |  10 ++
 hw/block/vhost-user-blk.c      |  20 ++-
 hw/display/vhost-user-gpu.c    |  11 +-
 hw/net/vhost_net.c             |  35 ++---
 hw/s390x/virtio-ccw.c          |  34 ++---
 hw/scsi/vhost-scsi.c           |   1 -
 hw/scsi/vhost-user-scsi.c      |   1 -
 hw/virtio/trace-events         |  16 +-
 hw/virtio/vdpa-dev.c           |   3 +-
 hw/virtio/vhost-user-base.c    |   8 +-
 hw/virtio/vhost-user.c         | 258 ++++++++++++++++++++++-----------
 hw/virtio/vhost.c              | 238 +++++++++++++++---------------
 hw/virtio/virtio-bus.c         |  18 +--
 hw/virtio/virtio-hmp-cmds.c    |   2 -
 hw/virtio/virtio-mmio.c        |  41 +-----
 hw/virtio/virtio-pci.c         |  34 +----
 hw/virtio/virtio-qmp.c         |  12 +-
 hw/virtio/virtio.c             |  48 +++---
 include/hw/virtio/vhost-user.h |   3 +
 include/hw/virtio/vhost.h      |  63 +++++---
 include/hw/virtio/virtio-pci.h |   3 -
 include/hw/virtio/virtio.h     |  16 +-
 net/vhost-vdpa.c               |   7 +-
 qapi/virtio.json               |   3 -
 25 files changed, 487 insertions(+), 407 deletions(-)

-- 
2.52.0