On 5 Apr 2023, at 14:40, Eelco Chaudron wrote:

> This series adds an operation callback which gets called every time the
> library wants to call eventfd_write(). This eventfd_write() call could
> result in a system call, which could potentially block the PMD thread.
>
> The callback function can decide whether it's ok to handle the
> eventfd_write() now or have the newly introduced function,
> rte_vhost_notify_guest(), called at a later time.
>
> This can be used by 3rd party applications, like OVS, to avoid system
> calls being called as part of the PMD threads.


Wondering if anyone had a chance to look at this patchset.

Cheers,

Eelco

> v2: - Used vhost_virtqueue->index to find index for operation.
>     - Aligned function name to VDUSE RFC patchset.
>     - Added error and offload statistics counter.
>     - Mark new API as experimental.
>     - Change the virtual queue spin lock to read/write spin lock.
>     - Made shared counters atomic.
>     - Add versioned rte_vhost_driver_callback_register() for
>       ABI compliance.
>
> Eelco Chaudron (3):
>       vhost: Change vhost_virtqueue access lock to a read/write one.
>       vhost: make the guest_notifications statistic counter atomic.
>       vhost: add device op to offload the interrupt kick
>
>
>  lib/eal/include/generic/rte_rwlock.h | 17 +++++
>  lib/vhost/meson.build                |  2 +
>  lib/vhost/rte_vhost.h                | 23 ++++++-
>  lib/vhost/socket.c                   | 72 ++++++++++++++++++++--
>  lib/vhost/version.map                |  9 +++
>  lib/vhost/vhost.c                    | 92 +++++++++++++++++++++-------
>  lib/vhost/vhost.h                    | 70 ++++++++++++++-------
>  lib/vhost/vhost_user.c               | 14 ++---
>  lib/vhost/virtio_net.c               | 90 +++++++++++++--------------
>  9 files changed, 288 insertions(+), 101 deletions(-)

Reply via email to