summaryrefslogtreecommitdiffstats
path: root/src/plugins/avf/device.c
diff options
context:
space:
mode:
authorFilip Tehlar <ftehlar@cisco.com>2019-06-20 23:53:43 +0000
committerDamjan Marion <dmarion@me.com>2019-06-26 16:25:21 +0000
commitbf5049a3b21ea0f40b9efa428df4d0098d39a963 (patch)
tree22457024cb09c32130c3f72de420b4fbbe5cb122 /src/plugins/avf/device.c
parent2605526c9b5caaa900ad21132aa118fe48ea2136 (diff)
avf: fix clear hw stats
AVF plugin is missing a handler for clearing stats. This patch will implement it. Ticket: VPP-1701 Type: fix Change-Id: If4b4354da442065896bb001deda23f64ddc18fb4 Signed-off-by: Filip Tehlar <ftehlar@cisco.com>
Diffstat (limited to 'src/plugins/avf/device.c')
-rw-r--r--src/plugins/avf/device.c10
1 files changed, 10 insertions, 0 deletions
diff --git a/src/plugins/avf/device.c b/src/plugins/avf/device.c
index 2a86bed4a7a..5fd1d6cd8db 100644
--- a/src/plugins/avf/device.c
+++ b/src/plugins/avf/device.c
@@ -1416,10 +1416,20 @@ static char *avf_tx_func_error_strings[] = {
#undef _
};
+static void
+avf_clear_hw_interface_counters (u32 instance)
+{
+ avf_main_t *am = &avf_main;
+ avf_device_t *ad = vec_elt_at_index (am->devices, instance);
+ clib_memcpy_fast (&ad->last_cleared_eth_stats,
+ &ad->eth_stats, sizeof (ad->eth_stats));
+}
+
/* *INDENT-OFF* */
VNET_DEVICE_CLASS (avf_device_class,) =
{
.name = "Adaptive Virtual Function (AVF) interface",
+ .clear_counters = avf_clear_hw_interface_counters,
.format_device = format_avf_device,
.format_device_name = format_avf_device_name,
.admin_up_down_function = avf_interface_admin_up_down,