MCPcopy Create free account
hub / github.com/F-Stack/f-stack / eth_basic_stats_get_names

Function eth_basic_stats_get_names

dpdk/lib/ethdev/rte_ethdev.c:3280–3320  ·  view source on GitHub ↗

retrieve basic stats names */

Source from the content-addressed store, hash-verified

3278
3279/* retrieve basic stats names */
3280static int
3281eth_basic_stats_get_names(struct rte_eth_dev *dev,
3282 struct rte_eth_xstat_name *xstats_names)
3283{
3284 int cnt_used_entries = 0;
3285 uint32_t idx, id_queue;
3286 uint16_t num_q;
3287
3288 for (idx = 0; idx < RTE_NB_STATS; idx++) {
3289 strlcpy(xstats_names[cnt_used_entries].name,
3290 eth_dev_stats_strings[idx].name,
3291 sizeof(xstats_names[0].name));
3292 cnt_used_entries++;
3293 }
3294
3295 if ((dev->data->dev_flags & RTE_ETH_DEV_AUTOFILL_QUEUE_XSTATS) == 0)
3296 return cnt_used_entries;
3297
3298 num_q = RTE_MIN(dev->data->nb_rx_queues, RTE_ETHDEV_QUEUE_STAT_CNTRS);
3299 for (id_queue = 0; id_queue < num_q; id_queue++) {
3300 for (idx = 0; idx < RTE_NB_RXQ_STATS; idx++) {
3301 snprintf(xstats_names[cnt_used_entries].name,
3302 sizeof(xstats_names[0].name),
3303 "rx_q%u_%s",
3304 id_queue, eth_dev_rxq_stats_strings[idx].name);
3305 cnt_used_entries++;
3306 }
3307
3308 }
3309 num_q = RTE_MIN(dev->data->nb_tx_queues, RTE_ETHDEV_QUEUE_STAT_CNTRS);
3310 for (id_queue = 0; id_queue < num_q; id_queue++) {
3311 for (idx = 0; idx < RTE_NB_TXQ_STATS; idx++) {
3312 snprintf(xstats_names[cnt_used_entries].name,
3313 sizeof(xstats_names[0].name),
3314 "tx_q%u_%s",
3315 id_queue, eth_dev_txq_stats_strings[idx].name);
3316 cnt_used_entries++;
3317 }
3318 }
3319 return cnt_used_entries;
3320}
3321
3322/* retrieve ethdev extended statistics names */
3323int

Callers 2

rte_eth_xstats_get_namesFunction · 0.85

Calls 2

snprintfFunction · 0.85
strlcpyFunction · 0.50

Tested by

no test coverage detected