DPDK patches and discussions
 help / color / mirror / Atom feed
* [PATCH v3 0/4] vhost: add device op to offload the interrupt kick
@ 2023-05-17  9:08 Eelco Chaudron
  2023-05-17  9:08 ` [PATCH v3 1/4] vhost: change vhost_virtqueue access lock to a read/write one Eelco Chaudron
                   ` (4 more replies)
  0 siblings, 5 replies; 35+ messages in thread
From: Eelco Chaudron @ 2023-05-17  9:08 UTC (permalink / raw)
  To: maxime.coquelin, chenbo.xia, david.marchand; +Cc: dev

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(-)


^ permalink raw reply	[flat|nested] 35+ messages in thread

end of thread, other threads:[~2023-06-02  6:20 UTC | newest]

Thread overview: 35+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2023-05-17  9:08 [PATCH v3 0/4] vhost: add device op to offload the interrupt kick Eelco Chaudron
2023-05-17  9:08 ` [PATCH v3 1/4] vhost: change vhost_virtqueue access lock to a read/write one Eelco Chaudron
2023-05-17 17:33   ` Maxime Coquelin
2023-05-18 14:46     ` Eelco Chaudron
2023-05-31  6:37   ` Xia, Chenbo
2023-05-31  9:27     ` Maxime Coquelin
2023-05-31 11:13       ` Eelco Chaudron
2023-06-01  1:45         ` Xia, Chenbo
2023-05-17  9:08 ` [PATCH v3 2/4] vhost: make the guest_notifications statistic counter atomic Eelco Chaudron
2023-05-30 12:52   ` Maxime Coquelin
2023-05-31  7:03   ` Xia, Chenbo
2023-05-17  9:09 ` [PATCH v3 3/4] vhost: fix invalid call FD handling Eelco Chaudron
2023-05-30 12:54   ` Maxime Coquelin
2023-05-31  6:12     ` Xia, Chenbo
2023-05-31  9:30       ` Maxime Coquelin
2023-05-17  9:09 ` [PATCH v3 4/4] vhost: add device op to offload the interrupt kick Eelco Chaudron
2023-05-30 13:02   ` Maxime Coquelin
2023-05-30 13:16     ` Thomas Monjalon
2023-05-30 15:16       ` Maxime Coquelin
2023-05-31  6:19         ` Xia, Chenbo
2023-05-31  9:29           ` Maxime Coquelin
2023-05-31 11:21             ` Eelco Chaudron
2023-06-01  2:18             ` Xia, Chenbo
2023-06-01  8:15               ` Eelco Chaudron
2023-06-01  8:29                 ` Maxime Coquelin
2023-06-01  8:49                   ` Eelco Chaudron
2023-06-01  8:53                     ` Maxime Coquelin
2023-05-31 11:49     ` David Marchand
2023-05-31 12:01   ` David Marchand
2023-05-31 12:48     ` Maxime Coquelin
2023-05-31 13:13       ` Eelco Chaudron
2023-05-31 14:12   ` David Marchand
2023-05-31 14:18     ` Maxime Coquelin
2023-06-01 20:00 ` [PATCH v3 0/4] " Maxime Coquelin
2023-06-02  6:20   ` Eelco Chaudron

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).