DPDK
20.05.0
|
Go to the source code of this file.
Typedefs | |
typedef uint16_t(* | rte_latency_stats_flow_type_fn) (struct rte_mbuf *pkt, void *user_param) |
Functions | |
int | rte_latencystats_init (uint64_t samp_intvl, rte_latency_stats_flow_type_fn user_cb) |
int32_t | rte_latencystats_update (void) |
int | rte_latencystats_uninit (void) |
int | rte_latencystats_get_names (struct rte_metric_name *names, uint16_t size) |
int | rte_latencystats_get (struct rte_metric_value *values, uint16_t size) |
RTE latency stats
library to provide application and flow based latency stats.
Definition in file rte_latencystats.h.
typedef uint16_t(* rte_latency_stats_flow_type_fn) (struct rte_mbuf *pkt, void *user_param) |
Note: This function pointer is for future flow based latency stats implementation.
Function type used for identifying flow types of a Rx packet.
The callback function is called on Rx for each packet. This function is used for flow based latency calculations.
pkt | Packet that has to be identified with its flow types. |
user_param | The arbitrary user parameter passed in by the application when the callback was originally configured. |
Definition at line 40 of file rte_latencystats.h.
int rte_latencystats_init | ( | uint64_t | samp_intvl, |
rte_latency_stats_flow_type_fn | user_cb | ||
) |
Registers Rx/Tx callbacks for each active port, queue.
samp_intvl | Sampling time period in nano seconds, at which packet should be marked with time stamp. |
user_cb | Note: This param is for future flow based latency stats implementation. User callback to be called to get flow types of a packet. Used for flow based latency calculation. If the value is NULL, global stats will be calculated, else flow based latency stats will be calculated. For now just pass on the NULL value to this param. |
int32_t rte_latencystats_update | ( | void | ) |
Calculates the latency and jitter values internally, exposing the updated values via rte_latencystats_get or the rte_metrics API.
int rte_latencystats_uninit | ( | void | ) |
Removes registered Rx/Tx callbacks for each active port, queue.
int rte_latencystats_get_names | ( | struct rte_metric_name * | names, |
uint16_t | size | ||
) |
Retrieve names of latency statistics
names | Block of memory to insert names into. Must be at least size in capacity. If set to NULL, function returns required capacity. |
size | Capacity of latency stats names (number of names). |
int rte_latencystats_get | ( | struct rte_metric_value * | values, |
uint16_t | size | ||
) |
Retrieve latency statistics.
values | A pointer to a table of structure of type rte_metric_value to be filled with latency statistics ids and values. This parameter can be set to NULL if size is 0. |
size | The size of the stats table, which should be large enough to store all the latency stats. |