The vDPA device offloads all the datapath of the vhost device to the HW device.
In order to expose to the user traffic information this series introduces new APIs to get traffic statistics and to reset them per virtio queue. Since there is no any formal statistics suggested by the virtio specs, this API doesn't define them and let the drivers to decide what are the good statistics to report. The statistics are taken directly from the vDPA driver managing the HW device. Added also support for it in vdpa/mlx5 driver and in vdpa example application. V2: Move to per driver statistics according to the discussion between me, Maxime and Shahaf on V1. v3: Send again for release 20.08. Matan Azrad (4): vhost: inroduce operation to get vDPA queue stats common/mlx5: support DevX virtq stats operations vdpa/mlx5: support virtio queue statistics get examples/vdpa: add statistics show command doc/guides/rel_notes/release_20_08.rst | 13 +++ doc/guides/sample_app_ug/vdpa.rst | 3 +- doc/guides/vdpadevs/features/default.ini | 1 + doc/guides/vdpadevs/features/mlx5.ini | 1 + doc/guides/vdpadevs/features_overview.rst | 3 + drivers/common/mlx5/mlx5_devx_cmds.c | 73 +++++++++++++++ drivers/common/mlx5/mlx5_devx_cmds.h | 38 ++++++++ drivers/common/mlx5/mlx5_prm.h | 26 +++++- drivers/common/mlx5/rte_common_mlx5_version.map | 2 + drivers/vdpa/mlx5/mlx5_vdpa.c | 85 +++++++++++++++++ drivers/vdpa/mlx5/mlx5_vdpa.h | 45 +++++++++ drivers/vdpa/mlx5/mlx5_vdpa_virtq.c | 90 ++++++++++++++++++ examples/vdpa/main.c | 119 ++++++++++++++++++++++++ lib/librte_vhost/rte_vdpa.h | 115 ++++++++++++++++++++++- lib/librte_vhost/rte_vhost_version.map | 3 + lib/librte_vhost/vdpa.c | 47 ++++++++++ 16 files changed, 661 insertions(+), 3 deletions(-) -- 1.8.3.1