[PATCH v3 0/4] virtio: Refactor vhost input stub

Leo Yan posted 4 patches 1 year ago
Patches applied successfully (tree, apply log)
git fetch https://github.com/patchew-project/qemu tags/patchew/20231120043721.50555-1-leo.yan@linaro.org
Maintainers: Gerd Hoffmann <kraxel@redhat.com>, "Michael S. Tsirkin" <mst@redhat.com>, "Alex Bennée" <alex.bennee@linaro.org>
MAINTAINERS                              |   3 +-
docs/system/device-emulation.rst         |   1 +
docs/system/devices/vhost-user-input.rst |  45 ++++++++
docs/system/devices/vhost-user.rst       |   4 +-
hw/input/meson.build                     |   1 -
hw/input/vhost-user-input.c              | 136 -----------------------
hw/virtio/meson.build                    |   4 +-
hw/virtio/vhost-user-base.c              |  17 +++
hw/virtio/vhost-user-input-pci.c         |   3 -
hw/virtio/vhost-user-input.c             |  58 ++++++++++
include/hw/virtio/virtio-input.h         |   6 +-
11 files changed, 132 insertions(+), 146 deletions(-)
create mode 100644 docs/system/devices/vhost-user-input.rst
delete mode 100644 hw/input/vhost-user-input.c
create mode 100644 hw/virtio/vhost-user-input.c
[PATCH v3 0/4] virtio: Refactor vhost input stub
Posted by Leo Yan 1 year ago
This series is to refactor vhost stub vhost-user-input.

Since vhost input stub requires set_config() callback for communication
event configurations between the backend and the guest, patch 01 is a
preparison for support set_config() callback in vhost-user-base.

The patch 02 is to add documentation for vhost-user-input.

The patch 03 is to move virtio input stub from the input folder to the
virtio folder.

The patch 04 derives vhost-user-input from vhost-user-base.  We reuse
the common code from vhhost-user-base as possible and the input stub is
simplized significantly.

This patch set has been tested with the backend daemon:

  # ./build/contrib/vhost-user-input/vhost-user-input \
		     -p /dev/input/event20 -s /tmp/input.sock

The series is based on "[PATCH v8 0/7] virtio: cleanup
vhost-user-generic and reduce c&p" which introduces vhost-user-base.
Based-on: <20231107180752.3458672-1-alex.bennee@linaro.org>

Changes from v2:
- Created reference for shared memory object and updated
  vhost-user-input.rst respectively. (Marc-André)

Changes from v1:
- Fixed typo in vhost-user-input.rst.
- Updated MAINTAINERS for new added input document and
  changing folder for vhost-user-input.c. (Manos)


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

 MAINTAINERS                              |   3 +-
 docs/system/device-emulation.rst         |   1 +
 docs/system/devices/vhost-user-input.rst |  45 ++++++++
 docs/system/devices/vhost-user.rst       |   4 +-
 hw/input/meson.build                     |   1 -
 hw/input/vhost-user-input.c              | 136 -----------------------
 hw/virtio/meson.build                    |   4 +-
 hw/virtio/vhost-user-base.c              |  17 +++
 hw/virtio/vhost-user-input-pci.c         |   3 -
 hw/virtio/vhost-user-input.c             |  58 ++++++++++
 include/hw/virtio/virtio-input.h         |   6 +-
 11 files changed, 132 insertions(+), 146 deletions(-)
 create mode 100644 docs/system/devices/vhost-user-input.rst
 delete mode 100644 hw/input/vhost-user-input.c
 create mode 100644 hw/virtio/vhost-user-input.c

-- 
2.39.2


Re: [PATCH v3 0/4] virtio: Refactor vhost input stub
Posted by Michael S. Tsirkin 11 months, 1 week ago
On Mon, Nov 20, 2023 at 12:37:17PM +0800, Leo Yan wrote:
> This series is to refactor vhost stub vhost-user-input.
> 
> Since vhost input stub requires set_config() callback for communication
> event configurations between the backend and the guest, patch 01 is a
> preparison for support set_config() callback in vhost-user-base.
> 
> The patch 02 is to add documentation for vhost-user-input.
> 
> The patch 03 is to move virtio input stub from the input folder to the
> virtio folder.

Thanks!
Now the release is out I'd like to apply this - can you please rebase on latest master and
repost?

> The patch 04 derives vhost-user-input from vhost-user-base.  We reuse
> the common code from vhhost-user-base as possible and the input stub is
> simplized significantly.
> 
> This patch set has been tested with the backend daemon:
> 
>   # ./build/contrib/vhost-user-input/vhost-user-input \
> 		     -p /dev/input/event20 -s /tmp/input.sock
> 
> The series is based on "[PATCH v8 0/7] virtio: cleanup
> vhost-user-generic and reduce c&p" which introduces vhost-user-base.
> Based-on: <20231107180752.3458672-1-alex.bennee@linaro.org>
> 
> Changes from v2:
> - Created reference for shared memory object and updated
>   vhost-user-input.rst respectively. (Marc-André)
> 
> Changes from v1:
> - Fixed typo in vhost-user-input.rst.
> - Updated MAINTAINERS for new added input document and
>   changing folder for vhost-user-input.c. (Manos)
> 
> 
> 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
> 
>  MAINTAINERS                              |   3 +-
>  docs/system/device-emulation.rst         |   1 +
>  docs/system/devices/vhost-user-input.rst |  45 ++++++++
>  docs/system/devices/vhost-user.rst       |   4 +-
>  hw/input/meson.build                     |   1 -
>  hw/input/vhost-user-input.c              | 136 -----------------------
>  hw/virtio/meson.build                    |   4 +-
>  hw/virtio/vhost-user-base.c              |  17 +++
>  hw/virtio/vhost-user-input-pci.c         |   3 -
>  hw/virtio/vhost-user-input.c             |  58 ++++++++++
>  include/hw/virtio/virtio-input.h         |   6 +-
>  11 files changed, 132 insertions(+), 146 deletions(-)
>  create mode 100644 docs/system/devices/vhost-user-input.rst
>  delete mode 100644 hw/input/vhost-user-input.c
>  create mode 100644 hw/virtio/vhost-user-input.c
> 
> -- 
> 2.39.2
Re: [PATCH v3 0/4] virtio: Refactor vhost input stub
Posted by Leo Yan 11 months ago
Hi Michael,

On Mon, Dec 25, 2023 at 11:06:35AM -0500, Michael S. Tsirkin wrote:
> On Mon, Nov 20, 2023 at 12:37:17PM +0800, Leo Yan wrote:
> > This series is to refactor vhost stub vhost-user-input.
> > 
> > Since vhost input stub requires set_config() callback for communication
> > event configurations between the backend and the guest, patch 01 is a
> > preparison for support set_config() callback in vhost-user-base.
> > 
> > The patch 02 is to add documentation for vhost-user-input.
> > 
> > The patch 03 is to move virtio input stub from the input folder to the
> > virtio folder.
> 
> Thanks!
> Now the release is out I'd like to apply this - can you please rebase on latest master and
> repost?

Sure.  But I found it's not this patch series causing merging conflict.

Since my patch series is based on Alex's patch series "virtio: cleanup
vhost-user-generic and reduce c&p" [1], when applying Alex's patch
series on the master branch, I found the confliction with below commeits:

  91208dd297 ("virtio: i2c: Check notifier helpers for VIRTIO_CONFIG_IRQ_IDX")
  298d4f892e ("vhost-user: fix the reconnect error")

@Alex, could you rebase the patch set "virtio: cleanup
vhost-user-generic and reduce c&p" and then I will resend my patch set?

Thanks,
Leo

[1] https://lore.kernel.org/qemu-devel/20231107180752.3458672-1-alex.bennee@linaro.org/

> > The patch 04 derives vhost-user-input from vhost-user-base.  We reuse
> > the common code from vhhost-user-base as possible and the input stub is
> > simplized significantly.
> > 
> > This patch set has been tested with the backend daemon:
> > 
> >   # ./build/contrib/vhost-user-input/vhost-user-input \
> > 		     -p /dev/input/event20 -s /tmp/input.sock
> > 
> > The series is based on "[PATCH v8 0/7] virtio: cleanup
> > vhost-user-generic and reduce c&p" which introduces vhost-user-base.
> > Based-on: <20231107180752.3458672-1-alex.bennee@linaro.org>
Re: [PATCH v3 0/4] virtio: Refactor vhost input stub
Posted by Alex Bennée 10 months, 4 weeks ago
Leo Yan <leo.yan@linaro.org> writes:

> Hi Michael,
>
> On Mon, Dec 25, 2023 at 11:06:35AM -0500, Michael S. Tsirkin wrote:
>> On Mon, Nov 20, 2023 at 12:37:17PM +0800, Leo Yan wrote:
>> > This series is to refactor vhost stub vhost-user-input.
>> > 
>> > Since vhost input stub requires set_config() callback for communication
>> > event configurations between the backend and the guest, patch 01 is a
>> > preparison for support set_config() callback in vhost-user-base.
>> > 
>> > The patch 02 is to add documentation for vhost-user-input.
>> > 
>> > The patch 03 is to move virtio input stub from the input folder to the
>> > virtio folder.
>> 
>> Thanks!
>> Now the release is out I'd like to apply this - can you please rebase on latest master and
>> repost?
>
> Sure.  But I found it's not this patch series causing merging conflict.
>
> Since my patch series is based on Alex's patch series "virtio: cleanup
> vhost-user-generic and reduce c&p" [1], when applying Alex's patch
> series on the master branch, I found the confliction with below commeits:
>
>   91208dd297 ("virtio: i2c: Check notifier helpers for VIRTIO_CONFIG_IRQ_IDX")
>   298d4f892e ("vhost-user: fix the reconnect error")
>
> @Alex, could you rebase the patch set "virtio: cleanup
> vhost-user-generic and reduce c&p" and then I will resend my patch set?
>
> Thanks,
> Leo
>
> [1] https://lore.kernel.org/qemu-devel/20231107180752.3458672-1-alex.bennee@linaro.org/
>
>> > The patch 04 derives vhost-user-input from vhost-user-base.  We reuse
>> > the common code from vhhost-user-base as possible and the input stub is
>> > simplized significantly.
>> > 
>> > This patch set has been tested with the backend daemon:
>> > 
>> >   # ./build/contrib/vhost-user-input/vhost-user-input \
>> > 		     -p /dev/input/event20 -s /tmp/input.sock
>> > 
>> > The series is based on "[PATCH v8 0/7] virtio: cleanup
>> > vhost-user-generic and reduce c&p" which introduces vhost-user-base.
>> > Based-on: <20231107180752.3458672-1-alex.bennee@linaro.org>

I'll fix up and include this series in my next posting. Hopefully by the
end of this week.

-- 
Alex Bennée
Virtualisation Tech Lead @ Linaro
Re: [PATCH v3 0/4] virtio: Refactor vhost input stub
Posted by Michael S. Tsirkin 1 year ago
On Mon, Nov 20, 2023 at 12:37:17PM +0800, Leo Yan wrote:
> This series is to refactor vhost stub vhost-user-input.

I tagged this. Given we are in freeze, this will me merged
after the release. To help make sure I don't lose this
please ping me after the release. Thanks!
Re: [PATCH v3 0/4] virtio: Refactor vhost input stub
Posted by Alex Bennée 10 months, 3 weeks ago
Leo Yan <leo.yan@linaro.org> writes:

> This series is to refactor vhost stub vhost-user-input.
>
> Since vhost input stub requires set_config() callback for communication
> event configurations between the backend and the guest, patch 01 is a
> preparison for support set_config() callback in vhost-user-base.

Queued to virtio/vhost-user-device, thanks.

-- 
Alex Bennée
Virtualisation Tech Lead @ Linaro