Hi,

On 10/15/21 17:04, David Marchand wrote:
When troubleshooting multiqueue setups, having per queue statistics helps
checking packets repartition in rx and tx queues.

Per queue statistics are exported by most DPDK drivers (with capability
RTE_ETH_DEV_AUTOFILL_QUEUE_XSTATS). But since OVS only filters statistics
it exposes, there is nothing to request in DPDK API.

Extend existing filter with a regular expression.
string_ends_with() helper is not used anymore, and removed as a
consequence.

Querying statistics with
$ ovs-vsctl get interface dpdk0 statistics | \
   sed -e 's#[{}]##g' -e 's#, #\n#g'

and comparing gives:
@@ -13,7 +13,12 @@
  rx_phy_crc_errors=0
  rx_phy_in_range_len_errors=0
  rx_phy_symbol_errors=0
+rx_q0_bytes=0
  rx_q0_errors=0
+rx_q0_packets=0
+rx_q1_bytes=0
+rx_q1_errors=0
+rx_q1_packets=0
  rx_wqe_errors=0
  tx_broadcast_packets=0
  tx_bytes=0
@@ -27,3 +32,13 @@
  tx_pp_rearm_queue_errors=0
  tx_pp_timestamp_future_errors=0
  tx_pp_timestamp_past_errors=0
+tx_q0_bytes=0
+tx_q0_packets=0
+tx_q1_bytes=0
+tx_q1_packets=0
+tx_q2_bytes=0
+tx_q2_packets=0
+tx_q3_bytes=0
+tx_q3_packets=0
+tx_q4_bytes=0
+tx_q4_packets=0

Signed-off-by: David Marchand <[email protected]>
---
Sending this as a RFC for feedback.

I think this is a very good idea.

vhost user ports are left untouched for now, but could be added in the
future.

I actually need it for Vhost-user ports for a feature I'm working on.
Do you want me to implement it for Vhost-user ports on top of your
patch, or you prefer to support both in a v1?

---
  lib/netdev-dpdk.c | 32 ++++++++++++++++++++++++++------
  lib/util.c        | 13 -------------
  lib/util.h        |  2 --
  3 files changed, 26 insertions(+), 21 deletions(-)


For this part:
Reviewed-by: Maxime Coquelin <[email protected]>

Thanks,
Maxime

_______________________________________________
dev mailing list
[email protected]
https://mail.openvswitch.org/mailman/listinfo/ovs-dev

Reply via email to