[PATCH v3 0/4] vhost: add device op to offload the interrupt kick
Eelco Chaudron
echaudro at redhat.com
Wed May 17 11:08:30 CEST 2023
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.
v3:
- Changed ABI compatibility code to no longer use a boolean
to avoid having to disable specific GCC warnings.
- Moved the fd check fix to a separate patch (patch 3/4).
- Fixed some coding style issues.
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 (4):
vhost: change vhost_virtqueue access lock to a read/write one
vhost: make the guest_notifications statistic counter atomic
vhost: fix invalid call FD handling
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 | 63 +++++++++++++++++--
lib/vhost/version.map | 9 +++
lib/vhost/vhost.c | 92 +++++++++++++++++++++-------
lib/vhost/vhost.h | 69 ++++++++++++++-------
lib/vhost/vhost_user.c | 14 ++---
lib/vhost/virtio_net.c | 90 +++++++++++++--------------
9 files changed, 278 insertions(+), 101 deletions(-)
More information about the dev
mailing list